@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-primary: #0a0a0a;--bg-secondary: #1a1a1a;--bg-tertiary: #2a2a2a;--text-primary: #ffffff;--text-secondary: #e5e5e5;--text-muted: #9ca3af;--accent-primary: #d4a259;--accent-secondary: #f5a623;--border-color: #3a3a3a;--cat-custos-fixos: #4a90e2;--cat-conforto: #00d4aa;--cat-metas: #f5d547;--cat-prazeres: #d946ef;--cat-liberdade: #60a5fa;--cat-conhecimento: #fb923c;--success: #22c55e;--warning: #eab308;--danger: #ef4444;--info: #3b82f6;--spacing-xs: 8px;--spacing-sm: 16px;--spacing-md: 24px;--spacing-lg: 32px;--spacing-xl: 40px;--spacing-2xl: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 6px rgba(0, 0, 0, .15);--shadow-lg: 0 10px 20px rgba(0, 0, 0, .2);--shadow-xl: 0 20px 30px rgba(0, 0, 0, .25);--transition-fast: .15s ease-in-out;--transition-base: .3s ease-in-out;--transition-slow: .5s ease-in-out}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;transition:background-color var(--transition-base),color var(--transition-base)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}button{font-family:inherit;cursor:pointer;border:none;outline:none;background:none;transition:all var(--transition-fast)}button:disabled{cursor:not-allowed;opacity:.5}.btn{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:500;font-size:.875rem;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);transition:all var(--transition-fast);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:var(--text-primary)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-secondary)}.btn-danger:hover{background:#dc2626}.action-icon-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm, 8px);display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-fast, .15s)}.action-icon-btn:hover{color:var(--text-primary);background:#ffffff14}.action-icon-btn.edit{color:var(--text-muted)}.action-icon-btn.edit:hover{color:var(--accent-primary, #d4a259)}.action-icon-btn.delete:hover{color:var(--danger, #ef4444);background:#ef44441a}input,select,textarea{font-family:inherit;font-size:.875rem;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);outline:none;transition:all var(--transition-fast)}input:focus,select:focus,textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #d4a2591a}input::placeholder{color:var(--text-muted)}.card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--border-color);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:11000;animation:fadeIn var(--transition-fast)}.modal-content{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp var(--transition-base)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-color)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.mt-md{margin-top:var(--spacing-md)}.mb-md{margin-bottom:var(--spacing-md)}.w-full{width:100%}.h-full{height:100%}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}.modal-content{width:95%;padding:var(--spacing-lg)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes glowPulse{0%,to{box-shadow:0 0 8px #d4a2590d}50%{box-shadow:0 0 20px #d4a2591f}}@keyframes borderGlow{0%,to{border-color:var(--border-color)}50%{border-color:#d4a2594d}}.budget-section,.goal-card,.overview-section,.month-selector,.goals-page .goals-section{animation:fadeSlideIn .6s cubic-bezier(.16,1,.3,1) both}.month-selector{animation-delay:.04s}.manage-categories-btn{animation:fadeSlideIn .6s cubic-bezier(.16,1,.3,1) both;animation-delay:.08s}.left-column>.summary-section{animation-delay:.12s}.left-column>.investments-section{animation-delay:.18s}.left-column>.financial-goals-section{animation-delay:.24s}.left-column>.debts-section{animation-delay:.3s}.right-column>.goals-section{animation-delay:.18s}.overview-section{animation-delay:.36s}.overview-card{animation:fadeSlideIn .5s cubic-bezier(.16,1,.3,1) both}.overview-card:nth-child(1){animation-delay:.05s}.overview-card:nth-child(2){animation-delay:.1s}.overview-card:nth-child(3){animation-delay:.15s}.overview-card:nth-child(4){animation-delay:.2s}.budget-section,.goal-card{transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .3s ease}.budget-section:hover,.goal-card:hover{transform:translateY(-3px);border-color:#d4a25940;box-shadow:0 12px 28px -10px #00000059,0 0 20px 2px #d4a2590f}.overview-card.income:hover{box-shadow:0 8px 24px -8px #0000004d,0 0 16px #d4a2591f;border-left-width:4px}.overview-card.expenses:hover{box-shadow:0 8px 24px -8px #0000004d,0 0 16px #ef44441f;border-left-width:4px}.overview-card.investments:hover{box-shadow:0 8px 24px -8px #0000004d,0 0 16px #22c55e1f;border-left-width:4px}.overview-card.remaining:hover{box-shadow:0 8px 24px -8px #0000004d,0 0 16px #3b82f61f;border-left-width:4px}.overview-card.remaining .card-val{text-shadow:0 0 12px rgba(212,162,89,.3)}.budget-page{background:linear-gradient(180deg,var(--bg-primary) 0%,rgba(212,162,89,.01) 50%,var(--bg-primary) 100%)}.goal-progress-fill,.progress-bar-fill{transition:width .8s cubic-bezier(.16,1,.3,1)}.status-badge-indicator{transition:all .3s ease}.status-badge-indicator:hover{transform:scale(1.05)}.table-row:hover{background:linear-gradient(90deg,rgba(212,162,89,.03) 0%,transparent 100%)}.btn-primary,.btn-secondary,.icon-btn,.editable-cell,.subcategory-row,.nav-link,.month-btn,.manage-categories-btn{transition:all var(--transition-fast) cubic-bezier(.16,1,.3,1)}.nav-link:hover{transform:translateY(-1px)}.btn-primary:hover{box-shadow:0 8px 20px -6px #d4a25966}.modal-overlay{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.goal-card.completed{animation:glowPulse 3s ease-in-out infinite}.overview-card.remaining{animation:fadeSlideIn .5s cubic-bezier(.16,1,.3,1) both,borderGlow 4s ease-in-out infinite;animation-delay:.2s,1s}.confirm-modal{max-width:400px}.confirm-modal .modal-body{padding:var(--spacing-md) 0;color:var(--text-secondary);font-size:.9375rem;line-height:1.5}.confirm-modal .modal-body p{margin:0}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#c92a2a;transform:translateY(-1px)}.header{display:flex;align-items:center;justify-content:flex-end;padding:0 24px;height:56px;background:#0a0a0cbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.04);position:sticky;top:0;z-index:100;box-shadow:0 1px 8px #00000040}.header-brand{display:flex;align-items:center;flex-shrink:0}.header-logo{height:86px;width:auto;margin-top:-20px;margin-bottom:-20px;transition:transform .2s ease}.header-logo:hover{transform:scale(1.04)}.header-nav{display:flex;align-items:center;gap:4px;padding:4px;background:#ffffff06;border:1px solid rgba(255,255,255,.04);border-radius:12px;position:absolute;left:50%;transform:translate(-50%)}.nav-pill{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:9px;font-size:.72rem;font-weight:600;color:#ffffff73;text-decoration:none;letter-spacing:.2px;white-space:nowrap;transition:all .2s cubic-bezier(.16,1,.3,1);position:relative}.nav-pill:hover{color:#ffffffbf;background:#ffffff0a}.nav-pill.active{color:var(--accent-primary, #d4a259);background:#d4a25914;box-shadow:0 0 0 1px #d4a2591f,0 1px 4px #00000026}.nav-pill.active svg{filter:drop-shadow(0 0 3px rgba(212,162,89,.3))}.header-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.header-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:8px;font-size:.68rem;font-weight:600;color:#ffffff80;background:#ffffff08;border:1px solid rgba(255,255,255,.05);cursor:pointer;transition:all .2s ease;letter-spacing:.3px;font-family:inherit}.header-btn:hover{color:#ffffffd9;background:#ffffff0f;border-color:#ffffff1a}.header-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary, #d4a259),#c08530);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;box-shadow:0 2px 8px #d4a25940;cursor:default;flex-shrink:0}.header-menu-wrapper{position:relative}.header-dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:200px;background:#121216f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:6px;box-shadow:0 16px 40px #00000080,0 0 1px #ffffff0d;animation:dropdownIn .15s ease-out;z-index:1000}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.header-dropdown button{width:100%;display:flex;align-items:center;gap:10px;padding:9px 14px;background:transparent;border:none;border-radius:9px;color:#ffffffb3;font-size:.78rem;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit}.header-dropdown button:hover{background:#ffffff0d;color:#fff}.header-dropdown button.danger{color:#ef4444}.header-dropdown button.danger:hover{background:#ef444414}.header-dropdown-divider{height:1px;background:#ffffff0a;margin:4px 8px}@media (max-width: 900px){.header{padding:0 12px;height:52px}.nav-pill span{display:none}.nav-pill{padding:8px 10px}.header-btn span{display:none}.header-btn{padding:6px 8px}}@media (max-width: 600px){.header-logo{height:60px;margin-top:-14px;margin-bottom:-14px}.header-nav{gap:2px;padding:3px}.nav-pill{padding:6px 8px}}.month-selector{background:var(--bg-secondary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:0;border:1px solid var(--border-color);width:100%}.month-navigation{display:flex;align-items:center;gap:var(--spacing-md);flex:1 1 auto}.month-btn{width:36px;height:36px;border-radius:var(--radius-md);background:var(--bg-tertiary);color:var(--accent-primary);font-size:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);transition:all var(--transition-fast);cursor:pointer}.month-btn:hover{background:var(--accent-primary);color:var(--text-primary);transform:scale(1.1)}.month-display{font-size:1.125rem;font-weight:600;color:var(--accent-primary);min-width:160px;text-align:center}.income-input-wrapper{display:flex;align-items:center;gap:var(--spacing-md);flex:1.5 1 auto;justify-content:flex-end}.income-input-wrapper label{font-size:.875rem;color:var(--text-secondary);font-weight:500;white-space:nowrap}.income-input-wrapper input{flex:1 1 auto;max-width:180px;width:100%;padding:var(--spacing-sm) var(--spacing-md)}.income-display{font-size:1.125rem;font-weight:700;color:var(--accent-primary);min-width:120px;text-align:right}@media (max-width: 768px){.month-selector{flex-direction:column;gap:var(--spacing-md)}.income-input-wrapper{flex-direction:column;align-items:flex-start;width:100%}.income-input-wrapper input{width:100%}}.editable-cell{cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);position:relative}.editable-cell:hover{background:#ffffff0d}.editable-cell:hover:after{content:"✎";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:.75rem;opacity:.5}.editable-input{width:100%;padding:var(--spacing-xs);background:var(--bg-tertiary);border:2px solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:inherit;font-family:inherit;font-weight:500;text-align:right}.editable-input:focus{outline:none;box-shadow:0 0 0 3px #d4a25933}.editable-input::placeholder{color:var(--text-muted);opacity:.5}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:11000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);width:90%;max-width:480px;border:1px solid var(--border-color);box-shadow:var(--shadow-lg);animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.modal-close{background:transparent;border:none;font-size:1.75rem;color:var(--text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.modal-close:hover{background:#ffffff1a;color:var(--text-primary)}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.form-group input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px 12px;font-size:.9375rem;color:var(--text-primary);transition:all var(--transition-fast)}.form-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #4a90e21a}.form-group input::placeholder{color:var(--text-muted)}.modal-actions .btn{padding:10px 20px;font-size:.9375rem}.debt-modal{max-width:460px}.debt-modal .form-group{margin-bottom:12px}.debt-modal label{display:block;font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.debt-modal input[type=text],.debt-modal input[type=number],.debt-modal input[type=date]{width:100%;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;transition:all var(--transition-fast)}.debt-modal input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #d4a2591a}.debt-modal input::placeholder{color:var(--text-muted)}.checkbox-group{display:flex;align-items:center}.checkbox-group label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;margin:0;font-weight:500}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-primary)}.checkbox-group span{-webkit-user-select:none;user-select:none}.close-btn{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast)}.close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-header{display:flex;justify-content:space-between;align-items:center}.subcategory-modal{max-width:450px}.category-name-input{background:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed}.modal-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.form-group input{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);font-size:1rem;transition:border-color var(--transition-fast)}.form-group input:focus{outline:none;border-color:var(--accent-primary)}.form-group input:disabled{opacity:.6}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-sm)}.btn-primary,.btn-secondary{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:none;font-size:.875rem}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover{background:var(--accent-secondary);transform:translateY(-1px)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-secondary:hover{background:var(--bg-primary)}.subcategory-row{display:grid;grid-template-columns:1fr auto auto;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);align-items:center;background:var(--bg-secondary);border-radius:var(--radius-sm);transition:background var(--transition-fast)}.subcategory-row:hover{background:var(--bg-tertiary)}.subcategory-name{font-size:.875rem;color:var(--text-secondary);padding-left:var(--spacing-md);position:relative}.subcategory-name:before{content:"└";position:absolute;left:0;color:var(--text-muted);opacity:.5}.subcategory-value{min-width:120px;text-align:right}.subcategory-value-display{font-size:.875rem;color:var(--text-primary);cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:background var(--transition-fast);display:inline-block}.subcategory-value-display:hover{background:var(--bg-tertiary)}.subcategory-input{width:100%;padding:4px 8px;border:1px solid var(--accent-primary);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;text-align:right}.subcategory-input:focus{outline:none;border-color:var(--accent-secondary)}.subcategory-delete-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:4px 8px;opacity:.6;transition:all var(--transition-fast);border-radius:var(--radius-sm)}.subcategory-delete-btn:hover{opacity:1;background:var(--danger);transform:scale(1.1)}.category-manager-modal{width:100%;max-width:600px;max-height:85vh;display:flex;flex-direction:column}.budget-status-bar{background:var(--bg-tertiary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.status-label{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:var(--spacing-xs);color:var(--text-secondary)}.text-danger{color:var(--danger);font-weight:700}.progress-bar-bg{height:8px;background:var(--bg-primary);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--success);transition:width .3s ease}.progress-bar-fill.danger{background:var(--danger)}.category-form{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.form-row{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.form-row input[type=text]{flex:2;padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary)}.form-row input[type=color]{width:40px;height:40px;padding:0;border:none;border-radius:var(--radius-sm);cursor:pointer}.percentage-input{position:relative;width:120px}.percentage-input input{width:100%;padding:var(--spacing-sm);padding-right:25px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-size:1rem}.percentage-input span{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.categories-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.toggle-archived{font-size:.875rem;color:var(--text-secondary);display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.categories-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-xs)}.category-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:background .2s}.category-item:hover{background:var(--bg-tertiary)}.category-item.archived{opacity:.6;border-style:dashed}.category-info{display:flex;align-items:center;gap:var(--spacing-md)}.color-dot{width:12px;height:12px;border-radius:50%}.category-name{font-weight:500;color:var(--text-primary)}.category-percentage{font-size:.875rem;color:var(--text-muted);background:var(--bg-tertiary);padding:2px 6px;border-radius:4px}.badge-archived{font-size:.7rem;background:var(--warning);color:#000;padding:2px 6px;border-radius:4px;font-weight:700}.category-actions{display:flex;gap:var(--spacing-xs)}.category-actions button{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;transition:background .2s;color:var(--text-primary);display:flex;align-items:center;justify-content:center}.category-actions button:hover{background:var(--bg-primary)}.btn-delete:hover{background:#ef44441a!important}.error-msg{color:var(--danger);font-size:.875rem;margin-top:var(--spacing-xs)}.goal-modal{width:90%;max-width:400px}.goal-modal .form-group{margin-bottom:1rem}.goal-modal label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.9rem}.goal-modal input{width:100%;padding:.75rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:1rem}.goal-modal input:focus{border-color:var(--primary-color);outline:none}.goal-modal .modal-footer{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.financial-goals-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:8px}.goals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.goal-card{background:var(--bg-secondary);border-radius:var(--radius-md);padding:1.25rem;border:1px solid var(--border-color);transition:transform .2s}.goal-card:hover{transform:translateY(-2px)}.goal-card.completed{border-color:var(--success-color);background:linear-gradient(to bottom right,var(--bg-secondary),rgba(16,185,129,.05))}.goal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.goal-header h3{margin:0;font-size:1.1rem;color:var(--text-primary)}.goal-actions{display:flex;gap:.5rem}.goal-progress-container{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.goal-progress-container .goal-progress-bar{flex:1;height:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.05);border-radius:4px;overflow:hidden;box-sizing:border-box}.goal-progress-container .goal-progress-fill{height:100%;background:var(--accent-primary, #d4a259);border-radius:4px;transition:width .5s ease-out}.goal-card.completed .goal-progress-container .goal-progress-fill{background:var(--success-color, #22c55e)}.goal-percentage{font-size:.9rem;font-weight:600;color:var(--text-secondary);min-width:35px;text-align:right}.goal-details{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:.85rem;margin-top:8px;width:100%}.goal-values{display:flex;align-items:baseline;gap:.3rem}.goal-values .current{color:var(--text-primary);font-weight:600}.goal-values .separator,.goal-values .target{color:var(--text-tertiary)}.goal-remaining{color:var(--text-secondary);font-size:.85rem}.goal-status-badge{background:#10b98126;color:var(--success-color);padding:.2rem .6rem;border-radius:12px;font-size:.8rem;font-weight:500}.empty-goals{grid-column:1 / -1;text-align:center;padding:3rem;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px dashed var(--border-color)}.empty-goals p{color:var(--text-secondary);margin-bottom:1rem}.empty-goals button{background:var(--primary-color);color:#fff;border:none;padding:.6rem 1.2rem;border-radius:var(--radius-sm);cursor:pointer;font-weight:500}.budget-page{min-height:100vh;background:var(--bg-primary)}.page-content{max-width:1440px;margin:0 auto;padding:var(--spacing-xs) var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.budget-top-bar{display:grid;grid-template-columns:1fr 380px;gap:var(--spacing-md);align-items:center;margin-bottom:0}.manage-categories-btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;padding:.5rem 1rem;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);cursor:pointer}.manage-categories-btn:hover{background:var(--bg-tertiary);border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}@media (max-width: 1024px){.budget-top-bar{grid-template-columns:1fr;gap:var(--spacing-sm)}}.budget-layout{display:grid;grid-template-columns:1fr 380px;gap:var(--spacing-md);align-items:stretch;min-height:0}.left-column,.right-column{display:flex;flex-direction:column;gap:var(--spacing-md);min-height:0}@media (max-width: 1024px){.budget-layout{grid-template-columns:1fr;gap:var(--spacing-md)}}.budget-section{background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:18px;padding:var(--spacing-sm);border:1px solid rgba(255,255,255,.04);box-shadow:inset 0 1px #ffffff05;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;height:auto;overflow:visible;min-height:0;position:relative}.goals-section{padding:var(--spacing-md);padding-bottom:var(--spacing-lg);overflow:visible!important}.budget-section:hover{transform:translateY(-2px);border-color:#ffffff1f;background:#ffffff09;box-shadow:0 8px 24px #0006,inset 0 1px #ffffff0d}.budget-section h2{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 var(--spacing-sm) 0;flex-shrink:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm);flex-shrink:0;gap:12px;flex-wrap:wrap}.section-header h2{margin:0}.summary-section{overflow:visible}.summary-table{font-size:.875rem;overflow:visible}.btn-add{background:var(--accent-primary);color:var(--text-primary);padding:6px var(--spacing-sm);border-radius:var(--radius-sm);font-weight:600;font-size:.8rem;transition:all var(--transition-fast);white-space:nowrap}.btn-add:hover{background:var(--accent-secondary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.expenses-list{display:flex;flex-direction:column;gap:var(--spacing-xs);max-height:400px;overflow-y:auto;flex:1}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.empty-state p{margin-bottom:var(--spacing-md);font-size:.875rem}.category-legend{border-top:1px solid var(--border-color);padding-top:var(--spacing-md);margin-top:var(--spacing-md)}.category-legend h4{font-size:.75rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);margin-bottom:4px;cursor:pointer;transition:all var(--transition-fast)}.legend-item:hover{background:var(--bg-tertiary)}.legend-item.active{background:var(--bg-tertiary);border:1px solid var(--accent-primary)}.legend-color{width:12px;height:12px;border-radius:var(--radius-full);flex-shrink:0}.legend-name{flex:1;font-size:.875rem;color:var(--text-primary)}.legend-value{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.total-expenses{display:flex;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-sm);font-weight:700;font-size:1.125rem;margin-top:var(--spacing-md);box-shadow:var(--shadow-sm)}.total-value{color:var(--accent-primary)}.summary-table{font-size:.875rem;overflow:visible;display:flex;flex-direction:column;gap:8px}.table-header,.table-row,.table-footer-row{display:grid;grid-template-columns:2fr 1.2fr 1fr;align-items:center;padding:14px 16px;gap:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.02)}.table-header{font-weight:600;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.8px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:10px}.table-header>div:first-child{text-align:left}.table-header>div:not(:first-child){text-align:right}.table-row{background:transparent;transition:background-color var(--transition-fast)}.table-row:hover{background:#ffffff04}.category-meta{display:flex;flex-direction:column;gap:6px}.category-title-area{display:flex;align-items:center;gap:8px}.category-name-text{font-weight:500;color:var(--text-primary);font-size:.875rem}.category-name-text.clickable{cursor:pointer}.chevron-inline{color:var(--text-muted);cursor:pointer;font-size:.7rem;-webkit-user-select:none;user-select:none}.cat-color-dot-large{width:6px;height:6px;border-radius:var(--radius-full);flex-shrink:0}.category-usage-wrapper{display:flex;align-items:center;gap:8px}.category-usage-bar-track{flex:1;max-width:120px;height:3px;background:#ffffff0d;border-radius:var(--radius-full);overflow:hidden}.category-usage-bar-fill{height:100%;border-radius:var(--radius-full)}.category-usage-text{font-size:.72rem;color:var(--text-muted)}.category-usage-text.text-danger{color:var(--danger);font-weight:600}.category-actual-planned{display:flex;justify-content:flex-end;align-items:center;gap:6px;font-size:.875rem;color:var(--text-primary)}.category-actual-planned .value-divider{color:#ffffff26}.category-actual-planned .planned-val{color:var(--text-muted)}.cell-remaining{text-align:right;font-weight:500;color:var(--success)}.cell-remaining.negative{color:var(--danger)}.table-footer{margin-top:var(--spacing-sm);border-top:1px solid rgba(255,255,255,.08);padding-top:var(--spacing-xs)}.table-footer-row{border-bottom:none;font-weight:600;font-size:.9rem;color:var(--text-primary)}.footer-cell-label{color:var(--text-muted)}.total-actual-planned{display:flex;justify-content:flex-end;gap:6px}.total-actual-planned .value-divider{color:#ffffff26}.expanded-row{grid-column:1 / -1;animation:expandRow .2s ease-out}@keyframes expandRow{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.subcat-box{background:#ffffff03;border:1px solid rgba(255,255,255,.03);border-radius:var(--radius-md);padding:12px 16px;margin:4px 0 12px 24px}.subcat-list{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.subcat-footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid rgba(255,255,255,.02)}.subcat-subtotal{font-size:.8rem;color:var(--text-muted)}.subcat-subtotal .subtotal-value{color:var(--text-primary);font-weight:600;margin-left:6px}.investments-cards-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:var(--spacing-md)}.investment-asset-card{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.03);border-radius:var(--radius-md);padding:16px;display:flex;flex-direction:column;gap:8px;transition:border-color var(--transition-fast)}.investment-asset-card:hover{border-color:#ffffff14}.asset-card-header{display:flex;justify-content:space-between;align-items:center}.asset-name{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.asset-actions{display:flex;gap:6px}.asset-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.asset-footer{display:flex;align-items:center}.asset-percentage-badge{font-size:.72rem;color:var(--text-muted)}.investments-footer{display:flex;justify-content:space-between;align-items:baseline;padding-top:var(--spacing-sm);border-top:1px solid rgba(255,255,255,.05)}.investments-footer .footer-label{font-size:.72rem;text-transform:uppercase;color:var(--text-muted);font-weight:600}.investments-footer .footer-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.debts-cards-list{display:flex;flex-direction:column;gap:10px;margin-bottom:var(--spacing-md)}.debt-due-card{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.03);border-radius:var(--radius-md);padding:16px;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;transition:all var(--transition-fast);border-left:4px solid transparent}.debt-due-card.pending{border-left-color:var(--warning)}.debt-due-card.overdue{border-left-color:var(--danger)}.debt-due-card.paid{border-left-color:#ffffff26;opacity:.5}.debt-card-left{display:flex;flex-direction:column;gap:4px}.debt-name-title{font-size:.9rem;font-weight:600;color:var(--text-primary)}.debt-due-date{font-size:.75rem;color:var(--text-muted)}.debt-card-right{display:flex;align-items:center;gap:16px}.debt-amount-value{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.debt-check-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;width:20px;height:20px}.debt-check-input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.debt-check-mark{position:absolute;top:0;left:0;height:20px;width:20px;background-color:transparent;border:1.5px solid rgba(255,255,255,.2);border-radius:var(--radius-full);transition:all .2s}.debt-check-wrapper:hover .debt-check-mark{border-color:var(--text-secondary)}.debt-check-input:checked~.debt-check-mark{background-color:var(--success);border-color:var(--success)}.debt-check-input:checked~.debt-check-mark:after{content:"";position:absolute;display:block;left:6px;top:3px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.debt-actions{display:flex;gap:6px}.debts-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-sm);border-top:1px solid rgba(255,255,255,.05)}.footer-stats{display:flex;gap:16px}.footer-stat{font-size:.75rem;color:var(--text-muted)}.footer-stat span{font-weight:600;margin-left:4px}.footer-stat span.paid{color:var(--success)}.footer-stat span.pending{color:var(--warning)}.footer-total{font-size:.75rem;color:var(--text-muted);display:flex;align-items:baseline;gap:6px}.footer-total .footer-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.financial-health-advisor{display:flex;align-items:flex-start;gap:16px;background:#ffffff03;border:1px solid rgba(255,255,255,.03);border-radius:var(--radius-lg);padding:16px 20px;margin-bottom:var(--spacing-sm)}.advisor-icon-wrapper{background:#ffffff05;border-radius:var(--radius-sm);padding:8px;display:flex;align-items:center;justify-content:center}.advisor-icon-wrapper .icon-success{color:var(--success)}.advisor-icon-wrapper .icon-warning{color:var(--warning)}.advisor-content{display:flex;flex-direction:column;gap:4px}.advisor-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);font-weight:600}.advisor-text{font-size:.875rem;color:var(--text-secondary);line-height:1.45;margin:0}.overview-card{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.03);border-radius:var(--radius-lg);padding:20px;display:flex;flex-direction:column;gap:8px;box-shadow:none;transition:border-color var(--transition-fast)}.overview-card:hover{border-color:#ffffff14}.overview-card .card-label{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;font-weight:600}.overview-card .card-val{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.overview-card.remaining .card-val{color:var(--accent-primary)}@media (max-width: 1024px){.table-header,.table-row,.table-footer-row{grid-template-columns:1fr 1fr 1fr;font-size:.8rem;padding:12px 10px}}@media (max-width: 768px){.overview-left-cards{grid-template-columns:1fr}.table-header,.table-row,.table-footer-row{grid-template-columns:1fr 1fr;font-size:.78rem}.table-header>div:nth-child(3),.table-row>div:nth-child(3),.table-footer-row>div:nth-child(3){display:none}.debt-due-card{flex-direction:column;align-items:stretch;gap:12px}.debt-card-right{justify-content:space-between}}.donut-chart-container{display:flex;justify-content:center;align-items:center;margin:var(--spacing-lg) 0}.empty-chart{display:flex;justify-content:center;align-items:center;height:300px;padding:var(--spacing-xl);text-align:center}.empty-chart p{color:var(--text-muted);font-size:.875rem}.goals-page{min-height:100vh;background:var(--bg-primary)}.goals-page .page-content{padding:8px 24px;gap:8px;max-width:1440px;margin:0 auto}.goals-header{margin-bottom:4px;animation:fadeInDown .6s cubic-bezier(.16,1,.3,1) both}.goals-header .header-meta{display:flex;flex-direction:column;gap:4px}.goals-header .meta-badge{align-self:flex-start;font-size:.65rem;font-weight:700;letter-spacing:1.5px;color:var(--accent-primary);background:#d4a2591a;padding:3px 8px;border-radius:var(--radius-full);border:1px solid rgba(212,162,89,.15)}.goals-header h1{font-size:1.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.5px;margin:1px 0 0}.goals-header .subtitle{font-size:.8rem;color:var(--text-muted);margin:0;line-height:1.3}.goals-layout{display:grid;grid-template-columns:310px 1fr;gap:var(--spacing-md);align-items:stretch;animation:fadeInUp .6s cubic-bezier(.16,1,.3,1) both;animation-delay:.1s}.goals-section{background:linear-gradient(135deg,#1a1a1a99,#0f0f0fcc);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:12px 16px;border:1px solid rgba(255,255,255,.05);box-shadow:var(--shadow-xl),inset 0 1px #ffffff0d;display:flex;flex-direction:column;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.goals-section:hover{border-color:#d4a25933;box-shadow:var(--shadow-xl),0 0 24px #d4a25908}.chart-header{text-align:center;margin-bottom:var(--spacing-sm)}.chart-header h3{font-size:1.15rem;font-weight:700;color:var(--accent-primary);margin:0 0 4px;letter-spacing:-.2px}.warning-text{color:var(--warning);font-size:.8rem;font-weight:600;margin:0;display:inline-flex;align-items:center;gap:4px}.chart-section .donut-chart-container{height:120px;display:flex;justify-content:center;align-items:center;margin:0 auto}.donut-center-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:10}.donut-center-label{font-size:.6rem;font-weight:700;color:var(--text-muted);letter-spacing:1.5px}.donut-center-value{font-size:1.25rem;font-weight:800;color:var(--text-primary);margin-top:-2px;text-shadow:0 0 16px rgba(255,255,255,.1);transition:all var(--transition-base)}.donut-center-value.warning{color:var(--warning);text-shadow:0 0 16px rgba(234,179,8,.2)}.chart-legend{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:4px}.legend-item{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;border-radius:var(--radius-md);background:#ffffff04;border:1px solid rgba(255,255,255,.03);transition:all .2s cubic-bezier(.16,1,.3,1)}.legend-item:hover{background:#ffffff0a;border-color:#d4a25926;transform:translate(3px)}.legend-left{display:flex;align-items:center;gap:10px}.legend-color{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0;box-shadow:0 0 8px currentColor}.legend-name{font-size:.775rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.legend-percentage{font-weight:700;font-size:.8rem;color:var(--accent-primary)}.budget-studio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}.studio-card{background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:18px;padding:10px 14px;display:flex;flex-direction:row;align-items:center;gap:12px;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 1px #ffffff05;position:relative;overflow:hidden}.studio-card:hover{transform:translateY(-2px);border-color:#ffffff1f;background:#ffffff09;box-shadow:0 8px 24px #0006,0 0 15px color-mix(in srgb,var(--glow-color) 12%,transparent),inset 0 1px #ffffff0d}.studio-card-left{flex-shrink:0;display:flex;align-items:center;justify-content:center}.studio-card-right{flex:1;display:flex;flex-direction:column;gap:3px;overflow:hidden}.studio-card-header{display:flex;align-items:center;gap:8px}.studio-card-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;flex-shrink:0;transition:transform .3s ease}.studio-card:hover .studio-card-icon{transform:scale(1.05)}.studio-card-header h3{font-size:.85rem;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-card-right .card-desc{font-size:.65rem;color:var(--text-muted);margin:0;line-height:1.3;font-weight:400;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;height:2.6em}.radial-adjuster-wrapper{display:flex;flex-direction:column;align-items:center;width:100%}.radial-svg-container{position:relative;width:100px;height:100px;cursor:grab;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:transform .25s cubic-bezier(.16,1,.3,1)}.radial-svg-container:active{cursor:grabbing}.radial-svg{overflow:visible;pointer-events:none}.radial-track-bg{stroke:#ffffff08;transition:stroke .3s ease}.radial-track-fill{transition:stroke-dashoffset .1s cubic-bezier(.16,1,.3,1)}.radial-thumb{pointer-events:none;transition:r .25s cubic-bezier(.16,1,.3,1),stroke-width .25s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 6px #00000080}.radial-svg-container:hover .radial-thumb{r:9px}.radial-center-content{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;pointer-events:none}.radial-percentage-display{font-size:1.25rem;font-weight:800;pointer-events:auto;cursor:pointer;letter-spacing:-.5px;transition:transform .2s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none}.radial-percentage-display:hover{transform:scale(1.1)}.radial-input{width:55px;border:none;background:transparent;text-align:center;font-size:1.25rem;font-weight:800;color:var(--text-primary);outline:none;caret-color:var(--accent-primary);pointer-events:auto;letter-spacing:-.5px}.radial-input::-webkit-outer-spin-button,.radial-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.radial-input[type=number]{-moz-appearance:textfield}.radial-controls-pill{display:flex;align-items:center;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-full);padding:1px 6px;width:fit-content;margin-top:2px}.radial-controls-pill:hover{background:#ffffff0a;border-color:#ffffff1a}.btn-control-step{border:none;background:transparent;color:var(--text-muted);font-size:.95rem;width:22px;height:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;outline:none;border-radius:50%;line-height:1}.btn-control-step:hover{color:var(--text-primary);background:#ffffff0f}.btn-control-step:active{transform:scale(.9)}.control-divider{width:1px;height:10px;background:#ffffff0f;margin:0 3px}.budget-summary-card{background:#ffffff04;border:1px solid rgba(255,255,255,.04);border-radius:20px;padding:16px 20px;margin-bottom:20px;display:flex;flex-direction:column;gap:10px;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 1px #ffffff05}.budget-summary-card.is-complete{border-color:#10b98133;background:#10b98105;box-shadow:0 4px 20px #10b9810a,inset 0 1px #ffffff05}.summary-info{display:flex;justify-content:space-between;align-items:center}.summary-label{font-size:.85rem;font-weight:700;color:var(--text-primary);letter-spacing:-.1px}.summary-status{font-size:.8rem;color:var(--text-secondary)}.summary-status strong{font-size:.9rem;color:var(--accent-primary)}.budget-summary-card.is-complete .summary-status strong{color:#10b981}.haptic-check-bounce{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#10b981;color:#fff;margin-right:8px;vertical-align:middle;box-shadow:0 0 10px #10b9814d;animation:check-pop .4s cubic-bezier(.175,.885,.32,1.275) both}@keyframes check-pop{0%{transform:scale(0)}to{transform:scale(1)}}.check-icon-active{stroke-width:3}.summary-progress-bar-bg{width:100%;height:8px;background:var(--bg-primary);border-radius:var(--radius-full);overflow:hidden;box-shadow:inset 0 1px 3px #00000080;border:1px solid rgba(255,255,255,.02)}.summary-progress-bar-fill{height:100%;border-radius:var(--radius-full);transition:width .4s cubic-bezier(.16,1,.3,1),background .3s ease}.status-green{background:linear-gradient(90deg,#10b981,#34d399)}.status-orange{background:linear-gradient(90deg,#fb923c,#facc15)}.status-red{background:linear-gradient(90deg,#ef4444,#f87171)}.goals-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid rgba(255,255,255,.06)}.goals-actions .btn{padding:10px 24px;font-size:.85rem;font-weight:600;border-radius:var(--radius-md);transition:all var(--transition-fast) cubic-bezier(.16,1,.3,1);cursor:pointer;letter-spacing:-.1px}.goals-actions .btn-save-studio{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid rgba(255,255,255,.05);box-shadow:none}.goals-actions .btn-save-studio.ready{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;box-shadow:0 4px 14px #10b98133}.goals-actions .btn-save-studio.ready:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98159}.goals-actions .btn-save-studio.ready:active{transform:translateY(0)}.goals-actions .btn-save-studio:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.goals-actions .btn-outline-reset{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary)}.goals-actions .btn-outline-reset:hover{background:#ffffff0a;border-color:#ffffff40;color:var(--text-primary)}.trigger-bounce{animation:card-bounce .6s cubic-bezier(.175,.885,.32,1.275)}@keyframes card-bounce{0%{transform:scale(1)}30%{transform:scale(1.025)}60%{transform:scale(.985)}to{transform:scale(1)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 992px){.goals-layout{grid-template-columns:1fr}.chart-section{order:1}.sliders-section{order:2}}@media (max-width: 768px){.goals-page .page-content{padding:var(--spacing-md)}.goals-header h1{font-size:1.75rem}.budget-studio-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.goals-actions{flex-direction:column;gap:var(--spacing-sm)}.goals-actions .btn{width:100%}}.chart-card{background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:18px;padding:var(--spacing-md);box-shadow:inset 0 1px #ffffff05;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative}.chart-card:hover{transform:translateY(-2px);border-color:#ffffff1f;background:#ffffff09;box-shadow:0 8px 24px #0006,0 0 15px color-mix(in srgb,var(--glow-color, rgba(255, 255, 255, .1)) 12%,transparent),inset 0 1px #ffffff0d}.chart-card h3{margin:0 0 var(--spacing-md) 0;font-size:1rem;font-weight:600;color:var(--text-primary)}.recharts-tooltip-wrapper{outline:none}.chart-tooltip-container{background:#0a0a0ad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);padding:8px 12px;box-shadow:0 4px 12px #00000080;display:flex;flex-direction:column;gap:2px}.chart-tooltip-label{font-size:.7rem;color:var(--text-muted);margin:0;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.chart-tooltip-value{font-size:.95rem;font-weight:700;margin:0}.comparison-card{background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:18px;padding:var(--spacing-md);box-shadow:inset 0 1px #ffffff05;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative}.comparison-card:hover{transform:translateY(-2px);border-color:#ffffff1f;background:#ffffff09;box-shadow:0 8px 24px #0006,0 0 15px color-mix(in srgb,var(--glow-color, rgba(255, 255, 255, .1)) 12%,transparent),inset 0 1px #ffffff0d}.comparison-card h4{margin:0 0 var(--spacing-md) 0;font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.comparison-values{display:flex;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.value-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.value-item .label{font-size:.75rem;color:var(--text-muted)}.value-item .value{font-size:1.125rem;font-weight:700;color:var(--text-primary)}.delta{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm);border-radius:var(--radius-sm);background:var(--bg-tertiary);font-weight:600}.delta.positive{color:var(--success);background:#22c55e1a}.delta.negative{color:var(--danger);background:#ef44441a}.delta.neutral{color:var(--text-muted)}.delta-value{font-size:1rem}.delta-percent{font-size:.875rem;opacity:.8}.comp-bar-wrapper{margin-bottom:var(--spacing-md);display:flex;flex-direction:column;gap:4px}.comp-bar-track{width:100%;height:6px;background:#ffffff08;border-radius:var(--radius-full);display:flex;overflow:hidden;box-shadow:inset 0 1px 2px #0000004d}.comp-bar-fill{height:100%;transition:width .4s ease}.comp-bar-fill.fill-a{background:#ffffff26;border-right:1px solid rgba(10,10,10,.5)}.comp-bar-fill.fill-b{background:var(--accent-primary)}.comp-bar-labels{display:flex;justify-content:space-between;font-size:.65rem;color:var(--text-muted);font-weight:500}.category-comparison-section{margin-top:var(--spacing-lg)}.category-comparison-section h3{margin:0 0 var(--spacing-md) 0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.category-comparison-table{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.category-comparison-table .table-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.category-comparison-table .table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color);align-items:center;transition:background var(--transition-fast)}.category-comparison-table .table-row:last-child{border-bottom:none}.category-comparison-table .table-row:hover{background:var(--bg-tertiary)}.category-name{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:500;color:var(--text-primary)}.cat-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.category-comparison-table .delta{font-weight:600}.category-comparison-table .delta.positive{color:var(--success)}.category-comparison-table .delta.negative{color:var(--danger)}.category-comparison-table .delta.neutral{color:var(--text-muted)}.evolution-page{min-height:100vh;background:var(--bg-primary)}.evolution-page .page-content{max-width:1440px;margin:0 auto;padding:8px 24px;display:flex;flex-direction:column;gap:16px}.evolution-header{margin-bottom:4px;animation:fadeInDown .6s cubic-bezier(.16,1,.3,1) both}.evolution-header h1{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin:0 0 2px;letter-spacing:-.5px}.evolution-header .subtitle{font-size:.8rem;color:var(--text-muted);margin:0;font-weight:400}.evolution-tabs-container{display:flex;justify-content:flex-start;margin-bottom:8px}.segmented-control{position:relative;display:flex;background:#ffffff05;border:1px solid rgba(255,255,255,.05);padding:2.5px;border-radius:var(--radius-full);width:380px;box-shadow:inset 0 1px 3px #0003}.segmented-pill-bg{position:absolute;top:2.5px;left:2.5px;width:calc(50% - 2.5px);height:calc(100% - 5px);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);border-radius:var(--radius-full);transition:transform .25s cubic-bezier(.16,1,.3,1);z-index:0;box-shadow:0 2px 6px #d4a25933}.segmented-btn{position:relative;flex:1;background:none;border:none;padding:8px 0;font-size:.85rem;font-weight:600;color:var(--text-muted);cursor:pointer;z-index:1;text-align:center;border-radius:var(--radius-full);transition:color .2s ease}.segmented-btn.active{color:#fff}.segmented-btn:hover:not(.active){color:var(--text-primary)}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;animation:fadeInUp .6s cubic-bezier(.16,1,.3,1) both}.comparison-content{display:flex;flex-direction:column;gap:20px;animation:fadeInUp .6s cubic-bezier(.16,1,.3,1) both}.month-selectors{display:flex;gap:16px;padding:16px;background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:18px;box-shadow:inset 0 1px #ffffff05}.selector-group{flex:1;display:flex;flex-direction:column;gap:6px}.selector-group label{font-size:.72rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.select-wrapper{position:relative;width:100%}.select-wrapper:after{content:"▼";font-size:.65rem;color:var(--text-muted);right:12px;top:50%;transform:translateY(-50%);position:absolute;pointer-events:none;transition:color .2s ease}.select-wrapper:hover:after{color:var(--text-primary)}.selector-group select{width:100%;padding:10px 14px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;color:var(--text-primary);font-size:.85rem;font-weight:500;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:all .2s ease;outline:none}.selector-group select:focus{border-color:var(--accent-primary);background:#ffffff0a;box-shadow:0 0 0 2px #d4a25926}.comparison-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.empty-state{text-align:center;padding:40px 24px;background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:18px;box-shadow:inset 0 1px #ffffff05;margin-top:24px}.empty-state .primary-empty-msg{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.empty-state .desc{font-size:.8rem;color:var(--text-muted);margin:0}@media (max-width: 1024px){.charts-grid{grid-template-columns:1fr}.comparison-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.segmented-control{width:100%}}@media (max-width: 640px){.comparison-cards{grid-template-columns:1fr}.month-selectors{flex-direction:column}}.ci-page .page-content{max-width:1440px;margin:0 auto;padding:8px 24px 32px;display:flex;flex-direction:column;gap:20px}.ci-header{animation:fadeInDown .5s cubic-bezier(.16,1,.3,1) both}.ci-header h1{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin:0 0 4px;letter-spacing:-.5px}.ci-header .subtitle{font-size:.85rem;color:var(--text-muted);margin:0}.ci-layout{display:grid;grid-template-columns:340px 1fr;gap:20px;animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) both}.ci-sidebar{display:flex;flex-direction:column;gap:16px}.ci-inputs-card{background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:16px;box-shadow:inset 0 1px #ffffff05}.ci-inputs-card h3{font-size:.9rem;font-weight:700;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px}.ci-field{display:flex;flex-direction:column;gap:6px}.ci-field label{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.ci-input-wrapper{position:relative;display:flex;align-items:center}.ci-prefix{position:absolute;left:12px;font-size:.8rem;font-weight:600;color:var(--text-muted);pointer-events:none;z-index:1}.ci-input-wrapper input{width:100%;padding:10px 14px 10px 40px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;color:var(--text-primary);font-size:.9rem;font-weight:600;outline:none;transition:all .2s ease;font-family:inherit}.ci-input-wrapper input:focus{border-color:var(--accent-primary);background:#ffffff0a;box-shadow:0 0 0 2px #d4a25926}.ci-metrics{display:flex;flex-direction:column;gap:10px}.ci-metric{background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:14px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 1px #ffffff05}.ci-metric:hover{border-color:color-mix(in srgb,var(--metric-color) 30%,transparent);box-shadow:0 4px 16px #0000004d,0 0 12px color-mix(in srgb,var(--metric-color) 8%,transparent)}.ci-metric-label{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.ci-metric-value{font-size:1.05rem;font-weight:800;color:var(--text-primary)}.ci-main{display:flex;flex-direction:column;gap:16px}.ci-chart-card{background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:18px;padding:20px;box-shadow:inset 0 1px #ffffff05}.ci-chart-card h3{font-size:.9rem;font-weight:700;color:var(--text-primary);margin:0 0 12px}.ci-tooltip{background:#0a0a0ae0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 14px;box-shadow:0 4px 12px #00000080}.ci-tooltip-label{font-size:.7rem;font-weight:600;color:var(--text-muted);margin:0 0 4px;text-transform:uppercase;letter-spacing:.5px}.ci-tooltip-value{font-size:.82rem;font-weight:700;margin:2px 0}.ci-table-card{background:#ffffff04;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.04);border-radius:18px;padding:20px;box-shadow:inset 0 1px #ffffff05}.ci-table-card h3{font-size:.9rem;font-weight:700;color:var(--text-primary);margin:0 0 12px}.ci-table-wrapper{max-height:300px;overflow-y:auto;border-radius:10px}.ci-table-wrapper::-webkit-scrollbar{width:4px}.ci-table-wrapper::-webkit-scrollbar-track{background:transparent}.ci-table-wrapper::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:4px}.ci-table{width:100%;border-collapse:collapse}.ci-table th{text-align:left;font-size:.7rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.05);position:sticky;top:0;background:var(--bg-primary);z-index:1}.ci-table td{font-size:.8rem;padding:10px 12px;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.02);font-weight:500}.ci-table tr:hover td{background:#ffffff04}.ci-table .interest-cell{color:var(--success)}.ci-table .balance-cell{color:var(--accent-primary);font-weight:700}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 900px){.ci-layout{grid-template-columns:1fr}}.calendar-page{padding:var(--spacing-md);max-width:1200px;margin:0 auto;height:calc(100vh - 75px);box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column}.calendar-layout-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:var(--spacing-md);align-items:stretch;height:100%;min-height:0}@media (max-width: 900px){.calendar-page{height:auto;overflow-y:auto}.calendar-layout-grid{grid-template-columns:1fr;height:auto}}.calendar-card{background:var(--card-bg, rgba(25, 25, 30, .65));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:var(--radius-lg, 16px);padding:var(--spacing-md);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-lg, 0 10px 30px rgba(0,0,0,.3));display:flex;flex-direction:column;height:100%;min-height:0;box-sizing:border-box}.calendar-header-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm);padding:0 4px}.calendar-title-text{font-size:1.2rem;font-weight:700;color:var(--text-primary);text-transform:capitalize}.calendar-nav-buttons{display:flex;gap:8px}.calendar-nav-buttons .nav-btn{background:var(--bg-tertiary, rgba(255, 255, 255, .05));border:1px solid var(--border-color, rgba(255, 255, 255, .08));color:var(--text-primary);width:32px;height:32px;border-radius:var(--radius-md, 8px);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast, .2s)}.calendar-nav-buttons .nav-btn:hover{background:var(--accent-primary, #d4a259);color:#000}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;flex:1;min-height:0}.calendar-grid-label{text-align:center;font-size:.7rem;font-weight:700;color:var(--text-muted, rgba(255,255,255,.4));text-transform:uppercase;letter-spacing:.5px;padding:4px 0}.calendar-day-slot{background:var(--bg-secondary, rgba(255, 255, 255, .02));border:1px solid var(--border-color, rgba(255, 255, 255, .05));border-radius:var(--radius-md, 10px);padding:8px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;position:relative;transition:all var(--transition-fast, .2s);min-height:0}.calendar-day-slot:hover{background:#ffffff0d;border-color:var(--accent-primary, #d4a259);transform:translateY(-1px)}.calendar-day-slot.other-month{opacity:.25}.calendar-day-slot.selected{background:#d4a25914;border-color:var(--accent-primary, #d4a259);box-shadow:0 0 10px #d4a2591a}.calendar-day-slot.today{border-color:var(--success, #10b981)}.calendar-day-slot.today:before{content:"";position:absolute;top:4px;right:4px;width:4px;height:4px;background:var(--success, #10b981);border-radius:50%}.day-number{font-size:.85rem;font-weight:700;color:var(--text-primary)}.day-event-indicators{display:flex;gap:3px;flex-wrap:wrap;align-items:center;margin-top:2px}.event-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;display:inline-block}.event-dot-more{font-size:.6rem;color:var(--text-muted);font-weight:700;line-height:1}.calendar-side-panel{background:var(--card-bg, rgba(25, 25, 30, .65));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:var(--radius-lg, 16px);padding:var(--spacing-md);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;gap:var(--spacing-md);height:100%;min-height:0;box-sizing:border-box}.timezone-setting-box{background:var(--bg-tertiary, rgba(255, 255, 255, .03));border:1px solid var(--border-color, rgba(255, 255, 255, .06));padding:10px 14px;border-radius:var(--radius-md, 12px);display:flex;flex-direction:column;gap:6px}.timezone-header{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.timezone-icon{color:var(--accent-primary, #d4a259)}.timezone-select{background:var(--bg-primary, #09090b);border:1px solid var(--border-color, rgba(255, 255, 255, .08));color:var(--text-primary);border-radius:var(--radius-sm, 6px);padding:6px var(--spacing-sm);font-size:.85rem;outline:none;cursor:pointer;transition:border-color .2s}.timezone-select:focus{border-color:var(--accent-primary)}.selected-day-details{display:flex;flex-direction:column;flex:1;min-height:0}.panel-header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .08));padding-bottom:8px;gap:var(--spacing-xs);flex-shrink:0}.panel-header-section h3{font-size:.95rem;font-weight:700;color:var(--text-primary);margin:0}.panel-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--text-muted);padding:var(--spacing-md) 0}.panel-empty-state p{font-size:.8rem;margin-bottom:var(--spacing-sm)}.panel-select-prompt{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-muted);font-size:.8rem;padding:var(--spacing-md)}.panel-events-list{display:flex;flex-direction:column;gap:10px;overflow-y:auto;flex:1;min-height:0}.event-item-card{background:var(--bg-tertiary, rgba(255, 255, 255, .03));border:1px solid var(--border-color, rgba(255, 255, 255, .06));border-left:4px solid #3b82f6;border-radius:var(--radius-sm, 8px);padding:10px;display:flex;justify-content:space-between;align-items:start;gap:10px}.event-item-body{flex:1;min-width:0}.event-item-title{font-size:.875rem;font-weight:700;color:var(--text-primary);margin:0 0 2px;word-break:break-word}.event-item-desc{font-size:.75rem;color:var(--text-secondary);margin:0;word-break:break-word}.event-item-actions{display:flex;gap:4px;flex-shrink:0}.compact-modal-calendar{max-width:400px!important}.event-form{display:flex;flex-direction:column;gap:12px}.color-presets-picker{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}.color-preset-circle{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:all .2s;box-sizing:border-box}.color-preset-circle:hover{transform:scale(1.1)}.color-preset-circle.active{border-color:#fff;box-shadow:0 0 8px #ffffff4d}.tips-page{padding:var(--spacing-lg);max-width:1000px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.tips-hero-card{position:relative;background:linear-gradient(135deg,#d4a25926,#19191ee6);border:1px solid rgba(212,162,89,.3);border-radius:var(--radius-lg, 16px);padding:var(--spacing-lg) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;overflow:hidden;box-shadow:0 10px 30px #0003}.tips-hero-text h2{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin:0 0 8px;background:linear-gradient(to right,#ffffff,var(--accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.tips-hero-text p{font-size:.95rem;color:var(--text-secondary);margin:0;max-width:600px;line-height:1.5}.hero-sparkle{color:var(--accent-primary, #d4a259);opacity:.85;animation:floatSparkle 4s ease-in-out infinite}@keyframes floatSparkle{0%,to{transform:translateY(0) rotate(0) scale(1)}50%{transform:translateY(-8px) rotate(15deg) scale(1.08)}}.tips-disclaimer-box{background:#ef44440d;border:1px solid rgba(239,68,68,.15);border-radius:var(--radius-md, 12px);padding:12px 18px;font-size:.8rem;color:var(--text-muted, rgba(255, 255, 255, .5));line-height:1.5;text-align:justify}.phase-navigation-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm)}@media (max-width: 768px){.phase-navigation-tabs{grid-template-columns:repeat(2,1fr)}}.phase-tab-pill{background:var(--bg-secondary, rgba(255, 255, 255, .02));border:1px solid var(--border-color, rgba(255, 255, 255, .06));border-radius:var(--radius-md, 12px);padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;cursor:pointer;transition:all var(--transition-fast, .2s)}.phase-tab-pill:hover{background:#ffffff0d;border-color:var(--accent);transform:translateY(-2px)}.phase-tab-pill.active{background:#ffffff0d;border-color:var(--accent);box-shadow:0 0 20px var(--accent) 15}.phase-tab-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;color:#000;padding:2px 8px;border-radius:4px;letter-spacing:.5px}.phase-tab-title{font-size:.95rem;font-weight:700;color:var(--text-primary)}.phase-details-container{background:var(--card-bg, rgba(25, 25, 30, .65));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-top:4px solid var(--accent-primary);border-radius:var(--radius-lg, 16px);padding:var(--spacing-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;gap:var(--spacing-lg);animation:slideDownFade .3s ease-out}@keyframes slideDownFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.phase-details-header{display:flex;align-items:center;gap:var(--spacing-md)}.phase-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.phase-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.phase-subtitle{font-size:.875rem;color:var(--text-secondary);margin:0}.phase-items-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.phase-item-card{background:var(--bg-tertiary, rgba(255, 255, 255, .03));border:1px solid var(--border-color, rgba(255, 255, 255, .06));border-radius:var(--radius-md, 12px);padding:18px;display:flex;flex-direction:column;gap:12px}.phase-item-header{display:flex;align-items:center;gap:var(--spacing-sm)}.item-number-badge{width:24px;height:24px;border:2px solid var(--accent-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0}.phase-item-header h4{font-size:.95rem;font-weight:700;color:var(--text-primary);margin:0}.item-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.6;margin:0}.budgeting-method-card{background:var(--card-bg, rgba(25, 25, 30, .65));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:var(--radius-lg, 16px);padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:start;gap:var(--spacing-md);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.method-icon-wrapper{color:var(--accent-primary, #d4a259);background:#d4a25914;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid rgba(212,162,89,.15)}.method-text h4{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 6px}.method-text p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.portfolio-page{padding:var(--spacing-md);max-width:1200px;margin:0 auto;min-height:calc(100vh - 75px);box-sizing:border-box;display:flex;flex-direction:column;gap:var(--spacing-md)}.portfolio-balance-card{background:linear-gradient(135deg,#d4a25926,#19191e73);border:1px solid rgba(212,162,89,.25);border-radius:var(--radius-lg, 16px);padding:24px;display:flex;justify-content:space-between;align-items:center;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 8px 32px #00000040;gap:var(--spacing-md)}@media (max-width: 650px){.portfolio-balance-card{flex-direction:column;align-items:flex-start;padding:20px}}.portfolio-title-text{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin:0 0 6px;letter-spacing:-.5px}.portfolio-subtitle-text{font-size:.875rem;color:var(--text-secondary);margin:0;line-height:1.5;max-width:650px}.total-portfolio-badge{background:#ffffff05;border:1px solid rgba(255,255,255,.05);padding:12px 20px;border-radius:var(--radius-md, 12px);display:flex;flex-direction:column;align-items:flex-end;min-width:160px}@media (max-width: 650px){.total-portfolio-badge{align-items:flex-start;width:100%;box-sizing:border-box}}.total-portfolio-badge .badge-title{font-size:.72rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}.total-portfolio-badge .badge-value{font-size:1.6rem;font-weight:800;color:var(--accent-primary, #d4a259);text-shadow:0 0 15px rgba(212,162,89,.2)}.portfolio-layout-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:var(--spacing-md);align-items:start}@media (max-width: 900px){.portfolio-layout-grid{grid-template-columns:1fr}}.allocation-targets-card,.rebalancer-card,.allocation-progress-card,.portfolio-assets-table-card{background:var(--card-bg, rgba(25, 25, 30, .65));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:var(--radius-lg, 16px);padding:20px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-md, 0 8px 30px rgba(0,0,0,.2));box-sizing:border-box}.portfolio-left-column,.portfolio-right-column{display:flex;flex-direction:column;gap:var(--spacing-md)}.card-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.card-header-row.border-b{border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.card-description{font-size:.78rem;color:var(--text-secondary);margin:0 0 16px;line-height:1.4}.sum-badge{font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:20px}.sum-badge.valid{background:#10b9811a;color:var(--success, #10b981);border:1px solid rgba(16,185,129,.2)}.sum-badge.invalid{background:#ef44441a;color:var(--danger, #ef4444);border:1px solid rgba(239,68,68,.2)}.targets-inputs-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.target-input-row{display:flex;justify-content:space-between;align-items:center;background:#ffffff05;border:1px solid rgba(255,255,255,.04);padding:10px 14px;border-radius:var(--radius-md, 12px);transition:border-color .2s}.target-input-row:hover{border-color:#ffffff14}.class-indicator-dot{display:flex;align-items:center;gap:10px}.dot-icon{width:10px;height:10px;border-radius:50%;box-shadow:0 0 8px var(--accent)}.class-label{font-size:.82rem;font-weight:700;color:var(--text-primary)}.number-input-wrapper{display:flex;align-items:center;background:var(--bg-primary, #09090b);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:4px 8px;width:80px}.target-pct-input{background:none;border:none;color:#fff;font-size:.85rem;font-weight:700;width:100%;text-align:right;outline:none;font-family:var(--font-mono, monospace)}.target-pct-input::-webkit-outer-spin-button,.target-pct-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pct-symbol{font-size:.8rem;color:var(--text-muted);margin-left:4px}.save-targets-btn.disabled{opacity:.4;cursor:not-allowed;background:var(--bg-tertiary)!important;color:var(--text-muted)!important;border-color:transparent!important}.rebalancer-header{display:flex;align-items:center;gap:8px;margin-bottom:var(--spacing-xs)}.rebalancer-header h3{margin:0}.spark-icon{color:var(--accent-primary, #d4a259);animation:floatSparkle 4s ease-in-out infinite}.rebalancer-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 0;color:var(--text-muted);text-align:center}.rebalancer-empty-state p{font-size:.8rem;margin-top:10px}.rebalance-plan-list{display:flex;flex-direction:column;gap:8px}.rebalance-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-radius:var(--radius-md, 10px);border:1px solid transparent}.rebalance-item.buy{background:#10b9810d;border-color:#10b98126}.rebalance-item.sell{background:#ffffff05;border-color:#ffffff0d}.class-tag-name{font-size:.82rem;font-weight:700;color:var(--text-primary);display:block}.class-subtext{font-size:.72rem;color:var(--text-secondary)}.rebalance-right-actions{display:flex;align-items:center;gap:6px;font-weight:700;font-size:.8rem}.rebalance-arrow.buy{color:var(--success, #10b981)}.rebalance-arrow.sell{color:var(--text-muted, rgba(255,255,255,.4))}.rebalance-advice.buy{color:var(--success, #10b981)}.rebalance-advice.sell{color:var(--text-muted, rgba(255,255,255,.5))}.rebalancer-balanced-state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;color:var(--success, #10b981);text-align:center}.balanced-success-icon{background:#10b9811a;padding:8px;border-radius:50%}.rebalancer-balanced-state p{font-size:.85rem;margin:0;font-weight:700}.progress-bars-stack{display:flex;flex-direction:column;gap:16px}.progress-bar-group{display:flex;flex-direction:column;gap:6px}.progress-bar-labels{display:flex;justify-content:space-between;align-items:center;font-size:.78rem}.progress-bar-labels .class-name{font-weight:700;color:var(--text-primary)}.progress-bar-labels .class-values{font-weight:700;color:var(--text-secondary)}.double-progress-track{background:var(--bg-tertiary, rgba(255, 255, 255, .04));border-radius:8px;height:12px;position:relative;overflow:visible;border:1px solid rgba(255,255,255,.02)}.actual-progress-fill{height:100%;border-radius:7px;transition:width .6s cubic-bezier(.16,1,.3,1);box-shadow:0 0 10px #ffffff0d}.target-marker-indicator{position:absolute;top:-4px;width:4px;height:20px;background:#fff;border-radius:2px;transform:translate(-50%);box-shadow:0 0 10px #fffc;z-index:5;transition:left .6s cubic-bezier(.16,1,.3,1)}.portfolio-assets-table-card{display:flex;flex-direction:column}.portfolio-table-container{overflow-x:auto;border-radius:var(--radius-md, 12px);border:1px solid rgba(255,255,255,.05)}.portfolio-table{width:100%;border-collapse:collapse;text-align:left;font-size:.8rem}.portfolio-table th,.portfolio-table td{padding:12px var(--spacing-sm);border-bottom:1px solid rgba(255,255,255,.04)}.portfolio-table th{background:#ffffff05;font-weight:700;color:var(--text-muted);text-transform:uppercase;font-size:.7rem;letter-spacing:.5px}.portfolio-table tr:last-child td{border-bottom:none}.portfolio-table tr:hover td{background:#ffffff03}.class-badge{border:1px solid transparent;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:6px;background:#ffffff03}.table-actions{display:flex;gap:6px;justify-content:center}.welcome-modal-overlay{background:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.welcome-modal-content{max-width:480px;width:90%;padding:24px}.welcome-header{text-align:center;margin-bottom:16px}.welcome-title{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.welcome-subtitle{font-size:.9rem;color:var(--text-secondary);margin:0}.welcome-form,.welcome-form .form-group{margin-bottom:16px}.welcome-form label{display:block;margin-bottom:6px;font-weight:600;font-size:.9rem;color:var(--text-primary)}.welcome-form input{width:100%;padding:8px 16px;font-size:.95rem;text-align:center}.btn-large{width:100%;padding:10px 20px;font-size:1rem;font-weight:700}.welcome-features{padding-top:16px;border-top:1px solid var(--border-color)}.features-title{font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.welcome-features ul{list-style:none;padding:0;margin:0}.welcome-features li{padding:4px 0;color:var(--text-secondary);font-size:.8rem;display:flex;align-items:center;gap:8px}@media (max-width: 768px){.welcome-modal-content{padding:20px}.welcome-title{font-size:1.35rem}}.welcome-lang-buttons{display:flex;gap:12px;margin-top:6px}.welcome-lang-buttons .lang-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);color:#ffffff80;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);font-family:inherit}.welcome-lang-buttons .lang-btn:hover{background:#ffffff0f;color:#ffffffd9;border-color:#ffffff1f}.welcome-lang-buttons .lang-btn.active{background:#d4a25914;border-color:var(--accent-primary, #d4a259);color:#fff;box-shadow:0 0 0 1px #d4a2591f,0 4px 12px #d4a25926}.tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;pointer-events:none}.tour-overlay.is-changing-page .tour-spotlight,.tour-overlay.is-changing-page .tour-tooltip{opacity:0!important;pointer-events:none!important;visibility:hidden;transition:opacity .15s ease,visibility .15s ease}.tour-backdrop-full{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;pointer-events:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:backdropFadeIn .35s ease-out}@keyframes backdropFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}}.tour-spotlight{position:fixed;border-radius:12px;box-shadow:0 0 25px #d4a25966,0 0 0 2px #d4a25926;z-index:10001;pointer-events:none;transition:all .45s cubic-bezier(.16,1,.3,1);border:2px solid rgba(212,162,89,.7)}.tour-spotlight:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:14px;border:2px solid rgba(212,162,89,.15);animation:spotlightPulse 2s ease-in-out infinite}@keyframes spotlightPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.7;transform:scale(1.02)}}.tour-tooltip{position:fixed;width:360px;background:#0e0e12f2;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.06);border-radius:18px;padding:20px;z-index:10002;pointer-events:auto;box-shadow:0 24px 64px #0009,0 0 1px #ffffff0d,0 0 40px #d4a25914;animation:tooltipIn .4s cubic-bezier(.16,1,.3,1);transition:top .45s cubic-bezier(.16,1,.3,1),left .45s cubic-bezier(.16,1,.3,1),opacity .25s ease,transform .25s ease,width .35s ease}.tour-tooltip.is-center{position:fixed!important;width:420px}.tour-tooltip.animating{opacity:.5;transform:scale(.97)}@keyframes tooltipIn{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.tour-tooltip-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.tour-step-counter{display:flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;color:var(--accent-primary, #d4a259);text-transform:uppercase;letter-spacing:1px}.tour-close-btn{width:28px;height:28px;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);color:#fff6;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.tour-close-btn:hover{background:#ffffff14;color:#fffc}.tour-progress-track{width:100%;height:3px;background:#ffffff0a;border-radius:3px;margin-bottom:16px;overflow:hidden}.tour-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary, #d4a259),#e8c170);border-radius:3px;transition:width .3s cubic-bezier(.16,1,.3,1)}.tour-title{font-size:1.05rem;font-weight:800;color:#fff;margin:0 0 8px;letter-spacing:-.3px}.tour-desc{font-size:.82rem;line-height:1.6;color:#ffffff8c;margin:0 0 20px}.tour-actions{display:flex;justify-content:space-between;align-items:center}.tour-btn-group{display:flex;gap:8px}.tour-btn{display:flex;align-items:center;gap:4px;padding:8px 16px;border-radius:10px;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-family:inherit}.tour-btn-skip{background:transparent;color:#ffffff4d;padding:8px 4px}.tour-btn-skip:hover{color:#fff9}.tour-btn-prev{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);color:#fff9}.tour-btn-prev:hover{background:#ffffff14;color:#fff}.tour-btn-next{background:linear-gradient(135deg,var(--accent-primary, #d4a259),#c08530);color:#fff;box-shadow:0 2px 12px #d4a25940}.tour-btn-next:hover{transform:translateY(-1px);box-shadow:0 4px 16px #d4a25959}@media (max-width: 480px){.tour-tooltip{width:calc(100vw - 32px);left:16px!important}.tour-tooltip.is-center{width:calc(100vw - 32px)}}.tour-page-badge{display:inline-flex;align-items:center;gap:6px;background:#d4a25914;border:1px solid rgba(212,162,89,.15);border-radius:8px;padding:5px 10px;font-size:.7rem;color:var(--accent-primary, #d4a259);margin-bottom:12px}.tour-page-badge strong{font-weight:700;text-transform:uppercase}
