:root{--primary: #6366f1;--primary-hover: #4f46e5;--primary-light: #818cf8;--primary-bg: rgba(99, 102, 241, .1);--accent: #8b5cf6;--accent-hover: #7c3aed;--success: #10b981;--success-bg: rgba(16, 185, 129, .1);--warning: #f59e0b;--warning-bg: rgba(245, 158, 11, .1);--danger: #ef4444;--danger-bg: rgba(239, 68, 68, .1);--info: #3b82f6;--info-bg: rgba(59, 130, 246, .1);--bg-primary: #0f0f23;--bg-secondary: #1a1a3e;--bg-tertiary: #252552;--bg-card: #1e1e42;--bg-hover: #2a2a5a;--bg-input: #16163a;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--border: #2d2d6a;--border-light: #383878;--sidebar-width: 260px;--sidebar-collapsed: 70px;--header-height: 64px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 14px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px rgba(99, 102, 241, .2);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--transition: all .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .15s ease}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--bg-hover: #f1f5f9;--bg-input: #f8fafc;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border: #e2e8f0;--border-light: #cbd5e1;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 14px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(99, 102, 241, .1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden;min-height:100vh}#root{min-height:100vh;width:100%;display:flex;flex-direction:column}a{color:var(--primary);text-decoration:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}.app-layout{display:block;min-height:100vh;width:100%;position:relative;overflow-x:hidden;background:radial-gradient(circle at 15% 50%,rgba(99,102,241,.08) 0%,transparent 40%),radial-gradient(circle at 85% 30%,rgba(236,72,153,.06) 0%,transparent 40%),radial-gradient(circle at 50% 80%,rgba(16,185,129,.05) 0%,transparent 40%);background-size:200% 200%;animation:auroraBg 20s ease infinite alternate}@keyframes auroraBg{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.main-content{padding-left:var(--sidebar-width);margin-left:0;width:100vw;max-width:100%;transition:var(--transition);min-height:100vh;display:flex;flex-direction:column}.main-content.collapsed{padding-left:var(--sidebar-collapsed);margin-left:0}.page-content{flex:1;padding:24px;margin-top:var(--header-height)}.sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;transition:var(--transition);z-index:1000;overflow-y:auto;overflow-x:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-brand{padding:20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);min-height:80px}.sidebar-brand .brand-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:16px;flex-shrink:0}.sidebar-brand .brand-text{overflow:hidden;white-space:nowrap}.sidebar-brand .brand-text h1{font-size:14px;font-weight:700;color:var(--text-primary);line-height:1.3}.sidebar-brand .brand-text span{font-size:11px;color:var(--text-muted)}.sidebar.collapsed .brand-text,.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-text,.sidebar.collapsed .watermark-text{display:none}.sidebar.collapsed .watermark-logo{height:24px!important;margin-bottom:0!important}.sidebar-nav{flex:1;padding:12px 8px}.nav-section{margin-bottom:8px}.nav-section-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);padding:8px 12px}.sidebar.collapsed .nav-section-title{text-align:center;padding:8px 4px;font-size:8px}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:var(--transition);margin-bottom:2px;font-size:14px;font-weight:500;text-decoration:none}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--primary-bg);color:var(--primary);font-weight:600}.nav-item .nav-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}.sidebar.collapsed .nav-item{justify-content:center;padding:10px}.sidebar-footer{padding:12px;border-top:1px solid var(--border)}.header{position:fixed;top:0;right:0;left:var(--sidebar-width);height:var(--header-height);background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;z-index:999;transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header.collapsed{left:var(--sidebar-collapsed)}.header-left{display:flex;align-items:center;gap:16px}.header-right{display:flex;align-items:center;gap:12px}.menu-toggle{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:var(--bg-hover);color:var(--text-primary);cursor:pointer;transition:var(--transition);font-size:20px}.menu-toggle:hover{background:var(--primary-bg);color:var(--primary)}.page-title{font-size:18px;font-weight:700}.header-search{position:relative;width:280px}.header-search input{width:100%;padding:8px 12px 8px 36px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px;outline:none;transition:var(--transition)}.header-search input:focus{border-color:var(--primary);box-shadow:var(--shadow-glow)}.header-search .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:14px}.theme-toggle{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--border);background:var(--bg-hover);color:var(--text-primary);cursor:pointer;transition:var(--transition);font-size:18px}.theme-toggle:hover{border-color:var(--primary);color:var(--primary)}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--accent));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;cursor:pointer}.user-menu{position:relative}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:220px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1001;overflow:hidden;animation:dropdownIn .2s ease}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast)}.user-dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.user-dropdown-item.danger{color:var(--danger)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;transition:var(--transition)}.card:hover{box-shadow:var(--shadow-md)}.stat-card{background:#1e1e4299;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:20px 24px;display:flex;align-items:center;gap:16px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);transform-style:preserve-3d;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;border-radius:4px 0 0 4px;z-index:2}.stat-card.primary:before{background:var(--primary)}.stat-card.success:before{background:var(--success)}.stat-card.warning:before{background:var(--warning)}.stat-card.danger:before{background:var(--danger)}.stat-card.info:before{background:var(--info)}.stat-card:hover{transform:translateY(-8px) scale(1.02) rotateX(4deg) rotateY(-4deg);box-shadow:0 20px 40px #0006,0 0 20px #6366f133;z-index:10;border-color:#ffffff26}.stat-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.stat-icon.primary{background:var(--primary-bg);color:var(--primary)}.stat-icon.success{background:var(--success-bg);color:var(--success)}.stat-icon.warning{background:var(--warning-bg);color:var(--warning)}.stat-icon.danger{background:var(--danger-bg);color:var(--danger)}.stat-icon.info{background:var(--info-bg);color:var(--info)}.stat-info h3{font-size:24px;font-weight:800;line-height:1.2}.stat-info p{font-size:12px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.grid{display:grid;gap:20px;perspective:1200px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:var(--transition);border:none;outline:none;text-decoration:none;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;box-shadow:0 2px 10px #6366f14d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 20px #6366f166}.btn-secondary{background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--primary);color:var(--primary)}.btn-success{background:var(--success);color:#fff}.btn-danger{background:var(--danger);color:#fff}.btn-warning{background:var(--warning);color:#fff}.btn-sm{padding:6px 14px;font-size:12px}.btn-lg{padding:14px 28px;font-size:16px}.btn-icon{width:36px;height:36px;padding:0;border-radius:var(--radius-sm)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.form-group{margin-bottom:16px}.form-label{display:block;font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;transition:var(--transition)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6366f126}.form-input::placeholder{color:var(--text-muted)}.form-textarea{min-height:100px;resize:vertical}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-error{color:var(--danger);font-size:12px;margin-top:4px}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border)}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table thead{background:var(--bg-tertiary);position:sticky;top:0}.data-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text-secondary)}.data-table tbody tr{transition:var(--transition-fast)}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-primary{background:var(--primary-bg);color:var(--primary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeIn .2s ease}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:modalIn .3s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border)}.modal-header h2{font-size:18px;font-weight:700}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:var(--bg-hover);color:var(--text-secondary);cursor:pointer;font-size:18px;transition:var(--transition-fast)}.modal-close:hover{background:var(--danger-bg);color:var(--danger)}.modal-body{padding:24px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border)}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--bg-primary);position:relative;overflow:hidden}.auth-container:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(99,102,241,.15),transparent 70%);top:-100px;right:-100px;border-radius:50%}.auth-container:after{content:"";position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(139,92,246,.1),transparent 70%);bottom:-100px;left:-100px;border-radius:50%}.auth-card{width:100%;max-width:440px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:40px;position:relative;z-index:1;box-shadow:var(--shadow-lg)}.auth-logo{text-align:center;margin-bottom:32px}.auth-logo .logo-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:var(--radius-lg);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:24px;margin-bottom:16px}.auth-logo h2{font-size:22px;font-weight:800;margin-bottom:4px}.auth-logo p{font-size:14px;color:var(--text-muted)}.auth-footer{text-align:center;margin-top:24px;font-size:14px;color:var(--text-muted)}.auth-footer a{color:var(--primary);font-weight:600}.auth-footer a:hover{text-decoration:underline}.alert{padding:12px 16px;border-radius:var(--radius-md);font-size:13px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.alert-error{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(239,68,68,.2)}.alert-success{background:var(--success-bg);color:var(--success);border:1px solid rgba(16,185,129,.2)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.page-header-left h1{font-size:24px;font-weight:800}.page-header-left p{font-size:14px;color:var(--text-muted);margin-top:2px}.page-header-right{display:flex;align-items:center;gap:10px}.filter-bar{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.filter-bar .form-input,.filter-bar .form-select{max-width:250px}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-state .empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state h3{font-size:18px;font-weight:600;margin-bottom:8px;color:var(--text-secondary)}.empty-state p{font-size:14px;max-width:400px;margin:0 auto}.tab-bar{display:flex;gap:4px;background:var(--bg-tertiary);border-radius:var(--radius-md);padding:4px;margin-bottom:20px;overflow-x:auto}.tab-item{padding:8px 18px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast);white-space:nowrap;border:none;background:none;font-family:inherit}.tab-item:hover{color:var(--text-primary)}.tab-item.active{background:var(--primary);color:#fff;font-weight:600}.notice-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;margin-bottom:12px;transition:var(--transition)}.notice-card:hover{border-color:var(--primary)}.notice-card .notice-date{font-size:12px;color:var(--text-muted)}.notice-card h3{font-size:16px;font-weight:600;margin:6px 0}.notice-card p{font-size:14px;color:var(--text-secondary);line-height:1.6}.chart-container{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.chart-container h3{font-size:16px;font-weight:700;margin-bottom:16px}.receipt{background:#fff;color:#111;padding:40px;max-width:480px;margin:0 auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.receipt-header{text-align:center;border-bottom:2px dashed #ddd;padding-bottom:16px;margin-bottom:16px}.receipt-header h2{font-size:20px;font-weight:800;color:#333}.receipt-header p{font-size:12px;color:#666}.receipt-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px}.receipt-row .label{color:#666}.receipt-row .value{font-weight:600;color:#333}.receipt-total{border-top:2px solid #333;margin-top:12px;padding-top:12px;font-size:18px;font-weight:800}.receipt-footer{text-align:center;margin-top:20px;padding-top:16px;border-top:2px dashed #ddd;font-size:12px;color:#999}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:60px;background:var(--bg-secondary);border-top:1px solid var(--border);z-index:1000;padding:0 8px;align-items:stretch}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--text-muted);font-size:10px;font-weight:500;cursor:pointer;transition:var(--transition-fast);text-decoration:none;border:none;background:none;font-family:inherit}.bottom-nav-item.active{color:var(--primary)}.bottom-nav-item .bottom-nav-icon{font-size:20px}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px}.loading-screen p{color:var(--text-muted);font-size:14px}.toast-container{position:fixed;top:20px;right:20px;z-index:3000;display:flex;flex-direction:column;gap:8px}.toast{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 20px;min-width:300px;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:10px;animation:slideIn .3s ease;font-size:14px}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast.success{border-left:3px solid var(--success)}.toast.error{border-left:3px solid var(--danger)}.toast.warning{border-left:3px solid var(--warning)}@media (max-width: 1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.header-search{display:none}}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0);box-shadow:var(--shadow-lg)}.main-content,.main-content.collapsed{margin-left:0}.header,.header.collapsed{left:0}.page-content{padding:16px 16px 80px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.bottom-nav{display:flex}.form-row{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}.modal{margin:12px;max-height:85vh}.auth-card{padding:28px 20px}.stat-card{padding:16px}.stat-info h3{font-size:20px}.receipt{padding:24px}.filter-bar{flex-direction:column;align-items:stretch}.filter-bar .form-input,.filter-bar .form-select{max-width:100%}}@media (max-width: 480px){.page-header-left h1{font-size:20px}.stat-icon{width:40px;height:40px;font-size:18px}.btn{padding:8px 16px;font-size:13px}}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:999}.sidebar-overlay.active{display:block}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.mt-sm{margin-top:8px}.mt-md{margin-top:16px}.mt-lg{margin-top:24px}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:16px}.mb-lg{margin-bottom:24px}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.font-bold{font-weight:700}.w-full{width:100%}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes pageIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.page-content>div{animation:pageIn .4s cubic-bezier(.4,0,.2,1)}@keyframes cardIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.stat-card{animation:cardIn .5s cubic-bezier(.4,0,.2,1) backwards}.stat-card:nth-child(1){animation-delay:.05s}.stat-card:nth-child(3){animation-delay:.15s}.stat-card:nth-child(4){animation-delay:.2s}.chart-container,.card{animation:cardIn .5s cubic-bezier(.4,0,.2,1) backwards;animation-delay:.25s}.notice-card{animation:cardIn .4s cubic-bezier(.4,0,.2,1) backwards}.notice-card:nth-child(1){animation-delay:.05s}.notice-card:nth-child(2){animation-delay:.1s}.notice-card:nth-child(3){animation-delay:.15s}.notice-card:nth-child(4){animation-delay:.2s}.notice-card:nth-child(5){animation-delay:.25s}.data-table tbody tr{animation:cardIn .3s cubic-bezier(.4,0,.2,1) backwards}.data-table tbody tr:nth-child(1){animation-delay:.02s}.data-table tbody tr:nth-child(2){animation-delay:.04s}.data-table tbody tr:nth-child(3){animation-delay:.06s}.data-table tbody tr:nth-child(4){animation-delay:.08s}.data-table tbody tr:nth-child(5){animation-delay:.1s}@keyframes pulseGlow{0%,to{box-shadow:0 0 #6366f100}50%{box-shadow:0 0 20px 4px #6366f11f}}.stat-card:hover{animation:pulseGlow 2s infinite}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.shimmer{background:linear-gradient(90deg,var(--bg-card) 25%,var(--bg-hover) 37%,var(--bg-card) 63%);background-size:800px 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.btn:active:not(:disabled){transform:scale(.96)!important;transition:transform .1s ease}.nav-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%) scaleY(0);width:3px;height:60%;background:var(--primary);border-radius:0 4px 4px 0;transition:transform .2s ease}.nav-item{position:relative}.nav-item:hover:before,.nav-item.active:before{transform:translateY(-50%) scaleY(1)}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.badge-danger{animation:badgePulse 2s ease-in-out infinite}@keyframes countUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stat-info h3{animation:countUp .6s cubic-bezier(.4,0,.2,1) backwards;animation-delay:.3s}@keyframes brandFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.sidebar-brand .brand-icon{animation:brandFloat 3s ease-in-out infinite}.auth-card{animation:modalIn .5s cubic-bezier(.4,0,.2,1)}.btn-whatsapp{background:#25d366;color:#fff;box-shadow:0 2px 10px #25d3664d}.btn-whatsapp:hover{background:#1da851;transform:translateY(-1px);box-shadow:0 4px 20px #25d36666}.reminder-card{background:var(--bg-card);border:1px solid var(--border);border-left:4px solid var(--warning);border-radius:var(--radius-lg);padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;transition:var(--transition);animation:cardIn .4s cubic-bezier(.4,0,.2,1) backwards}.reminder-card:hover{border-left-color:var(--danger);box-shadow:var(--shadow-md);transform:translate(4px)}.reminder-info{flex:1}.reminder-info h4{font-size:14px;font-weight:700;margin-bottom:2px}.reminder-info p{font-size:12px;color:var(--text-muted)}.reminder-actions{display:flex;gap:6px;flex-shrink:0}.table-container::-webkit-scrollbar{height:4px}.table-container::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}@keyframes focusRing{0%{box-shadow:0 0 #6366f166}to{box-shadow:0 0 0 3px #6366f126}}.form-input:focus,.form-select:focus,.form-textarea:focus{animation:focusRing .2s ease forwards}.chart-container{position:relative;overflow:hidden;background:#1e1e4299;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:24px;transition:all .5s cubic-bezier(.175,.885,.32,1.275);transform-style:preserve-3d}.chart-container:hover{transform:translateY(-5px) scale(1.01) rotateX(2deg);box-shadow:0 25px 50px #00000080,0 0 30px #6366f126;z-index:5;border-color:#ffffff26}.chart-container:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary),var(--accent),var(--success));opacity:0;transition:opacity .3s ease}.chart-container:hover:after{opacity:1}.skeleton{position:relative;overflow:hidden;background:var(--bg-tertiary);border-radius:var(--radius-md)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.04),transparent);animation:shimmer 1.5s infinite}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes brandFloat{0%{transform:translateY(0);box-shadow:0 8px 30px #6366f166}50%{transform:translateY(-10px);box-shadow:0 15px 40px #6366f199}to{transform:translateY(0);box-shadow:0 8px 30px #6366f166}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-main);background-image:radial-gradient(circle at 15% 50%,rgba(99,102,241,.15) 0%,transparent 50%),radial-gradient(circle at 85% 30%,rgba(236,72,153,.1) 0%,transparent 50%),radial-gradient(circle at 50% 80%,rgba(16,185,129,.1) 0%,transparent 50%);background-size:200% 200%;animation:auroraBg 15s ease infinite alternate;padding:20px}.auth-card{width:100%;max-width:400px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px 32px;box-shadow:0 25px 50px -12px #00000080;animation:pageIn .6s cubic-bezier(.16,1,.3,1) forwards}.sidebar{display:flex!important;flex-direction:column!important}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:#6366f133;border-radius:4px}.sidebar-nav:hover::-webkit-scrollbar-thumb{background:#6366f180}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start;gap:12px;padding:0}.page-header h1{font-size:20px}.page-header-right{width:100%}.page-header-right .btn{width:100%;justify-content:center}.stat-card{padding:14px 16px}.stat-icon{width:40px;height:40px;font-size:18px}.stat-info h3{font-size:20px}.card{padding:16px;border-radius:var(--radius-md)}.chart-container{padding:16px}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px}.data-table{min-width:600px;font-size:12px}.data-table th,.data-table td{padding:8px 10px;white-space:nowrap}.form-row{flex-direction:column;gap:0}.form-input,.form-select,.form-textarea{font-size:16px}.modal{width:95vw!important;max-width:95vw!important;max-height:90vh;margin:5vh auto;border-radius:var(--radius-lg)}.modal-body{max-height:60vh;overflow-y:auto}.modal-header h2{font-size:16px}.modal-footer{flex-direction:column-reverse;gap:8px}.modal-footer .btn{width:100%;justify-content:center}.btn{padding:10px 16px;font-size:13px;min-height:40px}.btn-sm{padding:6px 10px;min-height:32px}.auth-page{padding:16px;align-items:flex-start;padding-top:10vh}.auth-card{width:100%;max-width:100%;padding:24px 20px;border-radius:var(--radius-lg)}.badge{font-size:10px;padding:3px 8px}.main-content{padding:16px 16px 80px!important}.empty-state{padding:24px 16px}.empty-icon{font-size:40px}.loading-screen{min-height:50vh}}@media (max-width: 768px){.app-layout{display:flex;flex-direction:column}.sidebar{transform:translate(-100%);width:var(--sidebar-width)}.sidebar.mobile-open{transform:translate(0);z-index:1050;box-shadow:4px 0 24px #0006}.header{left:0!important;width:100vw;padding:0 16px}.main-content{margin-left:0!important;padding-left:0!important;width:100vw;padding-bottom:70px}.main-content.collapsed{padding-left:0!important}.sidebar-brand .brand-text{font-size:12px}.header-search{width:40px;overflow:hidden;transition:width .3s ease}.header-search:focus-within{width:200px;position:absolute;left:60px;z-index:1000}.mobile-nav{position:fixed;bottom:0;left:0;width:100vw;height:calc(60px + env(safe-area-inset-bottom,0px));background:#1e1e42f2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-around;align-items:flex-start;padding-top:6px;z-index:1000;padding-left:8px;padding-right:8px;padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -4px 20px #0000004d}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);text-decoration:none;font-size:10px;gap:4px;flex:1;transition:var(--transition)}.mobile-nav-item span{font-size:20px;transition:transform .2s ease}.mobile-nav-item.active{color:var(--primary)}.mobile-nav-item.active span{transform:translateY(-4px) scale(1.1)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1040;opacity:0;pointer-events:none;transition:var(--transition)}.sidebar-overlay.active{opacity:1;pointer-events:auto}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card,.stat-card,.chart-container{transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease}.card:hover{transform:perspective(800px) rotateX(-2deg) rotateY(3deg) translateZ(10px);box-shadow:0 20px 60px #6366f126,0 8px 20px #0000001a,inset 0 1px #ffffff1a}.stat-card:hover{transform:perspective(600px) rotateY(-5deg) translateZ(15px) scale(1.02);box-shadow:0 25px 50px #6366f133,0 10px 30px #00000026}.chart-container:hover{transform:perspective(800px) rotateX(2deg) translateZ(8px);box-shadow:0 15px 40px #6366f11f}@keyframes float3D{0%,to{transform:perspective(600px) translateY(0) rotateX(0)}50%{transform:perspective(600px) translateY(-8px) rotateX(1deg)}}@keyframes slideInFrom3DLeft{0%{opacity:0;transform:perspective(600px) rotateY(15deg) translate(-60px) translateZ(-50px)}to{opacity:1;transform:perspective(600px) rotateY(0) translate(0) translateZ(0)}}@keyframes slideInFrom3DBottom{0%{opacity:0;transform:perspective(600px) rotateX(-10deg) translateY(40px) translateZ(-30px)}to{opacity:1;transform:perspective(600px) rotateX(0) translateY(0) translateZ(0)}}@keyframes pop3D{0%{transform:perspective(500px) scale(.6) rotateX(20deg);opacity:0}60%{transform:perspective(500px) scale(1.05) rotateX(-3deg);opacity:1}to{transform:perspective(500px) scale(1) rotateX(0);opacity:1}}@keyframes glowPulse{0%,to{box-shadow:0 0 5px #6366f133,0 4px 15px #0000001a}50%{box-shadow:0 0 20px #6366f166,0 8px 30px #6366f126}}@keyframes shimmer3D{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes flipInX{0%{transform:perspective(400px) rotateX(90deg);opacity:0}40%{transform:perspective(400px) rotateX(-10deg)}70%{transform:perspective(400px) rotateX(10deg)}to{transform:perspective(400px) rotateX(0);opacity:1}}@keyframes bounceIn3D{0%{opacity:0;transform:perspective(500px) translateZ(-200px) scale(.5)}50%{transform:perspective(500px) translateZ(30px) scale(1.05)}to{opacity:1;transform:perspective(500px) translateZ(0) scale(1)}}.stat-card{animation:slideInFrom3DBottom .6s ease-out both}.stat-card:nth-child(1){animation-delay:0s}.stat-card:nth-child(2){animation-delay:.1s}.stat-card:nth-child(3){animation-delay:.2s}.stat-card:nth-child(4){animation-delay:.3s}.card{animation:fadeSlideIn .4s ease-out both}.chart-container{animation:slideInFrom3DLeft .7s ease-out both}.page-header h1{text-shadow:0 2px 10px rgba(99,102,241,.15);animation:slideInFrom3DLeft .5s ease-out both}.btn-primary{transition:transform .2s ease,box-shadow .2s ease;position:relative}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #6366f166,0 4px 10px #6366f133}.btn-primary:active{transform:translateY(1px);box-shadow:0 4px 10px #6366f133}.modal{animation:bounceIn3D .4s ease-out}@keyframes brandFloat{0%,to{transform:perspective(300px) translateY(0) rotateY(0) rotateX(0)}25%{transform:perspective(300px) translateY(-6px) rotateY(5deg) rotateX(-3deg)}50%{transform:perspective(300px) translateY(-10px) rotateY(0) rotateX(2deg)}75%{transform:perspective(300px) translateY(-4px) rotateY(-5deg) rotateX(-1deg)}}.badge-success{animation:glowPulse 3s ease-in-out infinite}.badge-danger,.badge-warning{animation:glowPulse 2s ease-in-out infinite}.data-table tbody tr,.table tbody tr{transition:transform .3s ease,box-shadow .3s ease,background .3s ease;transform-style:preserve-3d}.data-table tbody tr:hover,.table tbody tr:hover{transform:perspective(800px) translateZ(5px) scale(1.005);box-shadow:0 5px 20px #6366f114;background:#6366f108}.nav-item{transition:transform .3s ease,background .3s ease;transform-style:preserve-3d}.nav-item:hover{transform:perspective(500px) translateZ(8px) translate(4px)}.nav-item.active{transform:perspective(500px) translateZ(12px) translate(6px)}.shimmer{background:linear-gradient(110deg,#6366f10d 25%,#6366f11f 37%,#6366f10d 63%);background-size:400% 100%;animation:shimmer3D 1.8s ease-in-out infinite}.reminder-card{transition:transform .3s ease,box-shadow .3s ease;transform-style:preserve-3d}.reminder-card:hover{transform:perspective(600px) rotateX(-1deg) rotateY(2deg) translateZ(8px);box-shadow:0 15px 40px #0000001a}.auth-card{animation:pop3D .6s ease-out}.receipt{transform-style:preserve-3d;transition:transform .3s ease}.receipt:hover{transform:perspective(600px) rotateY(-2deg) rotateX(1deg)}.toast{animation:slideInFrom3DLeft .4s ease-out}.app-header{box-shadow:0 4px 20px #00000026,0 1px 3px #6366f11a}.sidebar{box-shadow:4px 0 30px #0003,1px 0 10px #6366f10d}.form-input:focus,.form-select:focus,textarea:focus{box-shadow:0 0 0 3px #6366f126,0 8px 25px #6366f11a}.card{background:#1e1e4280;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.06);position:relative}[data-theme=light] .card{background:#fffc;border:1px solid rgba(0,0,0,.06)}.card:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,transparent,transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;transition:background .5s ease,opacity .5s ease;opacity:0;z-index:-1;pointer-events:none}.card:hover:before{opacity:1;background:linear-gradient(135deg,var(--primary),var(--accent),var(--success),var(--primary));background-size:300% 300%;animation:gradientShift 3s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.page-header-left h1{background:linear-gradient(135deg,var(--text-primary) 0%,var(--primary-light) 50%,var(--accent) 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientText 4s ease infinite}@keyframes gradientText{0%{background-position:0% center}50%{background-position:100% center}to{background-position:0% center}}.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at var(--ripple-x, 50%) var(--ripple-y, 50%),rgba(255,255,255,.3) 0%,transparent 60%);opacity:0;transition:opacity .5s ease;pointer-events:none}.btn:active:after{opacity:1;transition:opacity 0s}.btn-primary:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:linear-gradient(135deg,var(--primary),var(--accent));z-index:-1;opacity:0;filter:blur(12px);transition:opacity .3s ease}.btn-primary:hover:before{opacity:.6}.btn-success:hover{box-shadow:0 4px 20px #10b98166;transform:translateY(-1px)}.btn-danger:hover{box-shadow:0 4px 20px #ef444466;transform:translateY(-1px)}.btn-warning:hover{box-shadow:0 4px 20px #f59e0b66;transform:translateY(-1px)}@keyframes iconBounce{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.stat-card:hover .stat-icon{animation:iconBounce .5s ease}.stat-info h3{transition:color .3s ease}.stat-card:hover .stat-info h3{color:var(--primary-light)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal{animation:modalSlideUp .4s cubic-bezier(.16,1,.3,1)}.modal-overlay{animation:fadeIn .25s ease}.modal-header{position:relative}.modal-header:after{content:"";position:absolute;bottom:0;left:24px;right:24px;height:2px;background:linear-gradient(90deg,var(--primary),var(--accent),transparent);border-radius:2px}@keyframes toastBounce{0%{transform:translate(120%);opacity:0}50%{transform:translate(-8px);opacity:1}70%{transform:translate(4px)}to{transform:translate(0)}}.toast{animation:toastBounce .5s cubic-bezier(.16,1,.3,1)}.toast:before{content:"";position:absolute;bottom:0;left:0;height:3px;border-radius:0 0 var(--radius-md) var(--radius-md);animation:toastTimer 3s linear forwards}.toast.success:before{background:var(--success)}.toast.error:before{background:var(--danger)}.toast.warning:before{background:var(--warning)}@keyframes toastTimer{0%{width:100%}to{width:0%}}.loading-screen{background:var(--bg-primary);position:relative;overflow:hidden}.loading-screen:before{content:"";position:absolute;width:200px;height:200px;border:2px solid rgba(99,102,241,.1);border-radius:50%;animation:loadingRing 2s ease-in-out infinite}.loading-screen:after{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(139,92,246,.05);border-radius:50%;animation:loadingRing 3s ease-in-out infinite reverse}@keyframes loadingRing{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.2);opacity:1}to{transform:scale(1.5);opacity:0}}.spinner{border-width:3px;border-color:#6366f11a;border-top-color:var(--primary);border-right-color:var(--accent);box-shadow:0 0 20px #6366f126}.notice-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--primary)}.data-table tbody tr{position:relative}.data-table tbody tr:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--primary);transform:scaleY(0);transition:transform .2s ease;border-radius:0 3px 3px 0}.data-table tbody tr:hover:after{transform:scaleY(1)}.badge{position:relative;overflow:hidden}.badge:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);transform:rotate(25deg) translate(-100%);transition:transform .6s ease}.badge:hover:after{transform:rotate(25deg) translate(100%)}.form-input:not(:placeholder-shown){border-color:#6366f14d}.form-input:focus{transform:translateY(-1px);border-color:var(--primary)}.form-select:focus{transform:translateY(-1px)}.tab-item{position:relative;overflow:hidden}.tab-item:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary);transition:all .3s cubic-bezier(.4,0,.2,1);transform:translate(-50%)}.tab-item:hover:after{width:60%}.tab-item.active:after{width:80%;background:#fff}.auth-container:before{animation:loadingRing 8s ease-in-out infinite}.auth-container:after{animation:loadingRing 10s ease-in-out infinite reverse}.auth-card{transition:box-shadow .3s ease}.auth-card:hover{box-shadow:0 30px 60px #0000004d,0 0 40px #6366f11a}.nav-item{opacity:0;animation:fadeSlideIn .3s ease forwards}.nav-item:nth-child(1){animation-delay:.05s}.nav-item:nth-child(2){animation-delay:.1s}.nav-item:nth-child(3){animation-delay:.15s}.nav-item:nth-child(4){animation-delay:.2s}.nav-item:nth-child(5){animation-delay:.25s}.nav-item:nth-child(6){animation-delay:.3s}.nav-item:nth-child(7){animation-delay:.35s}.nav-item:nth-child(8){animation-delay:.4s}.nav-item:nth-child(9){animation-delay:.45s}.nav-item:nth-child(10){animation-delay:.5s}.nav-item.active{box-shadow:inset 0 0 20px #6366f114}.reminder-card:nth-child(1){animation-delay:.05s}.reminder-card:nth-child(2){animation-delay:.1s}.reminder-card:nth-child(3){animation-delay:.15s}.reminder-card:nth-child(4){animation-delay:.2s}.reminder-card:nth-child(5){animation-delay:.25s}.user-avatar{transition:transform .3s ease,box-shadow .3s ease}.user-avatar:hover{transform:scale(1.1);box-shadow:0 0 20px #6366f166}.user-dropdown-item{opacity:0;animation:fadeSlideIn .2s ease forwards}.user-dropdown-item:nth-child(1){animation-delay:.05s}.user-dropdown-item:nth-child(2){animation-delay:.1s}.user-dropdown-item:nth-child(3){animation-delay:.15s}.user-dropdown-item:nth-child(4){animation-delay:.2s}.page-content>div{animation:pageIn .5s cubic-bezier(.16,1,.3,1)}.filter-bar{animation:fadeSlideIn .3s ease-out .2s backwards}.empty-state .empty-icon{animation:brandFloat 4s ease-in-out infinite}::selection{background:#6366f14d;color:var(--text-primary)}*{scroll-behavior:smooth}*:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.btn:hover,.nav-item:hover,.tab-item:hover{filter:brightness(1.05)}img{transition:opacity .3s ease}img[loading=lazy]{opacity:0}img[loading=lazy].loaded{opacity:1}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}[data-theme=light] .card:hover{box-shadow:0 20px 60px #6366f114,0 8px 20px #0000000d}[data-theme=light] .stat-card{background:#fffc;border:1px solid rgba(0,0,0,.06)}[data-theme=light] .stat-card:hover{box-shadow:0 20px 40px #6366f11a,0 4px 12px #0000000d}[data-theme=light] .notice-card:hover{box-shadow:0 8px 30px #0000000f}@media (hover: none){.btn:active{opacity:.85;transform:scale(.97)!important}.nav-item:active{background:var(--primary-bg)}.card:hover,.stat-card:hover,.chart-container:hover{transform:none!important}.notice-card:hover{transform:none}}.notification-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f0f23cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease}.notification-popup{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:500px;box-shadow:var(--shadow-lg),0 0 30px #6366f133;overflow:hidden;position:relative;animation:slideUp .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.notification-popup-header{padding:24px;display:flex;flex-direction:column;align-items:center;text-align:center;background:linear-gradient(to bottom,var(--bg-hover),transparent)}.notification-icon-large{font-size:48px;margin-bottom:16px;background:var(--primary-bg);width:80px;height:80px;display:flex;align-items:center;justify-content:center;border-radius:50%;box-shadow:0 0 20px #6366f126}.notification-popup-content{padding:0 32px 32px;text-align:center}.notification-popup-title{font-size:24px;font-weight:800;color:var(--text-primary);margin-bottom:12px;letter-spacing:-.5px}.notification-popup-body{color:var(--text-secondary);font-size:16px;line-height:1.6;margin-bottom:24px}.notification-popup-details{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:16px;margin-bottom:24px;text-align:left}.detail-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.detail-row:last-child{margin-bottom:0}.detail-label{color:var(--text-muted);font-weight:500}.detail-value{color:var(--text-primary);font-weight:600}.notification-popup-actions{display:flex;gap:12px}.notification-popup-actions .btn{flex:1;padding:14px;font-weight:700}.startup-banner-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .4s ease forwards}.startup-banner-container{position:relative;max-width:500px;width:100%;background:var(--bg-card);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 25px 50px -12px #00000080,0 0 30px #6366f14d;animation:popIn .5s cubic-bezier(.175,.885,.32,1.275) forwards;cursor:pointer;border:1px solid var(--border)}@keyframes popIn{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.startup-banner-img{width:100%;height:auto;display:block;transition:transform .3s ease}.startup-banner-container:hover .startup-banner-img{transform:scale(1.02)}.startup-banner-close{position:absolute;top:15px;right:15px;width:36px;height:36px;background:#0009;color:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;transition:all .2s ease;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2)}.startup-banner-close:hover{background:var(--danger);transform:rotate(90deg)}.bottom-banner-strip{position:fixed;bottom:0;left:0;width:100%;z-index:999;cursor:pointer;background:var(--bg-card);border-top:1px solid var(--border);box-shadow:0 -4px 20px #0000004d;transition:transform .3s ease}.bottom-banner-strip:hover{transform:translateY(-2px)}.bottom-banner-img{width:100%;height:auto;max-height:70px;object-fit:cover;display:block}.page-content{padding-bottom:80px!important}@media (max-width: 768px){.bottom-banner-strip{bottom:calc(60px + env(safe-area-inset-bottom,0px))}.page-content{padding-bottom:calc(140px + env(safe-area-inset-bottom,0px))!important}}
