*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #2196F3;--secondary-color: #4CAF50;--accent-color: #FF9800;--danger-color: #F44336;--text-primary: #333333;--text-secondary: #666666;--text-light: #999999;--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-light: #f9f9f9;--border-light: #e0e0e0;--border-medium: #f0f0f0;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .16);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 24px;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}html,body{font-family:var(--font-family);font-size:var(--font-size-md);line-height:1.6;color:var(--text-primary);background-color:var(--bg-secondary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;min-height:100vh;margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.3;margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-xl);color:var(--text-primary)}h2{font-size:var(--font-size-lg);color:var(--text-primary)}h3{font-size:var(--font-size-md);color:var(--text-primary)}p{margin-bottom:var(--spacing-md)}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-normal)}a:hover{color:#1976d2}button{font-family:var(--font-family);font-size:var(--font-size-md);font-weight:700;padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);outline:none;box-shadow:var(--shadow-sm)}button:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:var(--shadow-sm)}input,textarea,select{font-family:var(--font-family);font-size:var(--font-size-md);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-light);border-radius:var(--radius-md);outline:none;transition:all var(--transition-normal);background-color:var(--bg-primary)}input:focus,textarea:focus,select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2196f31a}ul,ol{list-style:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-light);border-radius:3px}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-light)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-normal)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:transform var(--transition-normal)}.slide-enter-from{transform:translate(100%)}.slide-leave-to{transform:translate(-100%)}@media(max-width:480px){:root{font-size:14px}h1{font-size:20px}h2{font-size:18px}h3{font-size:16px}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.p-1{padding:var(--spacing-xs)}.p-2{padding:var(--spacing-sm)}.p-3{padding:var(--spacing-md)}.p-4{padding:var(--spacing-lg)}.card{background-color:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md)}.loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-xl)}.loading-spinner{width:40px;height:40px;border:4px solid var(--border-medium);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.empty-state-icon{font-size:48px;margin-bottom:var(--spacing-md);opacity:.5}.error-state{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-xl);text-align:center;color:var(--danger-color)}.error-state-icon{font-size:48px;margin-bottom:var(--spacing-md)}.success-state{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-xl);text-align:center;color:var(--secondary-color)}.success-state-icon{font-size:48px;margin-bottom:var(--spacing-md)}.app-container[data-v-47cdfac9]{display:flex;flex-direction:column;min-height:100vh;background-color:#f5f5f5}.main-content[data-v-47cdfac9]{flex:1;padding-bottom:90px;overflow-y:auto}.no-scroll[data-v-47cdfac9]{overflow:hidden!important}.tab-bar[data-v-47cdfac9]{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;height:70px;background:linear-gradient(135deg,#4caf50,#2196f3);border-radius:0;border:none;z-index:1000;box-shadow:0 -4px 20px #00000026;overflow:hidden}.tab-item[data-v-47cdfac9]{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;height:100%;color:#fffc;text-decoration:none;transition:all .3s ease;background:transparent;border:none;cursor:pointer;position:relative;overflow:hidden}.tab-item[data-v-47cdfac9]:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background-color:#fff3;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;z-index:0}.tab-item[data-v-47cdfac9]:hover:before{width:100px;height:100px}.tab-item.active[data-v-47cdfac9]{color:#fff;font-weight:700}.tab-item.active[data-v-47cdfac9]:before{width:120px;height:120px;background-color:#ffffff4d}.tab-icon[data-v-47cdfac9]{width:24px;height:24px;margin-bottom:5px;position:relative;z-index:1;transition:transform .3s ease;object-fit:contain;color:inherit}.tab-item.active .tab-icon[data-v-47cdfac9]{transform:scale(1.15)}.tab-text[data-v-47cdfac9]{font-size:13px;font-weight:500;position:relative;z-index:1;transition:all .3s ease}.tab-item.active .tab-text[data-v-47cdfac9]{font-weight:700;transform:translateY(-2px)}
