*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}.App,body{min-height:100vh}.App{display:flex;flex-direction:column}.App-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-bottom:1px solid #fff3;overflow:visible;padding:2rem;text-align:center}.App-header h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px #0000004d}.App-header p{font-size:1.2rem;font-weight:300;opacity:.9}.signup-message{background:#f8f9fa;border:1px solid #e9ecef;border-radius:.5rem;margin:.75rem auto;max-width:400px;padding:.75rem 1rem;text-align:center}.signup-message h3{color:#495057;font-size:1rem;font-weight:600;margin:0 0 .4rem}.signup-message p{color:#6c757d;direction:ltr;font-size:.85rem;font-weight:400;line-height:1.4;margin:0 0 .75rem}.signup-benefits{border-top:1px solid #dee2e6;margin-top:.75rem;padding-top:.75rem}.signup-benefits h4{color:#495057;font-size:.9rem;font-weight:600;margin:0 0 .5rem}.signup-benefits ul{list-style:none;margin:0;padding:0;text-align:left}.signup-benefits li{color:#6c757d;direction:ltr;font-size:.8rem;font-weight:400;line-height:1.3;margin-bottom:.4rem;padding-left:0}.signup-benefits li:last-child{margin-bottom:0}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.beta-modal{max-width:500px}.beta-content{padding:1rem 0;text-align:center}.beta-icon{font-size:3rem;margin-bottom:1rem}.beta-content h3{color:#059669;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.beta-content p{color:#374151;line-height:1.6;margin-bottom:1rem}.beta-benefits{background:#f0f9ff;border:1px solid #bae6fd;border-radius:.5rem;display:flex;flex-direction:column;gap:.75rem;margin:1.5rem 0;padding:1rem}.benefit-item{align-items:center;color:#1e40af;display:flex;font-size:.95rem;gap:.5rem}.benefit-icon{font-size:1.1rem}.beta-note{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:.5rem;margin-top:1.5rem;padding:1rem}.beta-note p{color:#92400e;font-size:.9rem;font-weight:500;margin:0;text-align:center}.modal-actions{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.modal-actions .btn{border-radius:.5rem;font-weight:500;min-width:120px;padding:.75rem 1.5rem;transition:all .2s ease}.modal-actions .btn-primary{background:#059669;border:none;color:#fff}.modal-actions .btn-primary:hover{background:#047857;transform:translateY(-1px)}.modal-actions .btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.modal-actions .btn-secondary:hover{background:#e5e7eb}@media (max-width:768px){.beta-modal{margin:1rem;max-width:calc(100vw - 2rem)}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.header-top{inset-inline-start:2rem;position:absolute;top:1rem;z-index:1000}.language-picker{display:inline-block;position:relative}.language-picker-trigger{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:6px;min-width:50px;padding:.5rem 1rem;text-shadow:0 1px 2px #0000004d;transition:all .2s ease}.language-picker-trigger:hover{background:#fff3;transform:translateY(-1px)}.language-picker-trigger.open{background:#ffffff4d;border-color:#ffffff80;box-shadow:0 2px 8px #0003}.current-language{align-items:center;display:flex;flex:1 1;justify-content:center}.language-flag{font-size:1.2rem}.language-name{font-weight:500;white-space:nowrap}.dropdown-arrow{opacity:.7}.dropdown-arrow.rotated{transform:rotate(180deg)}.language-picker-menu{background:#fff;border:1px solid #e0e0e0;border-radius:.5rem;box-shadow:0 4px 12px #00000026;inset-inline-start:0;margin-top:4px;min-width:200px;overflow:hidden;position:absolute;top:100%;z-index:1001}.language-option{color:#333;font-size:.9rem;gap:8px;padding:.75rem 1rem;text-align:left;width:100%}.language-option:hover{background-color:#f5f5f5}.language-option.selected{background-color:#e3f2fd;color:#1976d2;font-weight:500}.language-option .language-flag{font-size:1rem}.language-option .language-name{white-space:nowrap}.check-mark{color:#1976d2;font-size:.9rem;font-weight:600}[dir=rtl]{text-align:right}[dir=rtl] .App-header{text-align:center}[dir=rtl] .converter-container,[dir=rtl] .currency-selection,[dir=rtl] .tools-section{text-align:right}[dir=rtl] .currency-config,[dir=rtl] .selection-container{direction:rtl}[dir=rtl] .categorization-group,[dir=rtl] .currency-group label,[dir=rtl] .date-group label,[dir=rtl] .selection-label{text-align:right}[dir=rtl] .categorization-group .checkbox-label{flex-direction:row-reverse;justify-content:flex-end}[dir=rtl] .config-details,[dir=rtl] .modal-content{text-align:right}.auth-modal .signup-benefits,.auth-modal .signup-message{text-align:center}.auth-modal .signup-benefits ul{display:inline-block;margin:0 auto;text-align:left}[dir=rtl] .auth-modal .signup-benefits ul{text-align:right}[dir=rtl] .auth-modal .auth-form,[dir=rtl] .auth-modal .auth-form .form-group label{direction:rtl}[dir=rtl] .auth-modal .auth-footer,[dir=rtl] .auth-modal .auth-success{text-align:center}[dir=rtl] .signup-benefits li,[dir=rtl] .signup-message p{direction:rtl}[dir=rtl] .onboarding-content{text-align:right}.App-main{align-items:center;display:flex;flex:1 1;flex-direction:column;margin:0 auto;max-width:1200px;padding:3rem 2rem;width:100%}.tools-section{margin-bottom:3rem;width:100%}.tools-section h2{color:#fff;font-size:2rem;font-weight:600;margin-bottom:2rem;text-align:center;text-shadow:0 2px 4px #0000004d}.tools-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem}@media (max-width:1200px){.tools-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.tools-grid{grid-template-columns:1fr}}.tool-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;color:#333;cursor:pointer;overflow:hidden;padding:2rem;position:relative;text-align:center;transition:all .2s ease}.tool-card.active{background:linear-gradient(135deg,#2d3748,#4a5568);border:2px solid #4a5568;box-shadow:0 15px 40px #4a55684d;color:#fff;transform:translateY(-2px)}.tool-card.active h3{color:#fff}.tool-card.active p{color:#e2e8f0}.tool-logo{filter:none;height:40px;margin-bottom:1rem;max-width:120px;object-fit:contain;width:auto}.tool-card.active .tool-logo{filter:brightness(0) invert(1)}.tool-card.coming-soon{background:#f8f9fa;cursor:not-allowed;opacity:.7}.tool-card:hover{box-shadow:0 20px 50px #00000026;transform:translateY(-5px)}.tool-card h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin-bottom:.5rem}.tool-card p{color:#718096;font-size:.95rem;margin-bottom:1rem}.status{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:.4rem 1rem;text-transform:uppercase}.status.ready{background:#c6f6d5;color:#22543d}.status.coming-soon{background:#fed7cc;color:#c05621}.selection-container{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;margin:0 auto;max-width:800px;padding:2rem}.accounts-display{margin:0 auto 2rem;max-width:800px}.accounts-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 10px 30px #0000001a;padding:1.5rem}.accounts-loading{align-items:center;color:#718096;display:flex;justify-content:center;padding:1.5rem}.accounts-error{padding:1rem;text-align:center}.accounts-list{border:1px solid #e2e8f0;border-radius:8px;max-height:200px;overflow-y:auto}.account-preview-item{align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;position:relative;transition:all .2s ease}.account-preview-item:last-child{border-bottom:none}.account-preview-item:hover{background-color:#f8fafc;box-shadow:0 2px 8px #0000001a;transform:translateX(4px)}.account-preview-item.selected{background-color:#e3f2fd;border-left:4px solid #2196f3;padding-left:calc(1rem - 4px)}.account-preview-item.has-config{border-left:3px solid #4caf50;padding-left:calc(1rem - 3px)}.account-preview-item.selected.has-config{border-left:4px solid #2196f3;padding-left:calc(1rem - 4px)}.account-preview-item .account-name{color:#2d3748;font-weight:500}.account-preview-item .account-type{color:#718096;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.account-preview-item .account-status.closed{background:#fed7cc;border-radius:4px;color:#c05621;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.accounts-empty{color:#718096;padding:1rem;text-align:center}.account-main-info{align-items:flex-start;display:flex;flex-direction:column;flex-grow:1}.account-config-indicator{align-items:flex-end;display:flex;flex-direction:column;margin-left:1rem}.config-summary{align-items:center;display:flex;gap:.5rem;margin-bottom:.25rem}.country-flag{font-size:1rem;line-height:1}.bank-name{background:#4caf501a;border:1px solid #4caf5033;border-radius:.25rem;color:#555;font-size:.75rem;font-weight:500;padding:.1rem .4rem;text-transform:capitalize}.last-used{color:#666;font-size:.7rem;font-style:italic}.bank-selection,.country-selection{margin-bottom:2rem}.selection-label{color:#2d3748;display:block;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.bank-dropdown,.country-dropdown{appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:2px solid #e2e8f0;border-radius:12px;color:#2d3748;font-size:1rem;padding:1rem 3rem 1rem 1rem;transition:all .2s ease;width:100%}.bank-dropdown:focus,.country-dropdown:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.selected-bank-info{margin-top:2rem}.bank-info-card{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem}.bank-header{align-items:center;display:flex;margin-bottom:1rem}.bank-logo{height:32px;margin-right:1rem;max-width:80px;object-fit:contain;width:auto}.bank-name{color:#2d3748;font-size:1.4rem;font-weight:600;margin:0}.bank-description{color:#4a5568;font-size:1rem;line-height:1.5;margin-bottom:1rem}.supported-formats{color:#718096;font-size:.9rem}.supported-formats strong{color:#2d3748}.coming-soon-message{color:#718096;padding:3rem 2rem;text-align:center}.coming-soon-message h3{color:#d69e2e;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.coming-soon-message p{font-size:1.1rem;line-height:1.6;margin-bottom:.5rem}.banks-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.bank-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;padding:1rem;transition:all .2s ease}.bank-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.bank-card.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 4px 12px #667eea4d;color:#fff}.bank-card-logo{height:24px;margin-right:.75rem;max-width:60px;object-fit:contain;width:auto}.bank-card.selected .bank-card-logo{filter:brightness(0) invert(1)}.bank-card-name{font-size:.95rem;font-weight:500}.bank-dropdown-container{position:relative;width:100%}.bank-dropdown-trigger{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#2d3748;cursor:pointer;display:flex;font-size:1rem;justify-content:space-between;min-height:56px;padding:1rem;transition:all .2s ease;width:100%}.bank-dropdown-trigger:hover{border-color:#cbd5e0}.bank-dropdown-trigger.open{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.selected-bank-display{align-items:center;display:flex;flex:1 1}.bank-dropdown-logo{height:24px;margin-right:.75rem;max-width:60px;object-fit:contain;width:auto}.bank-dropdown-name{color:#2d3748;font-weight:500}.bank-dropdown-placeholder{color:#a0aec0;font-weight:400}.bank-dropdown-arrow{color:#718096;flex-shrink:0;transition:transform .2s ease}.bank-dropdown-arrow.rotated{transform:rotate(180deg)}.bank-dropdown-menu{background:#fff;border:2px solid #e2e8f0;border-radius:0 0 12px 12px;border-top:none;box-shadow:0 10px 30px #00000026;left:0;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.bank-dropdown-option{align-items:center;border-bottom:1px solid #f7fafc;cursor:pointer;display:flex;padding:1rem;position:relative;transition:all .2s ease}.bank-dropdown-option:last-child{border-bottom:none}.bank-dropdown-option:hover{background:#f8fafc}.bank-dropdown-option.selected{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.bank-dropdown-option.selected .bank-dropdown-logo{filter:brightness(0) invert(1)}.bank-dropdown-option.selected .bank-dropdown-name{color:#fff}.coming-soon-badge{background:#fed7cc;border-radius:6px;color:#c05621;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-inline-start:auto;padding:.25rem .5rem;text-transform:uppercase}.bank-dropdown-option.selected .coming-soon-badge{background:#fff3;color:#fff}.currency-selection{align-items:center;background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:0 auto 2rem;max-width:1200px;min-width:400px;padding:2rem;width:fit-content}.currency-selection h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.currency-selection .error-message,.currency-selection .loading-message{color:#4a5568;font-weight:500;padding:2rem;text-align:center}.currency-selection .error-message{background:#fed7d7;border:1px solid #feb2b2;border-radius:8px;color:#e53e3e;padding:1rem}.currency-options{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.currency-option{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;min-width:200px;padding:1rem 1.5rem;transition:all .3s ease}.currency-option:hover{background:#edf2f7;border-color:#667eea;transform:translateY(-2px)}.currency-option.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.currency-option input[type=radio]{margin-right:.75rem;transform:scale(1.2)}.currency-option.active input[type=radio]{accent-color:#fff}.currency-label{font-size:1rem;font-weight:600}.currency-config{align-items:center;display:flex;flex-direction:column;gap:2rem;justify-content:center;max-width:600px;width:100%}.currency-config .categorization-group,.currency-config .categorization-setup{width:100%}@media (min-width:768px){.currency-config{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));justify-content:center;justify-items:center}.currency-config .categorization-group,.currency-config .categorization-setup{grid-column:1/-1;justify-self:stretch}}@media (max-width:768px){.currency-selection{margin:0 auto 2rem;min-width:0;min-width:auto;width:100%}.currency-config{align-items:center;display:flex;flex-direction:column;gap:1.5rem}}.categorization-group,.currency-group,.date-group{display:flex;flex-direction:column;gap:.5rem;max-width:300px;width:100%}.currency-group label,.date-group label{color:#2d3748;font-size:.95rem;font-weight:600;text-align:center}.currency-select,.date-input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:1rem;min-width:0;padding:.75rem 1rem;text-align:center;transition:border-color .3s ease;width:100%}.currency-select:focus,.date-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.date-help-text{color:#718096;font-size:.85rem;line-height:1.4;margin-top:.25rem;text-align:center}@media (min-width:768px){.currency-config{align-items:end;flex-direction:row;gap:1rem}.currency-group,.date-group{flex:1 1;min-width:0}}.converter-container{max-width:600px;width:100%}.upload-area,.upload-section{margin-bottom:2rem}.upload-area{background:#fff;border:2px dashed #e1e5e9;border-radius:20px;box-shadow:0 20px 40px #0000001a;padding:3rem 2rem;position:relative;text-align:center;transition:all .3s ease}.upload-area:hover{border-color:#667eea;box-shadow:0 25px 50px #00000026;transform:translateY(-2px)}.upload-area.drag-over{background:linear-gradient(135deg,#48bb781a,#38a1691a);border-color:#48bb78;box-shadow:0 30px 60px #48bb7833;transform:translateY(-3px)}.upload-area.drag-over .upload-icon{transform:scale(1.1);transition:transform .2s ease}.upload-area.drag-over h4{color:#38a169}.upload-area.drag-over p{color:#2f855a}.upload-icon{font-size:4rem;margin-bottom:1rem}.upload-area h3{color:#2d3748;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.upload-area p{color:#718096;font-size:1rem;margin-bottom:2rem}.upload-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:600;padding:1rem 2rem;text-decoration:none;transition:all .3s ease}.upload-button:hover{box-shadow:0 10px 20px #667eea66;transform:translateY(-2px)}.upload-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.loading{background:#fff;border-radius:15px;box-shadow:0 10px 30px #0000001a;margin-bottom:2rem;padding:2rem;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;margin:0 auto 1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading p{color:#4a5568;font-weight:500}.error{background:#fed7d7;border:1px solid #feb2b2;border-radius:15px;margin-bottom:2rem;padding:1.5rem}.error h4{color:#c53030;font-size:1.1rem;margin-bottom:.5rem}.error p{color:#742a2a;margin:0}.result-section{margin-bottom:2rem}.success{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;padding:2.5rem;text-align:center}.success h3{color:#38a169;font-size:1.8rem;font-weight:600;margin-bottom:1.5rem}.result-info{background:#f7fafc;border-radius:12px;margin-bottom:2rem;padding:1.5rem;text-align:left}.result-info p{color:#2d3748;font-size:1rem;margin-bottom:.5rem}.result-info p:last-child{margin-bottom:0}.transaction-preview{background:#f7fafc;border-radius:12px;margin-bottom:2rem;padding:1.5rem;text-align:left}.transaction-preview-header h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.transaction-preview-subtitle{color:#718096;font-size:.9rem;margin:0 0 1rem}.transaction-preview-controls{border-bottom:1px solid #e2e8f0;margin-bottom:.75rem;padding-bottom:.75rem}.transaction-select-all{align-items:center;color:#4a5568;display:flex;font-size:.9rem;font-weight:500;gap:.5rem}.transaction-select-all label{cursor:pointer;margin:0}.transaction-select-all input[type=checkbox]{cursor:pointer;height:16px;width:16px}.transaction-preview-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto}.transaction-preview-item{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem 1rem;transition:all .15s ease}.transaction-preview-item:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000000d}.transaction-preview-item.selected{background:#f0fff4;border-color:#48bb78}.transaction-preview-item.deselected{background:#fafafa;opacity:.55}.transaction-preview-item input[type=checkbox]{cursor:pointer;flex-shrink:0;height:16px;margin-top:.25rem;width:16px}.transaction-preview-details{flex:1 1;min-width:0}.transaction-preview-row{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.25rem}.transaction-preview-date{color:#718096;font-size:.85rem;font-weight:500}.transaction-preview-amount{font-size:.95rem;font-weight:600;white-space:nowrap}.transaction-preview-amount.negative{color:#e53e3e}.transaction-preview-amount.positive{color:#38a169}.transaction-preview-payee{color:#2d3748;font-size:.95rem;font-weight:600;margin-bottom:.15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-preview-description{color:#718096;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-preview-category{color:#805ad5;font-size:.8rem;margin-top:.25rem}.transaction-preview-warning{color:#c53030;font-size:.9rem;margin:1rem 0 0;text-align:center}.currency-mismatch-warning{background-color:#fffaf0;border:1px solid #fbd38d;border-radius:8px;color:#c05621;font-size:.9rem;margin:.75rem 0 0;padding:.75rem 1rem}.currency-mismatch-confirm{background-color:#fff5f5;border:1px solid #feb2b2;border-radius:8px;color:#c53030;font-size:.9rem;margin:1rem 0 0;padding:.75rem 1rem}.budget-currency-info{color:#4a5568;font-size:.85rem;margin:.25rem 0 0}.account-selection-hint{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;font-size:.9rem;margin:0 0 1rem;padding:.75rem 1rem}.action-buttons{align-items:center;display:flex;flex-direction:column;gap:1rem}.secondary-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.download-button{align-items:center;background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.download-button:hover{box-shadow:0 10px 20px #48bb7866;transform:translateY(-2px)}.import-button{align-items:center;background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.import-button:hover:not(:disabled){box-shadow:0 10px 20px #4caf5066;transform:translateY(-2px)}.import-button:disabled{background:linear-gradient(135deg,#ccc,#bbb);cursor:not-allowed;transform:none}.primary-action{border:3px solid #ffffff4d;box-shadow:0 8px 25px #4caf5080;font-size:1.2rem;font-weight:700;padding:1.25rem 2.5rem}.primary-action:hover:not(:disabled){box-shadow:0 12px 30px #4caf5099;transform:translateY(-3px)}.secondary-action{background:linear-gradient(135deg,#666,#555);font-size:.9rem;opacity:.7;padding:.6rem 1.2rem;transition:all .2s ease}.secondary-action:hover:not(:disabled){opacity:1;transform:translateY(-1px)}.reset-button{align-items:center;background:linear-gradient(135deg,#ed8936,#dd6b20);border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.reset-button:hover{box-shadow:0 10px 20px #ed893666;transform:translateY(-2px)}@media (max-width:768px){.App-header{padding:1.5rem}.App-header h1{font-size:2rem}.App-header p{font-size:1rem}.App-main{padding:2rem 1rem}.tools-section h2{font-size:1.5rem}.tools-grid{gap:1rem;grid-template-columns:1fr}.tool-card{padding:1.5rem}.upload-area{padding:2rem 1rem}.upload-icon{font-size:3rem}.action-buttons{align-items:center;flex-direction:column}.download-button,.import-button,.reset-button{justify-content:center;max-width:300px;width:100%}.currency-options{align-items:center;flex-direction:column}.currency-option{min-width:250px}}@media (max-width:480px){.App-header h1{font-size:1.8rem}.upload-area h3{font-size:1.3rem}.success h3{font-size:1.5rem}}.import-result{background:#4caf501a;border:1px solid #4caf504d;border-radius:12px;margin-top:2rem;padding:1.5rem}.import-result h5{color:#2e7d32;font-size:1.2rem;font-weight:600;margin-bottom:1rem}.import-info{color:#1b5e20}.import-info p{font-weight:500;margin-bottom:.5rem}.import-errors{background:#ffc1071a;border:1px solid #ffc1074d;border-radius:8px;margin-top:1rem;padding:1rem}.import-errors ul{color:#e65100;margin:.5rem 0 0 1.5rem}.import-errors li{font-size:.9rem;margin-bottom:.25rem}.modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000b3;box-sizing:border-box;height:100vh;padding:1rem;width:100vw}.modal-content{box-shadow:0 20px 40px #0000004d;box-sizing:border-box;max-width:600px}.modal-header{background:#f8f9fa;border-radius:12px 12px 0 0;padding:1.25rem 1.5rem}.modal-header h3{font-size:1.5rem;font-weight:600}.modal-close{font-size:1.5rem;padding:.5rem;transition:all .2s ease}.modal-close:hover{background:#e0e0e0}.modal-body{overflow-x:hidden;padding:2rem}.overspend-modal{max-width:720px}.overspend-intro{color:#444;line-height:1.5;margin-top:0}.overspend-suggestion-type,.overspend-summary{color:#666;font-size:.95rem}.overspend-feedback{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}.overspend-feedback-input{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-family:inherit;padding:.75rem;resize:vertical;width:100%}.overspend-reprompt-error{color:#c62828;font-size:.9rem;margin:0}.overspend-toolbar{margin:1rem 0}.overspend-coverage-list{display:flex;flex-direction:column;gap:1rem}.overspend-coverage-card{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.overspend-coverage-card header{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.overspend-amount-badge{background:#ffebee;border-radius:999px;color:#c62828;font-size:.85rem;padding:.2rem .6rem;white-space:nowrap}.overspend-explanation{color:#555;font-size:.9rem;margin:0 0 .75rem}.overspend-uncovered-warning{color:#e65100;font-size:.9rem;margin:0 0 .75rem}.overspend-transfer-row{border-top:1px solid #eceff1;padding:.75rem 0}.overspend-transfer-summary{grid-gap:.25rem;display:grid;gap:.25rem}.overspend-transfer-summary .remaining-amount{color:#2e7d32;font-size:.9rem}.transfer-reason{color:#777}.protected-badge{background:#fff3e0;border-radius:4px;color:#ef6c00;font-size:.75rem;margin-left:.5rem;padding:.1rem .4rem}.overspend-checking{color:#666;font-style:italic;margin-bottom:.5rem;text-align:center;width:100%}.overspend-transfer-row label{display:block;margin-bottom:.5rem}.overspend-transfer-row input,.overspend-transfer-row select{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;display:block;margin-top:.25rem;padding:.5rem;width:100%}.account-selection h4,.budget-password h4,.budget-selection h4,.import-ready h4,.server-selection h4{color:#333;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.saved-servers{margin-bottom:2rem}.add-server h5,.saved-servers h5{color:#555;font-size:1rem;font-weight:500;margin-bottom:1rem}.server-item{background:#f8f9fa;margin-bottom:.5rem;padding:1rem;transition:all .2s ease}.server-item:hover{background:#e8f4f8;border-color:#2196f3}.server-info{flex:1 1}.server-info strong{font-size:1rem;margin-bottom:.25rem}.server-info span{color:#666;font-size:.875rem}.server-actions{gap:.5rem}.select-button{background:#4caf50;border-radius:6px;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.select-button:hover:not(:disabled){background:#45a049;transform:translateY(-1px)}.select-button:disabled{background:#ccc;cursor:not-allowed}.remove-button{border-radius:6px;font-size:.875rem;padding:.5rem .75rem;transition:all .2s ease}.remove-button:hover:not(:disabled){background:#da190b;transform:translateY(-1px)}.remove-button:disabled{background:#ccc;cursor:not-allowed}.form-group{margin-bottom:1rem}.form-group label{font-size:.9rem;margin-bottom:.5rem}.form-group input{font-size:1rem;padding:.75rem;transition:border-color .2s ease}.form-group input:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.create-server-button{background:#2196f3;font-size:1rem;padding:.75rem 1.5rem;transition:all .2s ease}.create-server-button:hover:not(:disabled){background:#1976d2;transform:translateY(-1px)}.budget-password{text-align:center}.budget-password p{color:#555;margin-bottom:1rem}.budget-password p:nth-of-type(2){background:#fff3e0;border-inline-start:4px solid #ff9800;border-radius:6px;color:#e65100;font-style:italic;padding:1rem}.account-list,.budget-list{border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1.5rem;max-height:300px;overflow-y:auto}.account-item,.budget-item{align-items:center;border-bottom:1px solid #e0e0e0;cursor:pointer;display:flex;justify-content:space-between;padding:1rem;transition:all .2s ease}.account-item:last-child,.budget-item:last-child{border-bottom:none}.account-item:hover,.budget-item:hover{background:#f0f8ff}.account-item.selected,.budget-item.selected{background:#e3f2fd;border-inline-start:4px solid #2196f3}.budget-item span{align-items:center;display:flex;justify-content:space-between;width:100%}.budget-item small{background:#4caf501a;border:1px solid #4caf504d;border-radius:4px;font-size:.75rem;font-weight:500;padding:2px 6px}.account-item span{color:#333;font-weight:500}.account-item small{color:#666;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.step-actions{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-top:1.5rem}.step-actions button{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.step-actions button:first-child{background:#666;color:#fff}.step-actions button:first-child:hover{background:#555}.step-actions button:last-child{background:#4caf50;color:#fff;flex:1 1}.step-actions button:last-child:hover:not(:disabled){background:#45a049;transform:translateY(-1px)}.step-actions button:disabled{background:#ccc;cursor:not-allowed;transform:none}.import-summary{background:#f8f9fa;border-inline-start:4px solid #4caf50;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.import-summary p{color:#333;margin-bottom:.5rem}.import-summary p:last-child{margin-bottom:0}.import-summary strong{color:#2c5aa0}.import-execute-button{background:#ff9800;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;letter-spacing:.5px;padding:1rem 2rem;text-transform:uppercase;transition:all .2s ease}.import-execute-button:hover:not(:disabled){background:#f57c00;box-shadow:0 4px 12px #ff98004d;transform:translateY(-2px)}.import-execute-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.close-modal-button{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;max-width:200px;padding:1rem 2rem;transition:all .2s ease;width:100%}.close-modal-button:hover{background:#45a049;transform:translateY(-1px)}.modal-body .import-result{background:#e8f5e8;border:1px solid #4caf50;border-radius:8px;margin-top:1.5rem;padding:1rem}.modal-body .import-result h5{color:#2e7d32;font-size:1.1rem;margin-bottom:1rem}.modal-body .import-info p{color:#333;margin-bottom:.5rem}.modal-body .import-errors{background:#fff3e0;border:1px solid #ff9800;border-radius:6px;margin-top:1rem;padding:1rem}.modal-body .import-errors p{color:#e65100;font-weight:500;margin-bottom:.5rem}.modal-body .import-errors ul{color:#bf360c;margin:.5rem 0 0 1rem}.modal-body .import-errors li{font-size:.9rem;margin-bottom:.25rem}@media (max-width:768px){.server-item{align-items:flex-start;flex-direction:column;gap:1rem}.server-actions{align-self:stretch;justify-content:space-between}.step-actions{flex-direction:column}.step-actions button:last-child{flex:none;width:100%}}.categorization-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin:2rem 0;max-width:800px;padding:2rem;width:100%}.categorization-section h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.categorization-config{display:flex;flex-direction:column;gap:1rem}.checkbox-label{align-items:center;color:#2d3748;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.75rem;justify-content:center;padding:.75rem 0}.categorization-checkbox{accent-color:#667eea;cursor:pointer;height:20px;width:20px}.checkbox-label span{-webkit-user-select:none;user-select:none}.categorization-setup{background:#f8f9fa;border-radius:12px;box-sizing:border-box;margin-top:1rem;padding:1.5rem;width:100%}.categorization-setup,.setup-prompt{align-items:center;display:flex;flex-direction:column}.setup-prompt{text-align:center}.setup-prompt p{color:#6c757d;margin-bottom:1rem}.setup-button{background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.setup-button:hover{box-shadow:0 4px 12px #4caf504d;transform:translateY(-2px)}.setup-button.secondary{background:linear-gradient(135deg,#6c757d,#5a6268);font-size:.9rem;padding:.5rem 1rem}.setup-button.secondary:hover{box-shadow:0 4px 12px #6c757d4d}.setup-complete{align-items:center;display:flex;flex-direction:column;text-align:center}.setup-complete p{color:#28a745;font-weight:600;margin-bottom:1rem}.config-details{align-items:center;background:#fff;border-inline-start:4px solid #28a745;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem;text-align:center}.config-details span{color:#495057;font-size:.9rem}.categorization-info{border-top:1px solid #dee2e6;margin-top:1rem;padding-top:1rem;text-align:center}.categorization-info p{color:#6c757d;font-style:italic}.categorization-ready{text-align:center}.categorization-ready h4{color:#28a745;margin-bottom:1.5rem}.setup-summary{background:#f8f9fa;border-radius:8px;margin-bottom:2rem;padding:1.5rem;text-align:left}.setup-summary p{color:#495057;margin-bottom:.5rem}.categorization-ready .categorization-info{background:#e8f5e8;border-radius:8px;margin-bottom:2rem;padding:1rem;text-align:left}.categorization-ready .categorization-info h5{color:#2c3e50;margin-bottom:1rem}.categorization-ready .categorization-info ul{list-style:none;padding:0}.categorization-ready .categorization-info li{color:#495057;margin-bottom:.5rem;padding-left:1.5rem;position:relative}.categorization-ready .categorization-info li:before{color:#28a745;content:"✓";font-weight:700;left:0;position:absolute}.complete-setup-button{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.complete-setup-button:hover{box-shadow:0 6px 20px #28a7454d;transform:translateY(-2px)}.server-indicator{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #0000001a;inset-inline-end:20px;max-width:300px;padding:12px 16px;position:absolute;top:20px}.server-connected,.server-disconnected{align-items:center;display:flex;gap:12px}.server-status{align-items:center;display:flex;flex:1 1;gap:8px}.status-icon{font-size:12px}.server-info{display:flex;flex-direction:column;min-width:0}.server-info strong{color:#333;font-size:14px}.server-info small,.server-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-info small{color:#666;font-size:11px}.server-connect-btn,.server-manage-btn{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .2s;white-space:nowrap}.server-connect-btn:hover,.server-manage-btn:hover{background:#45a049}.server-disconnected{color:#d32f2f}.server-disconnected .server-connect-btn{background:#2196f3}.server-disconnected .server-connect-btn:hover{background:#1976d2}.server-management-modal{max-width:800px;min-width:600px}.server-management-overview{display:flex;flex-direction:column;gap:20px}.hosted-server-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.hosted-server-panel h4{margin:0 0 8px}.hosted-server-description{color:#475569;font-size:14px;margin:0 0 12px}.hosted-trust-list{color:#64748b;font-size:13px;margin:0 0 16px;padding-left:18px}.hosted-server-card{display:flex;flex-direction:column;gap:12px}.hosted-server-url code{background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:block;font-size:13px;margin-top:4px;padding:8px 10px;word-break:break-all}.hosted-server-actions{display:flex;flex-wrap:wrap;gap:8px}.hosted-status-badge{background:#e2e8f0;border-radius:999px;display:inline-block;font-size:12px;padding:2px 8px}.hosted-status-badge.status-active{background:#dcfce7;color:#166534}.hosted-status-badge.status-provisioning{background:#fef9c3;color:#854d0e}.hosted-status-badge.status-failed{background:#fee2e2;color:#991b1b}.hosted-server-error{color:#b91c1c;font-size:13px}.hosted-server-loading{align-items:center;color:#475569;display:flex;font-size:14px;gap:10px;padding:8px 0}.hosted-server-loading .spinner{flex-shrink:0}.hosted-button-content{align-items:center;display:inline-flex;gap:8px}.spinner-inline{border-width:2px;height:16px;width:16px}.server-selector{margin-bottom:20px}.server-dropdown-section label{color:#333;display:block;font-weight:500;margin-bottom:8px}.server-dropdown-container{align-items:center;display:flex;gap:12px}.server-dropdown{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;flex:1 1;font-size:14px;padding:10px 12px;transition:border-color .2s}.server-dropdown:focus{border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033;outline:none}.add-server-button{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:background-color .2s;white-space:nowrap}.add-server-button:hover{background:#45a049}.selected-server-details{border-top:1px solid #e0e0e0;padding-top:20px}.selected-server-details h4{color:#333;margin-bottom:15px}.server-info-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.server-basic-info{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.server-basic-info strong{color:#333;font-size:18px}.server-basic-info span{color:#666;font-size:14px}.server-basic-info .default-budget-info{color:#4caf50;font-size:13px;font-weight:500}.server-basic-info .active-badge{align-self:flex-start;background:#4caf50;border-radius:12px;color:#fff;display:inline-block;font-size:11px;font-weight:500;margin-top:4px;padding:4px 8px}.server-actions-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.action-button{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:10px 16px;text-align:center;transition:all .2s}.action-button.primary{background:#2196f3;color:#fff}.action-button.primary:hover{background:#1976d2}.action-button.secondary{background:#9c27b0;color:#fff}.action-button.secondary:hover{background:#7b1fa2}.action-button.warning{background:#ff9800;color:#fff}.action-button.warning:hover{background:#f57c00}.action-button.danger{background:#f44336;color:#fff}.action-button.danger:hover{background:#d32f2f}.no-servers-prompt{padding:40px 20px;text-align:center}.no-servers-prompt h4{color:#333;margin-bottom:10px}.no-servers-prompt p{color:#666;line-height:1.5;margin-bottom:20px}.add-first-server-button{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s}.add-first-server-button:hover{background:#45a049}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h4{color:#333;margin:0}.back-to-overview-button{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .2s}.back-to-overview-button:hover{background:#5a6268}.loading-budgets{align-items:center;color:#666;display:flex;flex-direction:column;padding:40px}.loading-budgets .spinner{margin-bottom:10px}.loading-budgets p{font-size:14px;margin:0}.loading-accounts{align-items:center;display:flex;flex-direction:column;padding:40px}.loading-accounts .loading-state{color:#666;text-align:center}.loading-accounts .loading-state .spinner{margin-bottom:15px}.loading-accounts .loading-state h4{color:#333;font-size:16px;margin:0 0 10px}.loading-accounts .loading-state p{font-size:14px;line-height:1.4;margin:6px 0}.import-config-summary{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:20px;padding:16px}.import-config-summary p{color:#333;font-size:14px;line-height:1.4;margin:6px 0}.import-config-summary strong{color:#495057}.budget-validation-error{margin-bottom:15px}.password-saved{color:#4caf50;font-size:11px;font-weight:500;margin-left:8px}.password-security-notice{background:#f0f7ff;border:1px solid #d0e3ff;border-radius:6px;color:#4a6fa5;font-size:12px;line-height:1.4;margin:8px 0 0;padding:8px 10px}.onboarding-note.security-note{border-top:none;margin-top:8px;padding-top:0}.onboarding-note.security-note small{color:#4a6fa5;font-style:normal}.budget-password-section{margin-top:20px}.password-prompt{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:20px;padding:16px}.password-prompt h5{color:#333;font-size:16px;margin:0 0 10px}.password-prompt p{color:#666;font-size:14px;line-height:1.4;margin:6px 0}.unlock-budget-button{background:#ff9800;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:10px 16px;transition:background-color .2s}.unlock-budget-button:hover{background:#f57c00}.unlock-budget-button:disabled{background:#ccc;cursor:not-allowed}.skip-budget-button{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:10px 16px;transition:background-color .2s}.skip-budget-button:hover{background:#5a6268}.budget-validation-section{align-items:center;display:flex;flex-direction:column;padding:40px 20px}.validating-state{text-align:center}.validating-state .spinner{margin-bottom:15px}.validating-state h5{color:#333;font-size:16px;margin:0 0 10px}.validating-state p{color:#666;font-size:14px;line-height:1.4;margin:6px 0}.saved-servers-section{margin-bottom:30px}.servers-list{display:flex;flex-direction:column;gap:12px;margin-top:15px}.server-item{align-items:center;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;display:flex;justify-content:space-between;padding:16px;transition:all .2s}.server-item.active{background:#e8f5e8;border-color:#4caf50}.server-item:hover{background:#f0f0f0}.server-item.active:hover{background:#e0f2e0}.server-details{display:flex;flex-direction:column;gap:4px}.server-details strong{color:#333;font-size:16px}.server-details span{color:#666;font-size:13px}.active-badge{background:#4caf50;border-radius:10px;color:#fff;display:inline-block;font-size:10px;font-weight:400;margin-left:8px;padding:2px 6px}.server-actions{align-items:center;display:flex;gap:8px}.select-button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .2s}.select-button:hover{background:#1976d2}.remove-button{background:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .2s}.remove-button:hover{background:#d32f2f}.add-server-section{border-top:1px solid #e0e0e0;padding-top:20px}.form-group{margin-bottom:15px}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:5px}.form-group input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input:focus{border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033;outline:none}.create-server-button{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:background-color .2s;width:100%}.create-server-button:hover{background:#45a049}.create-server-button:disabled{background:#ccc;cursor:not-allowed}.onboarding-modal{max-width:600px;min-width:500px}.onboarding-content{text-align:center}.feature-explanation h4{color:#333;margin-bottom:15px}.feature-explanation p{color:#666;line-height:1.5;margin-bottom:20px}.features-list{display:flex;flex-direction:column;gap:15px;margin:20px 0;text-align:left}.feature-item{align-items:flex-start;background:#f8f9fa;border-inline-start:4px solid #4caf50;border-radius:8px;box-sizing:border-box;display:flex;gap:12px;max-width:100%;padding:15px}.feature-icon{flex-shrink:0;font-size:20px;margin-top:2px}.feature-item strong{color:#333;display:block;margin-bottom:4px}.feature-item p{color:#666;font-size:13px;line-height:1.4;margin:0}.onboarding-actions{display:flex;gap:15px;justify-content:center;margin:25px 0 20px}.connect-server-button{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:background-color .2s}.connect-server-button:hover{background:#45a049}.skip-button{background:#f5f5f5;border:1px solid #ddd;border-radius:6px;color:#666;cursor:pointer;font-size:14px;padding:12px 20px;transition:all .2s}.skip-button:hover{background:#e8e8e8;border-color:#bbb}.onboarding-note{border-top:1px solid #e0e0e0;margin-top:15px;padding-top:15px}.onboarding-note small{color:#888;font-style:italic}.no-servers-message{padding:30px 20px;text-align:center}.no-servers-message h4{color:#333;margin-bottom:15px}.no-servers-message p{color:#666;line-height:1.5;margin-bottom:25px}.no-servers-message .connect-server-button{margin-bottom:10px}.no-servers-message .skip-button{margin-left:10px}@media (max-width:768px){.server-indicator{margin:15px auto 0;max-width:100%;position:relative;right:auto;top:auto}.server-connected,.server-disconnected{align-items:stretch;flex-direction:column;gap:10px}.server-status{justify-content:center}.server-connect-btn,.server-manage-btn{text-align:center;width:100%}.modal-overlay{padding:.5rem}.modal-content{border-radius:8px;margin:0;max-height:95vh;max-width:100%;width:100%}.onboarding-modal,.server-management-modal{max-width:100%;min-width:0}}.App-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-direction:column;min-height:120px;position:relative}.App-header,.modal-overlay{align-items:center;display:flex;justify-content:center;padding:20px}.modal-overlay{background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 20px 10px}.modal-header h3{color:#333;font-size:18px;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;padding:0;transition:all .2s;width:24px}.modal-close:hover{background:#f0f0f0;color:#333}.modal-body{padding:20px}.default-budget{align-items:center;color:#4caf50!important;display:flex;font-weight:500;gap:2px}.default-budget-info{color:#4caf50;font-size:12px;font-weight:500}.change-budget-button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .2s}.change-budget-button:hover{background:#1976d2}.add-server-item{background:#fafafa;border:2px dashed #ddd;cursor:pointer;transition:all .2s}.add-server-item:hover{background:#f0f8f0;border-color:#4caf50}.add-server-item .server-details strong{color:#4caf50}.add-server-item .server-details span{color:#888;font-style:italic}.budget-selection-area{border-top:1px solid #e0e0e0;margin-top:20px;padding-top:20px}.budget-selection-area h4{color:#333;margin-bottom:8px}.budget-selection-area p{color:#666;font-size:13px;line-height:1.4;margin-bottom:15px}.budget-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;max-height:200px;overflow-y:auto}.budget-item{align-items:center;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s}.budget-item:hover{background:#f0f0f0;border-color:#ccc}.budget-item.selected{background:#e8f5e8;border-color:#4caf50;color:#2e7d32}.budget-item span{font-weight:500}.budget-currency{color:#666;font-size:12px;font-weight:400}.currency-selection{margin-bottom:20px}.currency-selection label{color:#333;display:block;font-weight:500;margin-bottom:8px}.currency-select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:10px 12px;width:100%}.currency-select:focus{border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033;outline:none}.setup-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.setup-actions button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s}.select-budget-button{background:#4caf50;color:#fff}.select-budget-button:hover{background:#45a049}.select-budget-button:disabled{background:#ccc;cursor:not-allowed}.back-button{background:#f5f5f5;border:1px solid #ddd!important;color:#666}.back-button:hover{background:#e8e8e8;border-color:#bbb!important}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.form-actions button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s}.cancel-button{background:#f5f5f5;border:1px solid #ddd!important;color:#666}.cancel-button:hover{background:#e8e8e8;border-color:#bbb!important}@media (max-width:768px){.server-dropdown-container{flex-direction:column;gap:8px}.server-dropdown{width:100%}.add-server-button{padding:12px 16px;width:100%}.server-actions-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;gap:10px}.form-actions,.section-header{flex-direction:column}.form-actions button{width:100%}.server-actions{flex-direction:column;gap:4px}.server-actions button{font-size:11px;padding:4px 8px;width:100%}.setup-actions{flex-direction:column}.setup-actions button{width:100%}.skip-budget-button,.unlock-budget-button{margin-top:8px;width:100%}.budget-validation-section{padding:20px 10px}.password-prompt{padding:12px}.modal-header{padding:15px}.modal-header h3{font-size:16px}.modal-body{padding:15px}.features-list{gap:10px}.feature-item{align-items:flex-start;flex-direction:row;padding:12px}.feature-icon{font-size:18px;margin-top:0}.onboarding-actions{flex-direction:column;gap:10px}.connect-server-button,.skip-button{font-size:14px;padding:12px;width:100%}}@media (max-width:480px){.modal-overlay{padding:.25rem}.modal-content{border-radius:6px;max-height:98vh;min-width:0}.modal-header{padding:12px}.modal-header h3{font-size:14px}.modal-body{padding:12px}.feature-item{padding:10px}.feature-item strong{font-size:13px}.feature-item p{font-size:12px}.connect-server-button,.skip-button{font-size:13px;padding:10px}.onboarding-modal,.server-management-modal{max-width:100%!important;min-width:0!important}}.bank-dropdown-separator{background:#e2e8f0;border:none;height:1px;margin:.5rem 0}.bank-dropdown-logo-container{flex-shrink:0;height:32px;margin-inline-end:.75rem;width:32px}.bank-dropdown-emoji,.bank-dropdown-logo-container{align-items:center;display:flex;justify-content:center}.bank-dropdown-emoji{font-size:20px;height:100%;line-height:1;text-align:center;width:100%}.bank-dropdown-option.other-banks-option{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-top:1px solid #e2e8f0;margin-top:.5rem;padding-top:.75rem}.bank-dropdown-option.other-banks-option:hover{background:linear-gradient(135deg,#e2e8f0,#cbd5e1)}.bank-dropdown-option.other-banks-option.selected{background:linear-gradient(135deg,#4338ca,#3730a3);color:#fff}.other-bank-info{padding:1rem;text-align:center}.other-bank-info p{color:#4338ca;font-weight:600;margin-bottom:.5rem}.other-bank-info small{color:#64748b;font-style:italic}.user-profile{display:inline-block;position:relative}.user-profile-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:8px;padding:.5rem 1rem;text-shadow:0 1px 2px #0000004d;transition:all .2s ease}.user-profile-button:hover{background:#fff3;transform:translateY(-1px)}.user-avatar{align-items:center;background:#fff3;border-radius:50%;display:flex;font-size:.8rem;font-weight:600;height:24px;justify-content:center;width:24px}.user-email{font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-arrow{font-size:.7rem;transition:transform .2s ease}.user-dropdown{background:#fff;border-radius:.5rem;box-shadow:0 4px 12px #00000026;margin-top:.5rem;min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.dropdown-item{background:none;border:none;color:#333;cursor:pointer;font-size:.9rem;padding:.75rem 1rem;text-align:left;transition:background-color .2s ease;width:100%}.dropdown-item:hover{background-color:#f5f5f5}.dropdown-item.user-info{background-color:#f8f9fa;cursor:default;display:flex;flex-direction:column;gap:.25rem}.dropdown-item.user-info strong{color:#666;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.dropdown-item.user-info span{color:#333;font-weight:500}.dropdown-divider{background-color:#e9ecef;height:1px;margin:0}.sign-out-button{color:#dc3545;font-weight:500}.sign-out-button:hover{background-color:#f8d7da;color:#721c24}.dropdown-backdrop{bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.auth-modal{max-height:90vh;max-width:500px;width:90%}.auth-modal .modal-body{padding:1.5rem}.auth-form{gap:.75rem}.auth-form,.auth-form .form-group{display:flex;flex-direction:column}.auth-form .form-group{gap:.4rem}.auth-form .form-group label{color:#333;font-size:.9rem;font-weight:500}.auth-form .form-group input{background-color:#fff!important;border:1px solid #ddd!important;border-radius:.5rem!important;box-sizing:border-box!important;color:#333!important;font-size:.95rem!important;padding:.6rem!important;transition:border-color .2s ease!important;width:100%!important}.auth-form .form-group input:focus{border-color:#667eea!important;box-shadow:0 0 0 3px #667eea1a!important;outline:none!important}.auth-form .form-group input:disabled{background-color:#f5f5f5!important;cursor:not-allowed!important}.auth-form .form-group input::placeholder{color:#999!important;opacity:1!important}.auth-submit{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;margin-top:.4rem;padding:.6rem 1.25rem;transition:all .2s ease}.auth-submit:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.auth-submit:disabled{cursor:not-allowed;opacity:.6;transform:none}.auth-footer{border-top:1px solid #e9ecef;margin-top:.75rem;padding-top:.75rem;text-align:center}.auth-footer p{color:#666;font-size:.9rem;margin:0}.auth-success{padding:2rem 0;text-align:center}.auth-success p{color:#28a745;font-size:1rem;line-height:1.5;margin-bottom:1.5rem}.btn-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:inherit;font-weight:500;margin:0;padding:0;text-decoration:underline}.btn-link:hover{color:#5a6fd8}.btn-link:disabled{color:#999;cursor:not-allowed;text-decoration:none}.auth-form .error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:.25rem;color:#dc3545;font-size:.875rem;margin-top:.25rem;padding:.5rem}.login-required{background:#ffc1071a;border:1px solid #ffc1074d;border-radius:.5rem;margin:1rem 0;padding:1rem;text-align:center}.login-required h4{color:#856404;font-size:1rem;margin-bottom:.5rem}.login-required p{color:#856404;font-size:.9rem;margin-bottom:1rem}.login-required .btn{background:#ffc107;border:none;border-radius:.25rem;color:#212529;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .2s ease}.login-required .btn:hover{background:#e0a800}@media (max-width:768px){.user-profile-button{font-size:.8rem;padding:.4rem .8rem}.user-email{max-width:100px}.user-dropdown{min-width:180px;right:-.5rem}.auth-modal{margin:1rem;width:95%}.auth-modal .modal-body{padding:1.5rem}}@media (max-width:480px){.user-profile-button{gap:6px;padding:.3rem .6rem}.auth-modal .modal-body{padding:1rem}.auth-form .form-group input{font-size:.9rem;padding:.6rem}.user-email{font-size:.8rem;max-width:80px}.user-avatar{font-size:.7rem;height:20px;width:20px}}.subscribe-cta{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #0000;border-radius:12px;box-shadow:0 4px 15px #667eea4d;box-sizing:border-box;cursor:pointer;margin-left:0;margin-right:0;margin-top:1rem;max-width:none!important;padding:1.5rem;transition:all .3s ease;width:100%}.subscribe-cta:hover{border-color:#ffffff4d;box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.subscribe-content{color:#fff;text-align:center}.subscribe-content h4{font-size:1.4rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px #0000004d}.subscribe-content p{font-size:1rem;font-weight:400;line-height:1.5;margin-bottom:1rem;opacity:.95}.subscribe-content .btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s ease}.subscribe-content .btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}@media (max-width:768px){.subscribe-cta{padding:1.25rem}.subscribe-content h4{font-size:1.2rem}.subscribe-content p{font-size:.9rem}.subscribe-content .btn{font-size:.9rem;padding:.6rem 1.5rem}}.pricing-button{background:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:background-color .3s ease}.pricing-button:hover{background:#2c5aa0}.country-bank-selector{margin:0 auto;max-width:600px}.country-bank-selector .selection-container{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #0000001a;padding:2rem}.country-bank-selector .bank-selection,.country-bank-selector .country-selection{margin-bottom:1.5rem}.country-bank-selector .selection-label{color:#2d3748;display:block;font-size:1rem;font-weight:600;margin-bottom:.5rem}.country-bank-selector .country-dropdown{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .2s ease;width:100%}.country-bank-selector .country-dropdown:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.country-bank-selector .loading-state{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:center;padding:1rem}.country-bank-selector .loading-state .spinner{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:20px;margin-right:.5rem;width:20px}.country-bank-selector .loading-state p{color:#4a5568;font-size:.9rem;margin:0}.country-bank-selector .error-state{background:#fed7d7;border:1px solid #feb2b2;border-radius:8px;color:#c53030;padding:1rem}.country-bank-selector .error-state p{font-size:.9rem;margin:0}.country-bank-selector .selection-complete{background:#f0fff4;border:1px solid #9ae6b4;border-radius:8px;margin-top:1rem;padding:1rem;text-align:center}.country-bank-selector .success-message{align-items:center;color:#22543d;display:flex;font-weight:600;justify-content:center}.country-bank-selector .success-message .check-icon{font-size:1.2rem;margin-right:.5rem}@media (max-width:768px){.country-bank-selector .selection-container{margin:0 1rem;padding:1.5rem}.country-bank-selector .bank-selection,.country-bank-selector .country-selection{margin-bottom:1rem}}.country-bank-selector.compact{margin:0 auto 2rem;max-width:600px}.country-bank-selector.compact .selection-summary{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #0000001a;padding:1.5rem}.country-bank-selector.compact .summary-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.country-bank-selector.compact .summary-header h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0}.country-bank-selector.compact .change-selection-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:background-color .2s ease}.country-bank-selector.compact .change-selection-btn:hover{background:#5a67d8}.country-bank-selector.compact .summary-content{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.country-bank-selector.compact .summary-item{display:flex;flex-direction:column;gap:.25rem}.country-bank-selector.compact .summary-label{color:#4a5568;font-size:.9rem;font-weight:500}.country-bank-selector.compact .summary-value{color:#2d3748;font-size:1rem;font-weight:600}@media (max-width:768px){.country-bank-selector.compact .summary-header{align-items:flex-start;flex-direction:column;gap:1rem}.country-bank-selector.compact .summary-content{gap:.75rem;grid-template-columns:1fr}.country-bank-selector.compact .change-selection-btn{width:100%}}.settings-dropdown{display:inline-block;position:relative}.settings-dropdown-trigger{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease}.settings-dropdown-trigger:hover{background:#fff3;border-color:#ffffff4d}.settings-dropdown-trigger.open{background:#ffffff40;border-color:#fff6}.settings-dropdown-trigger svg{transition:transform .2s ease}.settings-dropdown-trigger .dropdown-arrow.rotated{transform:rotate(180deg)}.settings-dropdown-menu{background:#fff;border:1px solid #0000001a;border-radius:.75rem;box-shadow:0 10px 25px #00000026;margin-top:.5rem;min-width:280px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.settings-section{border-bottom:1px solid #f1f3f4;padding:1rem}.settings-section:last-child{border-bottom:none}.settings-section-header{margin-bottom:.75rem}.settings-section-title{color:#5f6368;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.language-options{display:flex;flex-direction:column;gap:.25rem}.language-option{align-items:center;background:none;border:none;border-radius:.375rem;color:#202124;cursor:pointer;display:flex;font-size:.875rem;gap:.75rem;padding:.5rem .75rem;transition:background-color .2s ease}.language-option:hover{background-color:#f8f9fa}.language-option.selected{background-color:#e8f0fe;color:#1a73e8}.language-option .language-flag{font-size:1.125rem}.language-option .language-name{flex:1 1;text-align:left}.language-option .check-mark{color:#1a73e8;font-weight:700}.server-status-display{margin-bottom:.75rem}.server-status-display .server-connected,.server-status-display .server-disconnected{align-items:center;background-color:#f8f9fa;border-radius:.375rem;display:flex;gap:.5rem;padding:.5rem}.server-status-display .server-status{align-items:center;display:flex;flex:1 1;gap:.5rem}.server-status-display .status-icon{font-size:.75rem}.server-status-display .server-info{display:flex;flex-direction:column;gap:.125rem}.server-status-display .server-info strong{color:#202124;font-size:.875rem;font-weight:600}.server-status-display .server-info small{color:#5f6368;font-size:.75rem}.server-status-display .default-budget{color:#1a73e8;font-weight:500}.server-manage-btn{background:#1a73e8;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background-color .2s ease;width:100%}.server-manage-btn:hover{background:#1557b0}@media (max-width:768px){.settings-dropdown-menu{min-width:260px;right:-1rem}.settings-section{padding:.75rem}.language-option{padding:.625rem .5rem}}@media (max-width:480px){.settings-dropdown-menu{min-width:240px;right:-2rem}}.onboarding-journey{margin:0 auto 2rem;max-width:1100px}.journey-hero{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;padding:3rem;text-align:center}.journey-icon{font-size:4rem;margin-bottom:1rem}.journey-hero h2{color:#2d3748;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.journey-subtitle{color:#4a5568;font-size:1.15rem;line-height:1.6;margin:0 auto 2.5rem;max-width:760px}.journey-paths{grid-gap:2rem;align-items:stretch;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:2rem}.journey-path-card{border:2px solid #0000;border-radius:16px;display:flex;flex-direction:column;padding:2rem;position:relative;text-align:start;transition:all .3s ease}.journey-path-card:hover{box-shadow:0 15px 35px #0000001f;transform:translateY(-3px)}.journey-path-card.guided{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.journey-path-card.explore{background:#f7fafc;border-color:#e2e8f0;color:#2d3748}.journey-path-card h3{font-size:1.4rem;font-weight:700;margin:0 0 .75rem}.journey-path-card p{font-size:1rem;line-height:1.6;margin-bottom:1.25rem;opacity:.92}.path-badge{background:#f6ad55;border-radius:999px;box-shadow:0 3px 10px #00000026;color:#7b341e;font-size:.8rem;font-weight:700;inset-inline-end:20px;padding:.3rem .85rem;position:absolute;top:-12px}.path-steps-preview{padding-inline-start:1.4rem}.path-features,.path-steps-preview{display:flex;flex-direction:column;font-size:.95rem;gap:.5rem;margin:0 0 1.5rem}.path-features{color:#4a5568;list-style:none;padding:0}.journey-path-card .btn{border:none;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;margin-top:auto;padding:.85rem 2rem;transition:all .25s ease;width:100%}.btn-journey-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;cursor:pointer}.btn-journey-primary:hover:not(:disabled){box-shadow:0 8px 20px #667eea66;transform:translateY(-1px)}.btn-journey-primary:disabled{cursor:not-allowed;opacity:.6}.journey-path-card.guided .btn-journey-primary{background:#fff;color:#667eea}.journey-path-card.guided .btn-journey-primary:hover{background:#f7fafc}.btn-journey-secondary{background:#fff;border:2px solid #667eea;color:#667eea;cursor:pointer}.btn-journey-secondary:hover{background:#eef1fd;transform:translateY(-1px)}.journey-trust{color:#718096;display:flex;flex-wrap:wrap;font-size:.9rem;gap:1.25rem;justify-content:center}.journey-banner{align-items:center;background:#fffffff2;border-radius:12px;box-shadow:0 4px 15px #00000014;display:flex;gap:1rem;margin:0 auto 1.5rem;max-width:1100px;padding:.85rem 1.25rem}.journey-banner-text{color:#2d3748;flex:1 1;font-size:.95rem;text-align:start}.journey-banner-cta{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.55rem 1.2rem;transition:all .25s ease;white-space:nowrap}.journey-banner-cta:hover{box-shadow:0 6px 15px #667eea59;transform:translateY(-1px)}.journey-banner-close{background:none;border:none;color:#a0aec0;cursor:pointer;font-size:1.4rem;line-height:1;padding:.25rem}.journey-banner-close:hover{color:#4a5568}.journey-wizard{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;padding:2.5rem 3rem}.wizard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.wizard-header h2{color:#2d3748;font-size:1.75rem;font-weight:700;margin:0}.wizard-exit{background:none;border:none;color:#a0aec0;cursor:pointer;font-size:.9rem;text-decoration:underline}.wizard-exit:hover{color:#4a5568}.wizard-stepper{gap:.25rem;justify-content:center;margin-bottom:2.5rem}.stepper-item,.wizard-stepper{align-items:center;display:flex}.stepper-item{background:none;border:none;cursor:pointer;flex-direction:column;gap:.5rem;min-width:90px;padding:.25rem .5rem}.stepper-circle{align-items:center;background:#edf2f7;border:2px solid #e2e8f0;border-radius:50%;color:#718096;display:flex;font-size:1rem;font-weight:700;height:38px;justify-content:center;transition:all .25s ease;width:38px}.stepper-item.active .stepper-circle{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 4px 12px #667eea66;color:#fff}.stepper-item.done .stepper-circle{background:#48bb78;border-color:#0000;color:#fff}.stepper-label{color:#718096;font-size:.8rem;font-weight:500;text-align:center}.stepper-item.active .stepper-label{color:#4c51bf;font-weight:700}.stepper-line{background:#e2e8f0;border-radius:2px;flex:1 1;height:3px;margin-bottom:1.6rem;max-width:70px}.stepper-line.done{background:#48bb78}.wizard-step{margin:0 auto;max-width:720px;text-align:start}.wizard-step h3{color:#2d3748;font-size:1.5rem;font-weight:700;margin-bottom:1rem}.step-description{color:#4a5568;font-size:1.05rem;line-height:1.65;margin-bottom:1.5rem}.info-box{background:#ebf4ff;border-inline-start:4px solid #667eea;border-radius:10px;color:#2d3748;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.info-box strong{display:block;margin-bottom:.5rem}.info-box p{color:#4a5568;line-height:1.6;margin:0 0 .5rem}.info-box ul{color:#4a5568;line-height:1.7;margin:.5rem 0 0;padding-inline-start:1.4rem}.journey-two-parts{margin:0 auto 2rem;max-width:640px;text-align:start}.activate-connect-form{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.activate-connect-form label{color:#2d3748;font-size:.95rem;font-weight:600}.activate-connect-form input[type=password]{border:1px solid #cbd5e0;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:.75rem 1rem;width:100%}.activate-connect-form .wizard-actions{margin-top:.5rem}.activate-password-reveal .activate-password-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}.activate-password-value{background:#fff;border:1px solid #cbd5e0;border-radius:8px;display:block;flex:1 1 220px;font-size:.95rem;padding:.75rem 1rem;word-break:break-all}.builder-amount-input{align-items:center;display:flex;gap:.5rem}.builder-amount-input input{flex:1 1}.builder-amount-currency{color:#4a5568;font-size:.9rem;font-weight:600;min-width:2.5rem}.builder-amount-currency-select{background:#fff;border:1px solid #cbd5e0;border-radius:8px;color:#2d3748;flex:0 0 auto;font-size:.85rem;font-weight:600;max-width:7rem;min-width:5.5rem;padding:.45rem .4rem}.success-box{background:#f0fff4;border:1px solid #9ae6b4;border-radius:10px;color:#276749;line-height:1.6;margin-bottom:1.5rem;padding:1rem 1.5rem}.error-box{background:#fff5f5;border:1px solid #feb2b2;border-radius:10px;color:#c53030;margin:1rem 0;padding:.85rem 1.25rem}.error-box p{margin:0}.hosting-intro{color:#4a5568;font-weight:600;margin-bottom:.75rem}.hosting-choice-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:1.25rem}.hosting-choice-card{align-items:flex-start;background:#f7fafc;border:2px solid #e2e8f0;border-radius:14px;color:inherit;cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:.35rem;padding:1.25rem;position:relative;text-align:start;transition:all .2s ease}.hosting-choice-card:hover{background:#eef1fd;border-color:#a3bffa}.hosting-choice-card.selected{background:#eef1fd;border-color:#667eea;box-shadow:0 0 0 1px #667eea}.hosting-choice-badge{background:#667eea;border-radius:999px;color:#fff;font-size:.72rem;font-weight:700;inset-inline-end:.75rem;letter-spacing:.03em;padding:.2rem .55rem;position:absolute;text-transform:uppercase;top:.75rem}.hosting-choice-icon{font-size:1.75rem;line-height:1}.hosting-choice-card h4{color:#2d3748;font-size:1.05rem;margin:0}.hosting-choice-card p{color:#718096;font-size:.92rem;line-height:1.5;margin:0}.hosting-choice-expanded{border-top:1px solid #e2e8f0;margin-top:.5rem;padding-top:.5rem}.hosted-server-panel.embedded{background:#0000;border:none;margin-top:.5rem;padding:0}.managed-server-reset{background:#f7fafc;border:1px solid #e2e8f0;border-radius:10px;margin:.75rem 0 1rem;padding:.75rem 1rem}.managed-server-reset .step-note{margin-bottom:.75rem;margin-top:0}.hosting-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.hosting-option{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;color:#2d3748;display:flex;font-size:.98rem;gap:.85rem;padding:1rem 1.25rem;text-decoration:none;transition:all .2s ease}.hosting-option:hover{background:#eef1fd;border-color:#667eea;transform:translateY(-1px)}.hosting-icon{flex-shrink:0;font-size:1.5rem}.step-note{color:#718096;font-size:.92rem;line-height:1.6;margin:.75rem 0}.step-note a{color:#667eea}.benefit-list{color:#4a5568;display:flex;flex-direction:column;font-size:1rem;gap:.65rem;list-style:none;margin:0 0 1.5rem;padding:0}.wizard-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.wizard-actions .btn{border-radius:10px;font-size:1rem;font-weight:600;padding:.8rem 1.75rem}.link-button{background:none;border:none;color:#667eea;cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.link-button:hover{color:#5a67d8}.wizard-footer-note{color:#a0aec0;font-size:.85rem;margin:2rem 0 0;text-align:center}.category-builder-layout{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:minmax(0,1fr) minmax(220px,280px);margin:1.25rem 0 1.75rem}.budget-summary-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 14px #2d37480f;padding:1rem 1.1rem 1.15rem;position:sticky;top:1rem}.budget-summary-panel h4{color:#2d3748;font-size:1rem;margin:0 0 .35rem}.budget-summary-hint{color:#718096;font-size:.8rem;line-height:1.4;margin:0 0 .85rem}.budget-summary-stats{margin:0}.budget-summary-row{align-items:baseline;border-bottom:1px solid #edf2f7;display:flex;font-size:.9rem;gap:.75rem;justify-content:space-between;padding:.45rem 0}.budget-summary-row dt{color:#718096;font-weight:500;margin:0}.budget-summary-row dd{color:#2d3748;font-weight:600;margin:0;text-align:right}.budget-summary-row-balance{border-bottom:none;padding-top:.65rem}.budget-summary-balance{color:#2f855a}.budget-summary-balance.over{color:#c53030}.budget-summary-loading{color:#a0aec0;font-size:.78rem;margin:.5rem 0 0}.budget-summary-alert{background:#fffaf0;border:1px solid #fbd38d;border-radius:8px;color:#744210;font-size:.82rem;line-height:1.45;margin-top:.85rem;padding:.75rem .85rem}.budget-summary-alert-title{background:none;border:none;color:#c05621;cursor:pointer;display:block;font:inherit;font-weight:600;line-height:1.35;margin:0 0 .35rem;padding:0;text-align:left;width:100%}.budget-summary-alert-title:hover{color:#9c4221;text-decoration:underline}.budget-summary-alert p{margin:0 0 .45rem}.budget-summary-add-income{margin-top:.35rem;width:100%}.builder-section-income{background:#f7faff;border-color:#c3dafe;scroll-margin-top:1rem}.category-builder{display:flex;flex-direction:column;gap:1.5rem;margin:1.25rem 0 1.75rem}.builder-section{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.1rem 1.25rem 1.25rem}.builder-section h4{color:#2d3748;font-size:1.05rem;margin:0 0 .35rem}.builder-help{color:#718096;font-size:.9rem;line-height:1.45;margin:0 0 .9rem}.builder-card-header,.builder-row{align-items:center;display:flex;gap:.6rem;margin-bottom:.65rem}.builder-text-input{background:#fff;border:1px solid #cbd5e0;border-radius:8px;color:#2d3748;flex:1 1;font-size:.95rem;padding:.55rem .75rem;width:100%}.builder-field input:focus,.builder-field select:focus,.builder-text-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea26;outline:none}.builder-add{background:none;border:1px dashed #a0aec0;border-radius:8px;color:#4a5568;cursor:pointer;font-size:.9rem;margin-top:.35rem;padding:.5rem .85rem}.builder-add:hover{border-color:#667eea;color:#5a67d8}.builder-remove{background:#edf2f7;border:none;border-radius:50%;color:#718096;cursor:pointer;flex-shrink:0;font-size:1.1rem;height:28px;line-height:1;width:28px}.builder-remove:hover{background:#fed7d7;color:#c53030}.builder-choice-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.85rem}.builder-choice{align-items:center;background:#fff;border:1px solid #cbd5e0;border-radius:8px;color:#2d3748;cursor:pointer;display:inline-flex;font-size:.9rem;gap:.4rem;padding:.45rem .75rem}.builder-choice.selected{background:#ebf4ff;border-color:#667eea;color:#434190}.builder-choice input{accent-color:#667eea}.builder-check{align-items:center;color:#2d3748;cursor:pointer;display:flex;font-size:.95rem;gap:.55rem;margin:.45rem 0}.builder-check input{accent-color:#667eea;height:16px;width:16px}.builder-recurring{display:flex;flex-direction:column;gap:.65rem;margin:.55rem 0 .85rem}.builder-field-amount{width:100%}.builder-recurring-meta{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.builder-field{color:#718096;display:flex;flex-direction:column;font-size:.8rem;gap:.3rem}.builder-field input,.builder-field select{background:#fff;border:1px solid #cbd5e0;border-radius:8px;color:#2d3748;font-size:.9rem;padding:.45rem .6rem}.builder-utility{border-top:1px solid #edf2f7;margin-top:.35rem;padding-top:.55rem}.builder-utility.disabled{opacity:.65}.builder-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:.75rem;padding:.85rem 1rem}.builder-sublabel{color:#4a5568;font-size:.85rem;font-weight:600;margin:.65rem 0 .25rem}.chip-label{align-items:flex-start;display:inline-flex;flex-direction:column;gap:.1rem;line-height:1.2}.chip-template{color:#5a67d8;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accounts-setup-box{background:#f8fafc;background:var(--surface-muted,#f8fafc);border:1px solid #e2e8f0;border:1px solid var(--border-color,#e2e8f0);border-radius:8px;margin-top:1.5rem;padding:1.25rem}.accounts-setup-box h4{margin:0 0 .5rem}.builder-privacy{background:#ebf8ff;border-color:#90cdf4}.builder-section.builder-privacy h4{color:#2c5282}.category-groups{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.category-group-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem 1.25rem;transition:opacity .2s ease}.category-group-card.disabled{opacity:.55}.category-group-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.group-toggle{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:.65rem}.group-toggle input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:18px;width:18px}.group-name{color:#2d3748;font-size:1.05rem;font-weight:700}.group-name-input{border:1px solid #cbd5e0;border-radius:8px;color:#2d3748;flex:1 1;font-size:1rem;font-weight:600;padding:.45rem .75rem}.remove-group-button{background:none;border:none;cursor:pointer;font-size:1.1rem;opacity:.7;padding:.25rem}.remove-group-button:hover{opacity:1}.category-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.85rem 0}.category-chip{align-items:center;background:#fff;border:1px solid #cbd5e0;border-radius:999px;color:#2d3748;display:inline-flex;font-size:.9rem;gap:.4rem;padding:.35rem .5rem .35rem .9rem}[dir=rtl] .category-chip{padding:.35rem .9rem .35rem .5rem}.chip-remove{align-items:center;background:#edf2f7;border:none;border-radius:50%;color:#718096;cursor:pointer;display:flex;font-size:.95rem;height:20px;justify-content:center;line-height:1;width:20px}.chip-remove:hover{background:#fed7d7;color:#c53030}.add-category-row{display:flex;gap:.5rem}.add-category-row input{border:1px solid #cbd5e0;border-radius:8px;flex:1 1;font-size:.92rem;padding:.5rem .85rem}.add-category-row input:focus{border-color:#667eea;outline:none}.add-category-button{background:#edf2f7;border:1px solid #cbd5e0;border-radius:8px;color:#4a5568;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.add-category-button:hover{background:#e2e8f0}.add-group-button{background:none;border:2px dashed #cbd5e0;border-radius:12px;color:#718096;cursor:pointer;font-size:.95rem;font-weight:600;margin-bottom:.5rem;padding:.75rem 1.25rem;transition:all .2s ease;width:100%}.add-group-button:hover{background:#eef1fd;border-color:#667eea;color:#667eea}.wizard-done{text-align:center}.done-icon{font-size:3.5rem;margin-bottom:.75rem}.wizard-done .benefit-list{align-items:center}.wizard-done .wizard-actions{justify-content:center}.onboarding-statements-step{display:flex;flex-direction:column;gap:1.25rem}.onboarding-debt-card .debt-derived-title{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.debt-payment-section{margin-top:.75rem}.onboarding-debts-step .builder-section+.builder-section{margin-top:1.5rem}.onboarding-goals-step{display:flex;flex-direction:column;gap:1.25rem}.goals-snapshot-grid{grid-gap:.75rem 1rem;display:grid;gap:.75rem 1rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:.75rem 0 0}.goals-snapshot-grid>div{background:#f9fafb;background:var(--surface-muted,#f9fafb);border-radius:8px;padding:.65rem .75rem}.goals-snapshot-grid dt{color:#6b7280;color:var(--text-muted,#6b7280);font-size:.78rem;margin:0}.goals-snapshot-grid dd{font-size:.95rem;font-weight:600;margin:.25rem 0 0}.goals-snapshot-grid dd.positive{color:#2d8a5e;color:var(--accent-color,#2d8a5e)}.goals-snapshot-grid dd.negative{color:#b45309}.goals-snapshot-total{border:1px solid #2d8a5e33;grid-column:1/-1}.goals-debt-first-notice{border-left:3px solid #b45309}.goals-ready-notice{border-left:3px solid #2d8a5e;border-left:3px solid var(--accent-color,#2d8a5e)}.onboarding-goal-card .goal-default-title{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.goal-contribution-section{margin-top:.75rem}.statements-minimum{border-left:3px solid #2d8a5e;border-left:3px solid var(--accent-color,#2d8a5e)}.statements-optional{background:#f9fafb;background:var(--surface-muted,#f9fafb)}.statement-field-label{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.statement-field-badge{border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.03em;padding:.15rem .45rem;text-transform:uppercase}.statement-field-badge.required{background:#2d8a5e1f;color:#2d8a5e;color:var(--accent-color,#2d8a5e)}.statement-field-badge.optional{background:#f3f4f6;background:var(--surface-muted,#f3f4f6);color:#6b7280;color:var(--text-muted,#6b7280)}.statements-importance{border-left:3px solid #2d8a5e;border-left:3px solid var(--accent-color,#2d8a5e)}.onboarding-statement-card{margin-bottom:0}.statement-account-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.statement-account-header h4{font-size:1.05rem;margin:0}.statement-account-type{background:#f3f4f6;background:var(--surface-muted,#f3f4f6);border-radius:999px;color:#6b7280;color:var(--text-muted,#6b7280);font-size:.85rem;padding:.2rem .6rem}.statement-upload-zone{border:2px dashed #d1d5db;border:2px dashed var(--border-color,#d1d5db);border-radius:10px;cursor:pointer;margin-bottom:1rem;padding:1.25rem;text-align:center;transition:border-color .15s,background .15s}.statement-upload-zone:focus-visible,.statement-upload-zone:hover{background:#2d8a5e0a;border-color:#2d8a5e;border-color:var(--accent-color,#2d8a5e);outline:none}.statement-upload-zone.has-file{background:#2d8a5e0f;border-color:#2d8a5e;border-color:var(--accent-color,#2d8a5e);border-style:solid}.statement-file-input{display:none}.statement-file-selected,.statement-upload-prompt{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.statement-balance-field .builder-amount-row{margin-top:.5rem}.onboarding-account-card .builder-field select{width:100%}.onboarding-account-card-title{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-weight:600}.onboarding-bank-field .bank-dropdown-container{width:100%}.onboarding-bank-error,.onboarding-bank-loading{align-items:center;color:#666;color:var(--text-secondary,#666);display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 0}.onboarding-bank-error p{color:#c0392b;color:var(--error-color,#c0392b);margin:0}@media (max-width:768px){.journey-hero{margin:0 1rem;padding:2rem 1.5rem}.onboarding-journey{margin-left:0;margin-right:0}.journey-hero h2{font-size:1.9rem}.journey-paths{gap:1.5rem;grid-template-columns:1fr}.journey-wizard{margin:0 1rem;padding:1.75rem 1.25rem}.wizard-stepper{flex-wrap:wrap;gap:.5rem}.stepper-line{display:none}.stepper-item{min-width:70px}.stepper-label{font-size:.72rem}.wizard-actions{flex-direction:column-reverse}.wizard-actions .btn{width:100%}.journey-banner{flex-wrap:wrap;margin:0 1rem 1.5rem}.category-builder-layout{grid-template-columns:1fr}.budget-summary-panel{order:-1;position:static}}.budget-route-main{margin:0 auto;max-width:1100px;padding:1.5rem;width:100%}.budget-route-header-link{border:1px solid #ffffff59;border-radius:8px;color:#fffffff2;font-weight:500;padding:.35rem .75rem;text-decoration:none;transition:background .15s ease}.budget-route-header-link:hover{background:#ffffff1f}.budget-route-header-link.active{background:#fff3;font-weight:700}.budget-route-nav{align-items:center;display:flex;gap:.75rem}.budget-view{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001f;color:#1f2937;overflow:hidden}.budget-toolbar{background:#f9fafb;border-bottom:1px solid #e5e7eb;gap:1rem;padding:1rem 1.25rem}.budget-allocation-banner,.budget-toolbar{align-items:center;display:flex;justify-content:space-between}.budget-allocation-banner{background:#e8f5e9;border:1px solid #c8e6c9;border-radius:8px;flex-wrap:wrap;gap:.75rem;margin:1rem 1.25rem 0;padding:1rem}.budget-allocation-banner p{color:#2e7d32;margin:0}.budget-allocation-btn{background:#2e7d32;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.6rem 1rem}.budget-month-nav{align-items:center;display:flex;gap:.75rem}.budget-month-title{font-size:1.25rem;font-weight:600;margin:0;min-width:10rem;text-align:center}.budget-nav-btn,.budget-refresh-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;transition:background .15s ease,border-color .15s ease}.budget-nav-btn{font-size:1.25rem;height:2rem;line-height:1;width:2rem}.budget-refresh-btn{font-size:.875rem;font-weight:500;padding:.45rem .9rem}.budget-nav-btn:disabled,.budget-refresh-btn:disabled{cursor:not-allowed;opacity:.4}.budget-nav-btn:hover:not(:disabled),.budget-refresh-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.budget-refresh-btn:disabled{cursor:not-allowed;opacity:.6}.budget-summary{grid-gap:.75rem;background:#fff;border-bottom:1px solid #e5e7eb;display:grid;gap:.75rem;grid-template-columns:repeat(5,minmax(0,1fr));padding:1rem 1.25rem}.budget-summary-item{display:flex;flex-direction:column;gap:.25rem}.budget-summary-item.highlight .budget-summary-value{color:#2563eb;font-weight:700}.budget-summary-label{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.budget-summary-value{font-feature-settings:"tnum";font-size:1rem;font-variant-numeric:tabular-nums;font-weight:600}.budget-table{padding:0 0 .5rem}.budget-row{grid-gap:.5rem;align-items:center;border-bottom:1px solid #f3f4f6;display:grid;gap:.5rem;grid-template-columns:minmax(10rem,2fr) repeat(3,minmax(5rem,1fr));padding:.55rem 1.25rem}.budget-table-header{background:#f9fafb;color:#6b7280;font-size:.75rem;font-weight:700;letter-spacing:.04em;position:sticky;text-transform:uppercase;top:0;z-index:1}.budget-group-header{background:#f3f4f6;font-weight:700}.budget-group-header.income{background:#ecfdf5}.budget-category-row{padding-left:2rem}.budget-category-row.muted{color:#6b7280}.budget-cell-name{font-size:.95rem}.budget-cell-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.budget-amount{font-size:.9rem}.budget-amount.negative{color:#dc2626;font-weight:600}.budget-amount-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;cursor:pointer;display:inline-flex;justify-content:flex-end;margin:-.15rem -.35rem;padding:.15rem .35rem;text-align:right;transition:background .15s ease,border-color .15s ease;width:100%}.budget-amount-btn:hover:not(:disabled){background:#eff6ff;border-color:#bfdbfe}.budget-amount-btn:focus-visible{outline:2px solid #2563eb;outline-offset:1px}.budget-amount-btn.saving{cursor:wait;opacity:.6}.budget-amount-btn.has-error,.budget-amount-input.has-error{background:#fef2f2;border-color:#fca5a5}.budget-amount-input{font-feature-settings:"tnum";background:#fff;border:1px solid #2563eb;border-radius:6px;font-size:.9rem;font-variant-numeric:tabular-nums;max-width:7rem;padding:.15rem .35rem;text-align:right;width:100%}.budget-amount-input:focus{outline:2px solid #2563eb;outline-offset:1px}.budget-cell-label.budget-mobile-label{display:none}.budget-empty-inline,.budget-empty-state{color:#6b7280;padding:2rem 1.25rem;text-align:center}.budget-empty-state{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001f}.budget-empty-state p{line-height:1.5;margin:0 0 1rem}.budget-empty-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.budget-action-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.6rem 1rem}.budget-action-btn.secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.budget-loading{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001f;color:#6b7280;padding:3rem 1.25rem;text-align:center}.budget-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;margin-bottom:1rem;padding:.75rem 1rem}@media (max-width:900px){.budget-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-table-header{display:none}.budget-row{gap:.25rem 1rem;grid-template-columns:1fr auto}.budget-category-row{padding-left:1.25rem}.budget-category-row .budget-cell-amount:not(:last-of-type),.budget-group-header .budget-cell-amount{display:none}.budget-cell-label.budget-mobile-label{color:#6b7280;display:block;font-size:.75rem;grid-column:1}.budget-category-row .budget-cell-amount:last-of-type,.budget-group-header .budget-cell-amount:last-of-type{align-self:center;grid-column:2;grid-row:1/span 2}}.pricing-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;padding:2rem}.pricing-header{margin-bottom:3rem;text-align:center}.pricing-header h1{color:#1a202c;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.pricing-header p{color:#4a5568;font-size:1.125rem;margin:0 auto;max-width:600px}.pricing-plans{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:4rem}.pricing-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px #0000000d;padding:2rem;position:relative;transition:all .3s ease}.pricing-card:hover{box-shadow:0 12px 24px #0000001a;transform:translateY(-4px)}.pricing-card.popular{border-color:#3182ce;box-shadow:0 8px 16px #3182ce26}.popular-badge{background:#3182ce;border-radius:20px;color:#fff;font-size:.875rem;font-weight:600;left:50%;padding:.5rem 1rem;position:absolute;top:-12px;transform:translateX(-50%)}.plan-header{margin-bottom:2rem;text-align:center}.plan-header h3{color:#1a202c;font-size:1.5rem;font-weight:700}.plan-header h3,.price{margin-bottom:1rem}.price-amount{color:#3182ce;font-size:3rem;font-weight:800}.price-interval{color:#4a5568;font-size:1.125rem}.plan-description{color:#4a5568;font-size:1rem}.plan-features{margin-bottom:2rem}.plan-features h4{color:#1a202c;font-size:1.125rem;font-weight:600;margin-bottom:1rem}.plan-features ul{list-style:none;margin:0;padding:0}.plan-features li{color:#4a5568;font-size:.95rem;padding:.5rem 0}.plan-features .limitations li{color:#e53e3e}.cta-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem 2rem;transition:all .3s ease;width:100%}.cta-button.primary{background:#3182ce;color:#fff}.cta-button.primary:hover{background:#2c5aa0}.cta-button.secondary{background:#f7fafc;border:2px solid #3182ce;color:#3182ce}.cta-button.secondary:hover{background:#edf2f7}.cta-button:disabled{cursor:not-allowed;opacity:.6}.loading{align-items:center;display:flex;gap:.5rem}.loading svg{height:1rem;width:1rem}.feature-comparison{margin-bottom:4rem}.feature-comparison h2{color:#1a202c;font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.comparison-table{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;overflow:hidden}.comparison-header{background:#f7fafc;border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:2fr 1fr 1fr}.comparison-header>div{color:#1a202c;font-weight:600;padding:1rem;text-align:center}.comparison-header .feature-column{text-align:left}.comparison-row{border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:2fr 1fr 1fr}.comparison-row:last-child{border-bottom:none}.comparison-row>div{align-items:center;display:flex;justify-content:center;padding:1rem}.comparison-row .feature-column{color:#1a202c;font-weight:500;justify-content:flex-start}.comparison-row .plan-column{color:#4a5568;font-size:.95rem}.pricing-footer{background:#f7fafc;border-radius:12px;padding:3rem}.faq-section h3{color:#1a202c;font-size:1.75rem;font-weight:700;margin-bottom:2rem;text-align:center}.faq-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.faq-item{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1.5rem}.faq-item h4{color:#1a202c;font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.faq-item p{color:#4a5568;line-height:1.6}.error-message{background:#fed7d7;border-radius:8px;color:#c53030;margin-top:1rem;padding:1rem;text-align:center}@media (max-width:768px){.pricing-page{padding:1rem}.pricing-header h1{font-size:2rem}.comparison-header,.comparison-row,.pricing-plans{grid-template-columns:1fr}.comparison-header .plan-column,.comparison-row .plan-column{display:none}.comparison-header .feature-column,.comparison-row .feature-column{justify-content:center;text-align:center}.faq-grid{grid-template-columns:1fr}.pricing-footer{padding:2rem 1rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pricing-card{animation:fadeIn .6s ease-out}.pricing-card:nth-child(2){animation-delay:.1s}.pricing-route{background:linear-gradient(135deg,#f7fafc,#edf2f7)}.pricing-route-main{padding:2rem 0 4rem}
/*# sourceMappingURL=main.afb1abde.css.map*/