.alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--leading-normal);animation:.2s fadeInUp;display:flex}.alert--success{background:var(--color-success-50);color:var(--color-success-700);border:1px solid var(--color-success-200)}.alert--error{background:var(--color-error-50);color:var(--color-error-700);border:1px solid var(--color-error-200)}.alert--warning{background:var(--color-warning-50);color:var(--color-warning-700);border:1px solid var(--color-warning-200)}.alert--info{background:var(--color-info-50);color:var(--color-info-700);border:1px solid var(--color-info-200)}.alert__icon{flex-shrink:0;width:18px;height:18px;margin-top:2px}.alert__content{flex:1;min-width:0}.alert__title{font-weight:var(--font-medium);margin-bottom:2px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.badge{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.01em;border-radius:var(--radius-sm);white-space:nowrap;justify-content:center;align-items:center;gap:4px;padding:2px 8px;line-height:1.4;display:inline-flex}.badge--sm{padding:1px 6px;font-size:11px}.badge--md{font-size:var(--text-xs);padding:3px 10px}.badge--pill{border-radius:var(--radius-full)}.badge--default{background-color:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-primary)}.badge--primary{color:var(--color-primary-500);background-color:#1c223014;border:1px solid #1c223029}.badge--accent{color:#8c6e42;background-color:#a9895c1f;border:1px solid #a9895c3d}.badge--success{color:var(--color-success-500);background-color:#4e7a631f;border:1px solid #4e7a6333}.badge--warning{color:#8d6b28;background-color:#b08a3e1f;border:1px solid #b08a3e38}.badge--danger,.badge--error{color:var(--color-error-500);background-color:#a5473c1f;border:1px solid #a5473c33}.badge--info{color:var(--color-info-500);background-color:#5b70831f;border:1px solid #5b708333}
.tabs{gap:var(--space-6);flex-direction:column;width:100%;display:flex}.tabs__list{gap:var(--space-1);border-bottom:1px solid var(--border-primary);-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:0;display:flex;overflow-x:auto}.tabs__list::-webkit-scrollbar{display:none}.tabs__trigger{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;display:inline-flex}.tabs__trigger:hover{color:var(--text-primary)}.tabs__trigger--active{color:var(--text-primary);border-bottom-color:var(--color-accent-500)}.tabs__trigger-icon{color:var(--text-tertiary);transition:color var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.tabs__trigger:hover .tabs__trigger-icon{color:var(--text-primary)}.tabs__trigger--active .tabs__trigger-icon{color:var(--color-accent-500)}.tabs__content{gap:var(--space-6);flex-direction:column;animation:.15s ease-in-out fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.tabs{gap:var(--space-3,12px)}.tabs__trigger{padding:var(--space-2,8px) var(--space-3,12px);font-size:13px}.tabs__content{gap:var(--space-3,12px)}}
.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:12px;width:calc(100vw - 48px);max-width:400px;display:flex;position:fixed;top:24px;right:24px}.toast-card{pointer-events:auto;background-color:var(--bg-card,#fff);border:1px solid var(--border-primary,#e4e5e8);border-radius:var(--radius-lg,10px);flex-direction:column;gap:10px;padding:16px;transition:all .2s;animation:.22s cubic-bezier(.16,1,.3,1) toastSlideIn;display:flex;box-shadow:0 12px 32px #0f111629,0 2px 6px #0f111614}@keyframes toastSlideIn{0%{opacity:0;transform:translate(40px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}.toast-card--danger{border-left:4px solid var(--color-error-500,#a5473c)}.toast-card--success{border-left:4px solid var(--color-success-500,#4e7a63)}.toast-card--info{border-left:4px solid var(--color-accent-500,#a9895c)}.toast-card__header{justify-content:space-between;align-items:center;gap:8px;display:flex}.toast-card__title-wrap{align-items:center;gap:8px;display:flex}.toast-card__icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-card__icon--danger{color:var(--color-error-500,#a5473c)}.toast-card__icon--success{color:var(--color-success-500,#4e7a63)}.toast-card__icon--info{color:var(--color-accent-500,#a9895c)}.toast-card__title{color:var(--text-primary,#0f1116);margin:0;font-size:14px;font-weight:500}.toast-card__close{color:var(--text-tertiary,#6b7078);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .12s;display:flex}.toast-card__close:hover{background-color:var(--bg-hover,#f1f2f4);color:var(--text-primary,#0f1116)}.toast-card__message{color:var(--text-secondary,#3d424d);margin:0;font-size:13px;font-weight:400;line-height:1.45}.toast-card__actions{border-top:1px solid var(--border-secondary,#edeef0);justify-content:flex-end;align-items:center;gap:8px;margin-top:4px;padding-top:10px;display:flex}.toast-btn-cancel{border:1px solid var(--border-primary,#e4e5e8);height:32px;color:var(--text-secondary,#3d424d);cursor:pointer;background-color:#0000;border-radius:6px;padding:0 12px;font-size:12px;font-weight:500;transition:all .12s}.toast-btn-cancel:hover{background-color:var(--bg-hover,#f1f2f4);color:var(--text-primary,#0f1116)}.toast-btn-confirm-danger{background-color:var(--color-error-500,#a5473c);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;height:32px;padding:0 14px;font-size:12px;font-weight:500;transition:all .12s;display:inline-flex}.toast-btn-confirm-danger:hover:not(:disabled){background-color:#8e3b31}.toast-btn-confirm-danger:disabled{opacity:.6;cursor:not-allowed}
