.logout-button{padding:.6rem 1.2rem;border:none;border-radius:4px;background-color:var(--neon-pink);color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;transition:background-color .2s;margin-top:2rem}.logout-button:hover{background-color:var(--raspberry-plum)}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--true-azure)}.auth-form{background:var(--background-form);padding:2.5rem;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:400px;text-align:center}.auth-form h2{margin-bottom:1.5rem;color:var(--indigo-bloom)}.auth-form input{width:100%;padding:.8rem;margin-bottom:1rem;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;color:var(--text-primary)}.auth-form button{width:100%;padding:.8rem;border:none;border-radius:4px;background-color:var(--electric-sapphire);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .2s}.auth-form button:hover{background-color:var(--bright-indigo)}.toggle-link{margin-top:1.5rem;color:var(--electric-sapphire);cursor:pointer;font-size:.9rem;background:none;border:none;font-family:inherit;width:100%;padding:.5rem;text-decoration:none}.toggle-link:hover{text-decoration:underline}.toggle-link:focus{outline:2px solid var(--electric-sapphire);border-radius:4px;background-color:#4361ee1a}.error-message{color:var(--neon-pink);background-color:#f725851a;border:1px solid var(--neon-pink);padding:.75rem;border-radius:4px;margin-bottom:1rem;font-size:.9rem}.logo-container{display:flex;justify-content:center;margin-bottom:1rem}.auth-logo{height:60px;width:auto}.dashboard-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;border-bottom:2px solid var(--electric-sapphire);padding-bottom:1rem;color:#fff}.header-title{flex-grow:1}.header-title h1{color:#fff;margin:0}.header-title p{margin:0;font-size:1rem;color:#eee}.header-actions{display:flex;gap:1rem;align-items:center}.profile-link-btn{text-decoration:none;color:#fff;font-weight:700;background:#fff3;padding:.5rem 1rem;border-radius:4px}.profile-link-btn:hover{background:#ffffff4d}.relative-btn{position:relative;display:inline-flex;align-items:center}.notification-badge{position:absolute;top:-8px;right:-8px;background-color:#ff4757;color:#fff;font-size:.75rem;font-weight:700;min-width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--electric-sapphire);box-shadow:0 2px 5px #0003;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275)}@keyframes popIn{0%{transform:scale(0)}to{transform:scale(1)}}body.dark-mode .notification-badge{border-color:#1e1e1e}.budget-creator{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 12px #0000001a;margin-bottom:3rem}.budget-creator h2{color:var(--indigo-bloom);margin-top:0;margin-bottom:1.5rem;text-shadow:none}.budget-creator form{display:flex;gap:1rem}.budget-creator input{flex-grow:1;padding:.8rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.budget-creator button{padding:.8rem 1.5rem;border:none;border-radius:4px;background-color:var(--electric-sapphire);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .2s}.budget-creator button:hover{background-color:var(--bright-indigo)}.budget-list-title{color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.7),-1px -1px 2px rgba(0,0,0,.7),1px -1px 2px rgba(0,0,0,.7),-1px 1px 2px rgba(0,0,0,.7);margin-bottom:1.5rem}.budgets-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;list-style:none;padding:0}.logout-button{margin-top:0}.budget-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.5rem;box-shadow:0 4px 6px #0000000d;transition:all .2s ease-in-out;display:block;text-decoration:none}.budget-card h3{margin:0;color:var(--bright-indigo)}.budget-card:hover{box-shadow:0 8px 12px #0000001a;transform:translateY(-3px);background:var(--sky-aqua)}.budget-card:hover h3{color:var(--vivid-royal)}.card-content{display:flex;justify-content:space-between;align-items:center}.delete-budget-btn{background:transparent;border:1px solid #ffcccc;color:#ff4d4d;border-radius:50%;width:30px;height:30px;font-size:1.2rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.delete-budget-btn:hover{background:#ff4d4d;color:#fff;border-color:#ff4d4d}@media(max-width:768px){.dashboard-container{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem;align-items:flex-start}.header-actions{width:100%;justify-content:space-between;flex-wrap:wrap}.budget-creator form{flex-direction:column}.budget-creator input,.budget-creator select,.budget-creator button{width:100%;margin-bottom:.5rem}.budgets-list{grid-template-columns:1fr}}.budget-detail-container{padding:2rem;max-width:1400px;margin:0 auto;color:#fff}.loading-message{color:#fff;font-size:1.5rem;text-align:center;padding-top:5rem}.back-link{display:inline-flex;align-items:center;gap:8px;color:#fff;background-color:#fff3;border:1px solid rgba(255,255,255,.4);padding:10px 20px;border-radius:30px;text-decoration:none;font-weight:700;font-size:.9rem;margin-bottom:2rem;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.back-link:hover{background-color:#fff6;transform:translate(-5px);box-shadow:0 4px 15px #0000001a;text-decoration:none}.budget-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;border-bottom:2px solid var(--sky-aqua);padding-bottom:1rem}.budget-title{color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.7);margin:0;padding:0;border:none}.currency-badge{background:var(--sky-aqua);color:var(--vivid-royal);padding:.2rem .6rem;border-radius:12px;font-weight:700;font-size:.8rem}.columns-container{display:flex;flex-wrap:wrap;gap:2rem}.column{flex:1;min-width:300px;background:#fffffff2;color:var(--text-primary);border-radius:8px;padding:1.5rem;box-shadow:0 4px 12px #0000001a}.column h2{color:var(--indigo-bloom);margin-top:0;border-bottom:2px solid #eee;padding-bottom:.5rem}.inline-form{display:flex;gap:.5rem;margin-bottom:1.5rem;background:#f9f9f9;padding:.5rem;border-radius:4px}.inline-form input{flex:1;padding:.5rem;border:1px solid #ddd;border-radius:4px;min-width:0}.inline-form button{background:var(--electric-sapphire);color:#fff;border:none;width:35px;border-radius:4px;font-size:1.2rem;cursor:pointer}.transaction-form{background:#f9f9f9;padding:1rem;border-radius:4px;margin-bottom:1.5rem;border:1px solid #eee}.form-row{display:flex;gap:.5rem;margin-bottom:.5rem}.form-row input,.form-row select{flex:1;padding:.5rem;border:1px solid #ddd;border-radius:4px}.full-width-select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;margin-bottom:.5rem}.btn-add-tx{width:100%;padding:.6rem;background:var(--indigo-bloom);color:#fff;border:none;border-radius:4px;font-weight:700;cursor:pointer}.btn-add-tx:hover{background:var(--true-azure)}.categories-list,.transactions-list{list-style:none;padding:0;margin:0}.category-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #eee;font-weight:500}.category-item span:last-child{font-weight:700;color:var(--bright-indigo)}.cat-edit-mode{display:flex;gap:5px;width:100%;align-items:center}.edit-input-mini{width:40%;padding:4px;font-size:.9rem;border:1px solid var(--electric-sapphire);border-radius:3px}.save-mini-btn{background:#28a745;color:#fff;border:none;border-radius:3px;padding:4px 8px;cursor:pointer;font-size:.8rem}.cancel-mini-btn{background:#dc3545;color:#fff;border:none;border-radius:3px;padding:4px 8px;cursor:pointer;font-size:.8rem}.cat-display-mode{background:none;border:none;width:100%;display:flex;justify-content:space-between;font-family:inherit;font-size:inherit;color:inherit;cursor:pointer;padding:5px 30px 5px 5px;border-radius:4px;transition:background-color .2s;position:relative}.delete-btn-icon{appearance:none;border:none;cursor:pointer;padding:0;position:absolute;top:5px;right:5px;width:24px;height:24px;background:#fcc;color:#d63031;border-radius:50%;display:none;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;line-height:1;z-index:10}.category-item:hover .delete-btn-icon{display:flex}.delete-btn-icon:hover{background:#d63031;color:#fff}.cat-display-mode:hover{background-color:#f0f8ff}.cat-display-mode:focus{outline:2px solid var(--electric-sapphire);background-color:#f0f8ff}.transaction-item{border-bottom:1px solid #eee;padding:0}.tx-row-button{background:none;border:none;width:100%;padding:.75rem 0;font-family:inherit;font-size:inherit;color:inherit;cursor:pointer;text-align:left;display:grid;grid-template-columns:2fr 1fr 1fr 30px;gap:1rem;align-items:center;transition:background-color .2s}.tx-row-button:hover{background-color:#f0f8ff}.tx-row-button:focus{outline:2px solid var(--electric-sapphire);border-radius:4px;background-color:#f0f8ff}.delete-btn-icon-tx{appearance:none;border:none;background:transparent;cursor:pointer;padding:0;color:#ccc;font-weight:700;font-size:1.4rem;width:100%;height:100%;border-radius:4px;visibility:hidden;display:flex;align-items:center;justify-content:center}.tx-row-button:hover .delete-btn-icon-tx{visibility:visible}.delete-btn-icon-tx:hover{color:#d63031;background:#fcc}.tx-desc{font-weight:500}.tx-date{font-size:.9rem;color:#666;text-align:right}.tx-amount{font-weight:700;text-align:right}.transaction-item.income .tx-amount{color:#28a745}.transaction-item.expense .tx-amount{color:#dc3545}.action-buttons{display:flex;gap:1rem}.secondary-btn{background:transparent;border:1px solid rgba(255,255,255,.6);color:#fff;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.9rem;transition:all .2s ease}.secondary-btn:hover{background:#ffffff1a;border-color:#fff}.secondary-btn:focus{outline:2px solid var(--sky-aqua);outline-offset:2px}.history-panel{background:#0009;border-radius:8px;padding:1rem;margin-bottom:2rem;color:#ddd;max-height:200px;overflow-y:auto}.history-panel ul{list-style:none;padding:0}.history-panel li{border-bottom:1px solid rgba(255,255,255,.1);padding:.5rem 0;font-size:.9rem}.history-details{color:var(--sky-aqua);font-style:italic}.transaction-form.editing-mode{border:2px solid var(--neon-pink);background:#fff0f6}.editing-badge{color:var(--neon-pink);font-weight:700;margin-bottom:.5rem;font-size:.9rem;text-align:center}.clickable-tx{cursor:pointer;transition:background-color .2s}.clickable-tx:hover{background-color:#f0f8ff}.cancel-edit-link{background:none;border:none;color:inherit;text-decoration:underline;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:700;padding:0;margin-left:5px}.clickable-tx:focus{outline:2px solid var(--electric-sapphire);background-color:#f0f8ff}.members-section{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:1rem;margin-bottom:2rem}.members-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.members-header h3{margin:0;color:#fff}.member-count{background:var(--electric-sapphire);padding:2px 8px;border-radius:10px;font-size:.8rem;font-weight:700}.members-list{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.member-chip{display:flex;align-items:center;gap:.5rem;background:#ffffffe6;padding:5px 10px;border-radius:20px;color:#333;font-weight:500}.member-avatar-small{width:24px;height:24px;background:var(--indigo-bloom);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;overflow:hidden}.member-avatar-small img{width:100%;height:100%;object-fit:cover}.invite-form{display:flex;gap:.5rem;max-width:400px}.invite-form input{flex:1;padding:.5rem;border-radius:4px;border:none}.invite-form button{background:var(--neon-pink);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:700}.invite-status{margin-top:.5rem;font-size:.9rem;color:#eee;font-style:italic}@media(max-width:768px){.budget-detail-container{padding:1rem}.budget-header{flex-direction:column;align-items:flex-start;gap:.5rem}.action-buttons{width:100%;justify-content:space-between;margin-top:1rem}.secondary-btn{flex:1;text-align:center}.summary-cards,.columns-container{flex-direction:column}.column{width:100%;min-width:0}.transaction-form .form-row,.inline-form{flex-direction:column}.inline-form button{width:100%;padding:.8rem}}.charts-container{margin-bottom:2rem;display:flex;flex-direction:column;gap:1.5rem}.summary-cards{display:flex;gap:1rem;justify-content:space-between;flex-wrap:wrap}.card{flex:1;min-width:200px;background:#fffffff2;border-radius:8px;padding:1rem;text-align:center;box-shadow:0 4px 6px #0000001a}.card h4{margin:0 0 .5rem;color:#666;font-size:.9rem;text-transform:uppercase}.card p{margin:0;font-size:1.5rem;font-weight:700}.card.income p{color:#28a745}.card.expense p{color:#dc3545}.card.balance.positive p{color:var(--electric-sapphire)}.card.balance.negative p{color:#dc3545}.chart-wrapper{background:#fffffff2;border-radius:8px;padding:1.5rem;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;align-items:center}.chart-wrapper h3{color:var(--indigo-bloom);margin-top:0;border-bottom:2px solid #eee;width:100%;text-align:center;padding-bottom:1rem}.no-data-text{color:#888;font-style:italic;margin-top:2rem}.profile-container{padding:2rem;max-width:500px;margin:0 auto;color:#fff}.profile-card{background:#fffffff2;border-radius:12px;padding:2rem;color:#333;box-shadow:0 10px 25px #0003}body.dark-mode{background:#121212!important;color:#e0e0e0}body.dark-mode .profile-card,body.dark-mode .budget-creator,body.dark-mode .column,body.dark-mode .budget-card{background:#1e1e1e;color:#e0e0e0;border-color:#333}body.dark-mode input,body.dark-mode select{background:#2c2c2c;color:#fff;border-color:#444}.profile-header{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem;text-align:center}.profile-identity h2{margin:10px 0 5px;color:var(--indigo-bloom);font-size:1.8rem}.identity-item{margin:2px 0;color:#666;font-size:.95rem;font-weight:500}body.dark-mode .profile-identity h2{color:var(--electric-sapphire)}body.dark-mode .identity-item{color:#bbb}.avatar-circle{width:100px;height:100px;background:var(--electric-sapphire);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff;font-weight:700;overflow:hidden;border:4px solid white;box-shadow:0 4px 10px #0000001a;margin-bottom:1rem}.avatar-circle img{width:100%;height:100%;object-fit:cover}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600}.form-group input{width:100%;padding:.8rem;border:1px solid #ddd;border-radius:6px}.disabled-input{background:#f0f0f0;color:#888}.save-btn{width:100%;padding:1rem;background:var(--electric-sapphire);color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:700;cursor:pointer;margin-top:1rem}.divider{margin:2rem 0;border:0;border-top:1px solid #eee}.custom-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:1.1rem;font-weight:500}.switch{position:relative;display:inline-block;width:50px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.4s}.slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:var(--electric-sapphire)}input:checked+.slider:before{transform:translate(26px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.color-picker{border:none;width:50px;height:50px;cursor:pointer;background:none}.upload-btn{margin-top:.5rem;color:var(--electric-sapphire);font-weight:700;cursor:pointer;font-size:.9rem;text-decoration:underline}.upload-btn:hover{color:var(--indigo-bloom)}.back-link{display:inline-flex;align-items:center;gap:8px;color:#fff;background-color:#fff3;border:1px solid rgba(255,255,255,.4);padding:10px 20px;border-radius:30px;text-decoration:none;font-weight:700;font-size:.95rem;margin-bottom:2rem;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.back-link:hover{background-color:#fff6;transform:translate(-5px);box-shadow:0 4px 15px #0000001a}.invitations-container{padding:2rem;max-width:800px;margin:0 auto;color:#fff}.loading-msg,.no-invit{text-align:center;font-size:1.2rem;margin-top:2rem}.invit-list{display:flex;flex-direction:column;gap:1rem}.invit-card{background:#fff;color:#333;padding:1.5rem;border-radius:8px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 10px #0000001a}.budget-name{color:var(--electric-sapphire);font-weight:700;font-size:1.1rem}.invit-actions{display:flex;gap:.5rem}.accept-btn{background:#28a745;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:700}.reject-btn{background:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}*,*:before,*:after{box-sizing:border-box}:root{--neon-pink: #f72585ff;--raspberry-plum: #b5179eff;--indigo-bloom: #7209b7ff;--ultrasonic-blue: #560badff;--true-azure: #480ca8ff;--vivid-royal: #3a0ca3ff;--bright-indigo: #3f37c9ff;--electric-sapphire: #4361eeff;--blue-energy: #4895efff;--sky-aqua: #4cc9f0ff;--background-page: #f0f2f5;--background-form: #ffffff;--text-primary: #333}:root body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(to bottom,var(--true-azure),var(--electric-sapphire));background-attachment:fixed;min-height:100vh;color:var(--text-primary)}
