html,body,#root{margin:0;padding:0;min-height:100vh;min-height:100dvh;background-color:#0a0a0a!important;color:#fff!important}:root{--color-primary: #C9A962;--color-primary-light: #D4BA7A;--color-primary-dark: #A8893E;--color-primary-50: #141210;--color-primary-100: #2A2418;--color-primary-bg: rgba(201, 169, 98, .12);--color-secondary: #2dd4bf;--color-secondary-light: #5eead4;--color-secondary-dark: #14b8a6;--color-secondary-bg: rgba(20, 184, 166, .15);--color-accent: #C9A962;--color-accent-light: #D4BA7A;--color-accent-dark: #A8893E;--color-accent-bg: rgba(201, 169, 98, .12);--color-success: #6ee7a0;--color-success-light: #a7f3c8;--color-success-bg: rgba(110, 231, 160, .12);--color-warning: #facc15;--color-warning-light: #fde047;--color-warning-bg: rgba(234, 179, 8, .15);--color-warning-text: #fde68a;--color-danger: #8B5A5A;--color-danger-light: rgba(139, 90, 90, .25);--color-danger-bg: rgba(139, 90, 90, .15);--color-error: #f87171;--color-error-light: #fca5a5;--color-error-bg: rgba(239, 68, 68, .15);--color-gray-50: #141414;--color-gray-100: #1A1A1A;--color-gray-200: #2A2A2A;--color-gray-300: #4A4A4A;--color-gray-400: #6A6A6A;--color-gray-500: #848484;--color-gray-600: #B0B0B0;--color-gray-700: #D0D0D0;--color-gray-800: #E8E8E8;--color-gray-900: #FFFFFF;--color-bg: #0A0A0A;--color-bg-elevated: #141414;--color-bg-subtle: #141414;--color-background: #0A0A0A;--color-surface: #141414;--color-text: #FFFFFF;--color-text-secondary: #848484;--color-text-muted: #4A4A4A;--color-text-inverse: #0A0A0A;--color-border: #2A2A2A;--color-border-focus: #C9A962;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .4), 0 1px 2px -1px rgb(0 0 0 / .4);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .4);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5), 0 8px 10px -6px rgb(0 0 0 / .5);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .5);--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .3);--shadow-glow: 0 0 20px rgb(201 169 98 / .25);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--transition-fast: .1s cubic-bezier(.4, 0, .2, 1);--transition-base: .15s cubic-bezier(.4, 0, .2, 1);--transition-slow: .2s cubic-bezier(.4, 0, .2, 1);--transition-slower: .3s cubic-bezier(.4, 0, .2, 1);--transition-spring: .3s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-tooltip: 600}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-text);line-height:var(--leading-normal);min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-full);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400);background-clip:content-box}:focus{outline:none}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--color-primary-100);color:var(--color-primary-dark)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-primary-dark)}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}input,textarea,select{font:inherit;color:inherit}img{max-width:100%;height:auto;display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--color-primary),0 0 10px transparent}50%{box-shadow:0 0 10px var(--color-primary),0 0 20px var(--color-primary-light)}}.animate-fade-in{animation:fadeIn var(--transition-slow) ease forwards}.animate-fade-in-up{animation:fadeInUp var(--transition-slower) ease forwards}.animate-fade-in-down{animation:fadeInDown var(--transition-slower) ease forwards}.animate-fade-in-scale{animation:fadeInScale var(--transition-slower) ease forwards}.animate-slide-in-right{animation:slideInRight var(--transition-slower) ease forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s ease infinite}.animate-shake{animation:shake .3s ease}.animate-slide-up{animation:slideUp .4s cubic-bezier(.4,0,.2,1) forwards}.animate-pop-in{animation:popIn .35s cubic-bezier(.34,1.56,.64,1) forwards}.animate-wiggle{animation:wiggle .5s ease}.animate-glow{animation:glow 2s ease-in-out infinite}.stagger-children>*{opacity:0;animation:fadeInUp var(--transition-slower) ease forwards}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:50ms}.stagger-children>*:nth-child(3){animation-delay:.1s}.stagger-children>*:nth-child(4){animation-delay:.15s}.stagger-children>*:nth-child(5){animation-delay:.2s}.stagger-children>*:nth-child(6){animation-delay:.25s}.stagger-children>*:nth-child(7){animation-delay:.3s}.stagger-children>*:nth-child(8){animation-delay:.35s}.hover-lift{transition:transform var(--transition-base),box-shadow var(--transition-base)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:var(--shadow-glow)}.glass{background:#141414cc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.06)}.gradient-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%)}.gradient-secondary{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-light) 100%)}.gradient-accent{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-light) 100%)}.gradient-mesh{background:radial-gradient(at 0% 0%,var(--color-primary-100) 0px,transparent 50%),radial-gradient(at 100% 0%,var(--color-secondary-light) 0px,transparent 50%),radial-gradient(at 100% 100%,var(--color-accent-light) 0px,transparent 50%),radial-gradient(at 0% 100%,var(--color-primary-light) 0px,transparent 50%)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.skeleton{background:linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.card-interactive{transition:all var(--transition-base);cursor:pointer}.card-interactive:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-100)}.card-interactive:active{transform:translateY(0);box-shadow:var(--shadow-md)}input[type=date],input[type=time],input[type=number]{-moz-appearance:none;appearance:none;-webkit-appearance:none}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid var(--color-gray-300);border-radius:var(--radius-sm);background:var(--color-bg-elevated);cursor:pointer;transition:all var(--transition-fast);position:relative}input[type=checkbox]:checked{background:var(--color-primary);border-color:var(--color-primary)}input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px var(--color-primary-100)}.page-transition{animation:fadeInUp var(--transition-slower) ease}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-4)}@media (min-width: 640px){.container{padding:0 var(--space-6)}}@media (min-width: 1024px){.container{padding:0 var(--space-8)}}@media print{*{background:#fff!important;color:#000!important}.no-print{display:none!important}}.card,.modal,.modal-body,.form-input,.form-textarea,.form-select,input,textarea,select{background-color:var(--color-surface)!important;color:var(--color-text)!important}.form-input:focus,.form-textarea:focus,.form-select:focus,input:focus,textarea:focus,select:focus{background-color:var(--color-bg-elevated)!important}.client-card,.place-card,.data-action,.edit-trip-item,.summary-card,.export-option{background-color:var(--color-bg-elevated)!important;border-color:var(--color-border)!important}.search-bar,.search-input,.filter-btn{background-color:var(--color-bg-elevated)!important;color:var(--color-text)!important}.search-input::placeholder{color:var(--color-text-muted)!important}.category-chip{background-color:var(--color-bg-elevated)!important;border-color:var(--color-border)!important;color:var(--color-text-secondary)!important}.category-chip.active{background-color:var(--color-primary)!important;color:#fff!important}.modal-overlay{background:#000000b3!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);font-weight:600;font-size:var(--font-size-sm);line-height:1;border-radius:var(--radius-lg);border:none;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;min-height:44px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary{background:#c9a962;color:#0a0a0a;box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:#d4ba7a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:var(--color-gray-100);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-200)}.btn-accent{background:#c9a962;color:#0a0a0a;box-shadow:var(--shadow-sm)}.btn-accent:hover:not(:disabled){background:#d4ba7a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline{background:transparent;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover:not(:disabled){background:var(--color-primary);color:#fff}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-gray-100);color:var(--color-text)}.btn-danger{background:#8b5a5a;color:#fff}.btn-danger:hover:not(:disabled){background:#9e6a6a;box-shadow:var(--shadow-md)}.btn-sm{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-size-base)}.w-full{width:100%}.card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);padding:var(--spacing-4);transition:all var(--transition-base)}.card.p-0{padding:0}@media (min-width: 640px){.card{border-radius:var(--radius-xl);padding:var(--spacing-5)}}.card-header{padding-bottom:var(--spacing-4);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-4)}.card-body{padding:var(--spacing-4) 0}.card-footer{padding-top:var(--spacing-4);border-top:1px solid var(--color-border);margin-top:var(--spacing-4)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-2)}.form-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--spacing-3) var(--spacing-4);font-size:16px;background:var(--color-gray-50);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base);color:var(--color-text);min-height:48px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-primary-bg)}.form-input.error,.form-textarea.error,.form-select.error{border-color:var(--color-danger)}.form-input.error:focus,.form-textarea.error:focus{box-shadow:0 0 0 3px var(--color-danger-bg)}.form-input.has-icon{padding-left:2.75rem}.input-wrapper{position:relative}.input-icon{position:absolute;left:var(--spacing-3);top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none;display:flex}.form-textarea{resize:vertical;min-height:100px}.form-error{font-size:var(--font-size-sm);color:var(--color-danger)}.form-helper{font-size:var(--font-size-sm);color:var(--color-text-muted)}.floating-input{position:relative}.floating-input .form-input{padding-top:1.5rem;padding-bottom:.5rem}.floating-label{position:absolute;left:var(--spacing-4);top:50%;transform:translateY(-50%);font-size:var(--font-size-base);color:var(--color-text-muted);pointer-events:none;transition:all var(--transition-base)}.floating-label.active,.floating-input .form-input:focus~.floating-label,.floating-input .form-input:not(:placeholder-shown)~.floating-label{top:.75rem;transform:translateY(0);font-size:var(--font-size-xs);color:var(--color-primary)}.badge{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);white-space:nowrap}.badge-default{background:var(--color-gray-100);color:var(--color-text-secondary)}.badge-primary{background:var(--color-primary-bg);color:var(--color-primary)}.badge-secondary{background:var(--color-secondary-bg);color:var(--color-secondary-dark)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge-sm{padding:2px var(--spacing-2);font-size:.65rem}.badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--spacing-4);z-index:var(--z-modal-backdrop);opacity:0;transition:opacity var(--transition-base)}.modal-overlay.active{opacity:1}.modal{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);width:100%;max-height:90vh;overflow-y:auto;transform:scale(.95) translateY(10px);transition:transform var(--transition-base);z-index:var(--z-modal)}.modal-overlay.active .modal{transform:scale(1) translateY(0)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-5);border-bottom:1px solid var(--color-border)}.modal-title{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text)}.modal-close{padding:var(--spacing-2);border-radius:var(--radius-lg);color:var(--color-text-muted);transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-gray-100);color:var(--color-text)}.modal-body{padding:var(--spacing-5);padding-bottom:calc(var(--spacing-5) + 80px + env(safe-area-inset-bottom,0))}@media (min-width: 768px){.modal-body{padding-bottom:var(--spacing-5)}}.alert{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);border-radius:var(--radius-lg);font-size:var(--font-size-sm)}.alert-icon{flex-shrink:0;display:flex}.alert-content{flex:1}.alert-dismiss{flex-shrink:0;padding:var(--spacing-1);border-radius:var(--radius-md);opacity:.7;transition:opacity var(--transition-fast)}.alert-dismiss:hover{opacity:1}.alert-info{background:var(--color-primary-bg);color:var(--color-primary-dark);border:1px solid var(--color-primary-100)}.alert-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-light)}.alert-warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-light)}.alert-danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-light)}.empty-state{text-align:center;padding:var(--spacing-10) var(--spacing-6)}.empty-state-icon{width:80px;height:80px;margin:0 auto var(--spacing-5);background:var(--color-gray-100);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted)}.empty-state-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-2)}.empty-state-description{color:var(--color-text-muted);margin-bottom:var(--spacing-5)}.stat-card{position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--color-primary)}.stat-card-primary:before{background:linear-gradient(180deg,var(--color-primary),var(--color-primary-light))}.stat-card-secondary:before{background:linear-gradient(180deg,var(--color-secondary),var(--color-secondary-light))}.stat-card-content{display:flex;justify-content:space-between;align-items:center}.stat-card-info{display:flex;flex-direction:column;gap:var(--spacing-1)}.stat-card-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.stat-card-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text)}.stat-card-trend{display:flex;align-items:center;gap:var(--spacing-1);font-size:var(--font-size-sm);font-weight:500}.stat-card-trend.up{color:var(--color-success)}.stat-card-trend.down{color:var(--color-danger)}.stat-card-icon{width:48px;height:48px;background:var(--color-primary-bg);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.stat-card-secondary .stat-card-icon{background:var(--color-secondary-bg);color:var(--color-secondary)}.spinner{animation:spin 1s linear infinite}.spinner-primary{color:var(--color-primary)}.tabs{border-bottom:1px solid var(--color-border)}.tab-list{display:flex;gap:var(--spacing-1);overflow-x:auto;scrollbar-width:none}.tab-list::-webkit-scrollbar{display:none}.tab-item{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:all var(--transition-base)}.tab-item:hover{color:var(--color-text)}.tab-item.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-icon{display:flex}.avatar{position:relative;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light))}.avatar-image{width:100%;height:100%;object-fit:cover}.avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;font-size:40%}.avatar-status{position:absolute;bottom:0;right:0;width:25%;height:25%;border-radius:50%;border:2px solid var(--color-surface)}.avatar-status-online{background:var(--color-success)}.avatar-status-offline{background:var(--color-gray-400)}.avatar-status-busy{background:var(--color-danger)}.progress{position:relative;height:8px;background:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;border-radius:var(--radius-full);transition:width var(--transition-slower)}.progress-primary{background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light))}.progress-sm{height:4px}.progress-lg{height:12px}.progress-label{position:absolute;right:var(--spacing-2);top:50%;transform:translateY(-50%);font-size:var(--font-size-xs);font-weight:600;color:#fff}.tooltip-wrapper{position:relative;display:inline-block}.tooltip{position:absolute;padding:var(--spacing-2) var(--spacing-3);background:var(--color-gray-900);color:#fff;font-size:var(--font-size-xs);border-radius:var(--radius-md);white-space:nowrap;z-index:var(--z-tooltip);pointer-events:none}.tooltip-top{bottom:100%;left:50%;transform:translate(-50%);margin-bottom:var(--spacing-2)}.tooltip-bottom{top:100%;left:50%;transform:translate(-50%);margin-top:var(--spacing-2)}.skeleton{background:linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-text{height:1em;border-radius:var(--radius-sm)}.skeleton-circle{border-radius:50%}.skeleton-rect{border-radius:var(--radius-md)}.divider{border:none;height:1px;background:var(--color-border);margin:var(--spacing-4) 0}.divider-with-text{display:flex;align-items:center;gap:var(--spacing-4);color:var(--color-text-muted);font-size:var(--font-size-sm)}.divider-with-text:before,.divider-with-text:after{content:"";flex:1;height:1px;background:var(--color-border)}.list-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-lg);transition:background var(--transition-fast)}.list-item.clickable{cursor:pointer}.list-item.clickable:hover{background:var(--color-gray-50)}.list-item.selected{background:var(--color-primary-bg)}.list-item.disabled{opacity:.5;cursor:not-allowed}.list-item-icon{flex-shrink:0;color:var(--color-text-muted)}.list-item-content{flex:1;min-width:0}.list-item-action{flex-shrink:0}.toggle-wrapper{display:inline-flex;align-items:center;gap:var(--spacing-3);cursor:pointer}.toggle-wrapper.disabled{opacity:.5;cursor:not-allowed}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-track{position:relative;width:44px;height:24px;background:var(--color-gray-300);border-radius:var(--radius-full);transition:background var(--transition-fast)}.toggle-input:checked+.toggle-track{background:var(--color-primary)}.toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.toggle-input:checked+.toggle-track .toggle-thumb{transform:translate(20px)}.toggle-label{font-size:var(--font-size-sm);color:var(--color-text)}
