@import url(https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#e8e8e8;color:#4a4a4a;font-family:Poppins,sans-serif;margin:0;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.delete-button{--main-focus:#ff6b6b;--font-color:#f2f2f2;--bg-color-sub:#c44545;--bg-color:#a83a3a;--main-color:#323232;background-color:var(--bg-color);border:2px solid var(--main-color);border-radius:5px;box-shadow:4px 4px var(--main-color);cursor:pointer;height:40px;margin-left:10px;overflow:hidden;padding:0;position:relative;width:40px}.delete-button,.delete-button .delete-button__icon{align-items:center;display:flex;justify-content:center}.delete-button .delete-button__icon{background-color:initial;height:100%;position:static;transform:none;width:100%}.delete-button .svg{stroke:var(--main-color);fill:none;height:24px;width:24px}.delete-button:hover{background:var(--bg-color-sub)}.delete-button:hover .svg{stroke:var(--font-color)}.delete-button:active{box-shadow:0 0 var(--main-color);transform:translate(3px,3px)}.goal-info{position:relative;z-index:2}.button{background-color:#ffffe3;border:6px solid #f7a985;border-radius:50em;box-shadow:0 8px #f32b11;color:#ffaf02;cursor:pointer;font-family:inherit;font-size:large;font-weight:700;padding:.8em 1.8em}.button:active{border:6px solid #ffb764;box-shadow:0 0;position:relative;top:8px}.App{background:#e8e8e8;border-radius:20px;box-shadow:20px 20px 60px #c5c5c5,-20px -20px 60px #fff;margin:20px auto;max-width:800px;padding:20px;width:95%}@media (max-width:768px){.App{border-radius:15px;box-shadow:10px 10px 30px #c5c5c5,-10px -10px 30px #fff;margin:10px auto;padding:15px;width:90%}}.budget-card,.budget-summary,.nav-container{background:#add8e6;border:2px solid #89b0b6;border-radius:15px;box-shadow:4px 4px #89b0b6;margin-top:20px;padding:20px}@media (max-width:768px){.budget-card,.budget-summary,.nav-container{border-radius:12px;margin-top:15px;padding:15px}}.summary-title{color:#000;display:inline-block;font-size:25px!important;font-weight:900!important;margin-bottom:15px;position:relative}.summary-title:after{background:repeating-linear-gradient(90deg,#89b0b6 0,#89b0b6 5px,#0000 0,#0000 10px);border-radius:2px;bottom:-5px;content:"";height:3px;left:0;position:absolute;width:100%}@media (max-width:768px){.summary-title{font-size:20px!important;margin-bottom:10px}}.budget-summary p,.goal-summary p{color:#666;font-size:17px;font-weight:600;margin-bottom:10px}@media (max-width:768px){.budget-summary p,.goal-summary p{font-size:15px;margin-bottom:8px}}.goal-summary h4{color:#000;font-size:20px;font-weight:700;margin-bottom:5px}@media (max-width:768px){.goal-summary h4{font-size:18px;margin-bottom:4px}}.goals-summary-container{margin-top:20px}@media (max-width:768px){.goals-summary-container{margin-top:15px}}.progress-container{background:#e0f2f1;border:1px solid #c1d3d2;border-radius:30px;box-sizing:border-box;height:25px}.progress-bar{background:linear-gradient(90deg,#fffacd,beige);border-radius:30px;box-shadow:0 0 15px #fffacd,0 0 20px beige;left:0;position:absolute;top:0;transition:width .4s ease-in-out}.progress-bar:before{animation:ripple 3s infinite;background:radial-gradient(circle,#ffffff73,#0000);content:"";height:200%;left:50%;opacity:.5;position:absolute;top:50%;transform:translate(-50%,-50%);width:200%}.progress-text{color:#545454;font-size:10px;font-weight:700;text-shadow:0 1px 2px #ffffffb3}.particles{height:100%;overflow:hidden;position:absolute;width:100%}.particle{animation:float 5s ease-in-out infinite;background:#fffacd;border-radius:50%;height:4px;opacity:.8;position:absolute;width:4px}@keyframes ripple{0%{opacity:.7;transform:translate(-50%,-50%) scale(.5)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}@keyframes float{0%{transform:translateY(0) translateX(0)}50%{transform:translateY(-20px) translateX(10px)}to{transform:translateY(0) translateX(0)}}.particle:first-child{animation-delay:0s;left:20%;top:10%}.particle:nth-child(2){animation-delay:1s;left:70%;top:30%}.particle:nth-child(3){animation-delay:2s;left:50%;top:50%}.particle:nth-child(4){animation-delay:1.5s;left:40%;top:80%}.particle:nth-child(5){animation-delay:2.5s;left:60%;top:90%}.budget-form,.history-container{border-radius:20px;margin-top:20px;padding:0}.main-nav{gap:30px;margin-bottom:20px;padding:15px 25px}.main-nav button{--primary-color:#111;--hovered-color:#c84747;align-items:center;background:none;display:flex;font-size:16px;font-weight:400;gap:.5rem;padding:0;text-transform:uppercase}.main-nav button,.main-nav button p{font-family:Press Start\ 2P,cursive;margin:0}.main-nav button p{color:var(--primary-color);position:relative;transition:.3s ease-out}.main-nav button:after{background:var(--hovered-color);bottom:-7px;content:"";height:2px;left:0;position:absolute;transition:.3s ease-out;width:0}.main-nav button:hover p{color:var(--hovered-color)}.main-nav button:hover:after{width:100%}.main-nav button.active p{color:var(--hovered-color)}.main-nav button.active:after{background:var(--hovered-color);bottom:-7px;height:2px;left:0;width:100%}.budget-card:hover{box-shadow:25px 25px 70px #c5c5c5,-25px -25px 70px #fff;transform:none}.expense-item{gap:15px}.expense-item input[name=name]{flex:1 1 auto;width:auto}.expense-item input[name=amount]{flex:0 0 120px}h1{color:#ffc40c;margin-bottom:20px;text-shadow:1px 1px 2px #0000001a}.App,h1{text-align:center}.user-info{align-items:center;background:var(--bg-color-alt);border:2px solid var(--main-color);border-radius:15px;box-shadow:4px 4px var(--main-color);display:flex;justify-content:space-between;margin-bottom:20px;padding:15px 20px;text-align:left}@media (max-width:768px){.user-info{flex-direction:row;gap:8px;padding:12px 15px}.user-info>span{flex:1 1 auto;margin-bottom:0;margin-right:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-button{align-items:center;display:inline-flex;font-size:0;height:40px;justify-content:center;padding:0;width:40px}.logout-button:before{content:"🔓";font-size:18px;line-height:1}.logout-button .logout-label{display:none}}.user-info>span{font-size:16px;margin-right:1rem}.logout-button,.user-info>span{color:var(--font-color);font-weight:600}.logout-button{background-color:#e75f5f;border:2px solid #1b1414;border-radius:5px;box-shadow:3px 3px #1b1414;cursor:pointer;font-size:15px;padding:8px 15px;transition:all .2s ease}.logout-button:hover{background-color:#fc7272}.logout-button:active{box-shadow:0 0 var(--main-color);transform:translate(3px,3px)}@media (max-width:768px){input,select,textarea{font-size:16px!important}}.budget-form input[type=number],.budget-form input[type=text]{background:#e8e8e8;border:none;border-radius:1rem;box-shadow:20px 20px 60px #c5c5c5,-20px -20px 60px #fff;box-sizing:border-box;color:#333;font-family:Poppins,sans-serif;font-size:16px;padding:1rem;transition:.3s;width:100%}.budget-form input[type=number]:focus,.budget-form input[type=text]:focus{background:#e8e8e8;box-shadow:inset 20px 20px 60px #c5c5c5,inset -20px -20px 60px #fff;outline-color:#e8e8e8;transition:.3s}:root{--sevencents-dark-blue:#3a6d98}.App .sevencents-brand,.auth-form-container .sevencents-brand,.sevencents-brand,.user-info .sevencents-brand{display:inline-flex!important;font-size:1em!important;font-weight:900!important;letter-spacing:.5px!important;letter-spacing:-.5px!important;text-shadow:0 1px 1px #0000001a!important;white-space:nowrap!important}.App .seven,.auth-form-container .seven,.seven,.user-info .seven{color:#3a6d98!important;color:var(--sevencents-dark-blue)!important;font-weight:900!important}.App .cents,.auth-form-container .cents,.cents,.user-info .cents{color:#5a8db8!important;color:var(--sevencents-blue)!important;font-weight:900!important}.modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#add8e6;border:3px solid #89b0b6;border-radius:0;box-shadow:12px 12px 0 #89b0b6;max-width:500px;width:90%}.modal-header{align-items:center;background:#ffffe0;border-bottom:3px solid #89b0b6;color:#545454;display:flex;justify-content:space-between;padding:10px 20px}.modal-header h2{font-size:1.5em;font-weight:900;margin:0}.btn-close{background:none;border:none;color:#545454;cursor:pointer;font-size:2em;font-weight:700;line-height:1;padding:0}.modal-body{color:#545454;font-size:1.1em;font-weight:600;padding:20px}.modal-footer{border-top:2px dashed #89b0b6;display:flex;gap:15px;justify-content:flex-end;padding:15px 20px}.modal-footer .btn{border-radius:0;cursor:pointer;font-weight:900;padding:10px 20px;transition:all .2s ease}.btn-cancel{background-color:#f0f0f0;border:3px solid #b0b0b0;box-shadow:4px 4px 0 #b0b0b0;color:#545454}.btn-cancel:hover{background-color:#e0e0e0;box-shadow:0 0 0 #b0b0b0;translate:4px 4px}.btn-confirm{background-color:#f8d7da;border:3px solid #d17a7a;box-shadow:4px 4px 0 #d17a7a;color:#721c24}.btn-confirm:hover{background-color:#f4c2c7;box-shadow:0 0 0 #d17a7a;translate:4px 4px}:root{--sevencents-blue:#5a8db8}.form{align-items:stretch;background:#add8e6;background:var(--bg-color-alt);border:2px solid #89b0b6;border:2px solid var(--main-color);border-radius:15px;box-shadow:4px 4px #89b0b6;box-shadow:4px 4px var(--main-color);display:flex;flex-direction:column;gap:20px;padding:20px}.title{color:#323232;color:var(--font-color);display:inline-block;font-size:25px;font-weight:900;margin-bottom:15px;position:relative}.title:after{background:repeating-linear-gradient(90deg,#89b0b6 0,#89b0b6 5px,#0000 0,#0000 10px);border-radius:2px;bottom:-5px;content:"";height:3px;left:0;position:absolute;width:100%}.title span{color:#666;color:var(--font-color-sub);font-size:17px;font-weight:600}.input{background-color:#ffffe0;border:2px solid #89b0b6;border:2px solid var(--main-color);border-radius:5px;box-shadow:inset 5px 5px 10px #d9d9c0,inset -5px -5px 10px #fffffe;box-sizing:border-box;color:#323232;color:var(--font-color);font-size:15px;font-weight:600;height:40px;outline:none;padding:5px 10px;width:100%}.input::placeholder{color:#666;color:var(--font-color-sub);opacity:.8}.input:focus{border:2px solid #87ceeb;border:2px solid var(--input-focus)}.input:disabled{background-color:#ffffe0;box-shadow:none;cursor:not-allowed}@media (max-width:768px){.input{font-size:16px!important}}.form-group-inline{align-items:center;display:flex;gap:15px}@media (max-width:768px){.form-group-inline{align-items:stretch;flex-direction:column;gap:10px}}.expense-item{align-items:center;display:flex;gap:10px;margin-bottom:5px;position:relative}@media (max-width:768px){.expense-item{flex-wrap:nowrap;gap:8px}.expense-item input[name=name]{flex:1 1 55%;min-width:0}.expense-item input[name=amount]{flex:0 0 90px;width:90px}.expense-item .delete-button{flex:0 0 40px}}.expense-item .delete-button{margin-left:0}@media (max-width:768px){.goal-form .form-group-inline{align-items:center;flex-direction:row;flex-wrap:nowrap;gap:8px}.goal-form .form-group-inline input[type=text]{flex:1 1 60%;min-width:0}.goal-form .form-group-inline input[type=number]{flex:0 0 100px;width:100px}}.button-confirm{background-color:#d8d0f0;border:2px solid #444;border-radius:5px;box-shadow:4px 4px #444;color:#323232;color:var(--font-color);cursor:pointer;font-size:17px;font-weight:600;height:45px;margin:20px auto 0;width:100%}.button-confirm:active{box-shadow:0 0 #89b0b6;box-shadow:0 0 var(--main-color);transform:translate(3px,3px)}.button-group{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.button-group .button-confirm{flex-grow:1;margin-top:0;padding:0 15px;width:auto}.checkbox-wrapper{align-items:center;display:flex;gap:10px;justify-content:flex-start}.checkbox-wrapper .label-text{color:#666;color:var(--font-color-sub);cursor:pointer;font-weight:600}.checkbox-wrapper input[type=checkbox]{height:0;opacity:0;position:absolute;width:0}.checkbox-wrapper .label-text:before{background-color:#ffffe0;background-color:var(--bg-color);border:2px solid #89b0b6;border:2px solid var(--main-color);border-radius:5px;box-shadow:4px 4px #89b0b6;box-shadow:4px 4px var(--main-color);content:"";display:inline-block;height:25px;margin-right:10px;transition:all .2s ease;vertical-align:middle;width:25px}.checkbox-wrapper input[type=checkbox]:checked+.label-text:before{background-color:#89b0b6;background-color:var(--main-color);box-shadow:0 0 #89b0b6;box-shadow:0 0 var(--main-color);color:#ffffe0;color:var(--bg-color);content:"✔";font-weight:700;line-height:22px;text-align:center;transform:translate(3px,3px)}.goal-contribution-wrapper{align-items:center;display:flex}.goal-contribution-wrapper .input{flex-grow:1}.goal-contribution-wrapper .delete-button{margin-left:10px}@media (max-width:768px){.button-group{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);justify-content:stretch}.button-group .button-confirm{flex:0 0 auto;height:45px;padding:0;text-align:center;width:100%}}.goals-container{background-color:#e0e0e0;border-radius:20px;box-shadow:9px 9px 16px #bebebe,-9px -9px 16px #fff;margin-top:20px;padding:20px}.goals-list{display:flex;flex-direction:column;gap:20px}.goal-card{align-items:center;background:#e0e0e0;border-radius:15px;box-shadow:inset 5px 5px 10px #bebebe,inset -5px -5px 10px #fff;display:flex;justify-content:space-between;padding:20px}.goal-info h3{color:#333;margin:0 0 10px}.goal-info p{color:#555;margin:0}.goal-progress{text-align:right}.progress-bar-container{background-color:#c7c7c7;border-radius:10px;box-shadow:inset 2px 2px 5px #bebebe,inset -2px -2px 5px #fff;height:20px;margin-top:10px;width:200px}.progress-bar{background-color:#f4d03f;border-radius:10px;transition:width .5s ease-in-out}.goal-item-header{align-items:center;display:flex;justify-content:space-between;width:100%}.summary-container{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff4d;border:1px solid #ffffff2e;border-radius:20px;box-shadow:0 8px 32px 0 #1f26871a;margin-top:15px;padding:20px;text-align:center;transition:all .3s ease}.color-picker-container{margin-bottom:15px;position:relative}.color-picker-button{align-items:center;background-color:#fff;border:2px solid var(--main-color);border-radius:10px;box-shadow:2px 2px var(--main-color);color:#333;cursor:pointer;display:flex;font-weight:600;padding:8px 15px;transition:all .3s ease}.color-picker-button:hover{box-shadow:3px 3px var(--main-color);transform:translateY(-2px)}.color-options{background:#fff;border:2px solid var(--main-color);border-radius:10px;box-shadow:4px 4px var(--main-color);display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;padding:10px}.color-option{border:2px solid #fff;border-radius:50%;box-shadow:0 0 5px #0003;cursor:pointer;height:30px;transition:transform .2s ease;width:30px}.color-option:hover{border:2px solid #333;transform:scale(1.2)}.summary-section{margin-top:15px;padding:15px;text-align:center}.budget-summary{align-items:stretch;background:#add8e6;background:var(--bg-color-alt,#add8e6);border:2px solid #89b0b6;border:2px solid var(--main-color,#89b0b6);border-radius:15px;box-shadow:4px 4px #89b0b6;box-shadow:4px 4px var(--main-color,#89b0b6);display:flex;flex-direction:column;gap:5px;overflow:hidden;padding:10px;position:relative}.budget-summary h3.summary-title{color:#323232;color:var(--font-color,#323232);font-size:20px;font-weight:900;margin-bottom:5px;text-align:center}.budget-summary h4{color:#323232;color:var(--font-color,#323232);font-size:16px;font-weight:600;margin-bottom:2px;margin-top:5px}.budget-summary h4+p{color:#666;color:var(--font-color-sub,#666);font-size:14px;font-weight:600;margin-bottom:5px;margin-top:2px}.budget-summary>p{color:#323232;color:var(--font-color,#323232);font-weight:600;margin:5px 0;padding:5px 0}.summary-item{border-bottom:1px solid #ffffff4d;display:flex;font-size:18px;justify-content:space-between;padding:10px 0}.goals-summary-container h3{color:#000000b3;font-weight:600;margin-bottom:10px;margin-top:5px}.summary-title{color:var(--main-color);font-weight:700;margin-bottom:10px;margin-top:5px;text-align:center}.goal-summary{margin-bottom:20px}.goal-summary h4{color:#000c;font-weight:600;margin:0 0 8px}.progress-container{background-color:#ffffe0;background-color:var(--bg-color,#ffffe0);border:2px solid #89b0b6;border:2px solid var(--main-color,#89b0b6);border-radius:8px;box-shadow:inset 2px 2px 4px #d9d9c0,inset -2px -2px 4px #fffffe;height:30px;margin:3px 0 8px;overflow:hidden;position:relative;width:100%}.progress-bar{border-radius:8px;height:100%;position:relative;transition:width .8s cubic-bezier(.25,1,.5,1);z-index:1}.progress-text{color:#323232;color:var(--font-color,#323232);font-size:13px;font-weight:600;left:50%;position:absolute;text-shadow:1px 1px 2px #ffffffb3;top:50%;transform:translate(-50%,-50%);z-index:2}.goal-summary p{color:#0009;font-size:.9em;margin:5px 0 0}.summary-item:last-child{border-bottom:none}.summary-item span:first-child{color:#000000b3;font-weight:700}.summary-item span:last-child{font-weight:700}.summary-item .positive{color:#28a745}.summary-item .negative{color:#dc3545}.progress-container.complete{overflow:visible}.progress-container.complete .progress-bar{animation:goal-glow 1.2s ease-out 1}@keyframes goal-glow{0%{box-shadow:0 0 0 #fff6,0 0 0 #fff3}30%{box-shadow:0 0 12px #ffffffb3,0 0 24px #fff6}to{box-shadow:0 0 0 #fff6,0 0 0 #fff3}}.progress-container .particles{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:3}.progress-container .particle{border-radius:2px;height:12px;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:8px}.progress-container.complete .particle{animation:confetti-burst .9s ease-out forwards}.progress-container.complete .particle:first-child{--tx:-60px;--ty:-120px;animation-delay:0ms;background:#ff6b6b}.progress-container.complete .particle:nth-child(2){--tx:50px;--ty:-110px;animation-delay:60ms;background:#ffd93d}.progress-container.complete .particle:nth-child(3){--tx:-20px;--ty:-140px;animation-delay:.1s;background:#6bcb77}.progress-container.complete .particle:nth-child(4){--tx:80px;--ty:-90px;animation-delay:40ms;background:#4d96ff}.progress-container.complete .particle:nth-child(5){--tx:-90px;--ty:-100px;animation-delay:80ms;background:#b892ff}@keyframes confetti-burst{0%{opacity:0;transform:translate(-50%,-50%) translate(0) rotate(0deg)}10%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) translate(var(--tx),var(--ty)) rotate(540deg)}}.congrats-banner{background:#e6ffe6;border:2px solid #89b0b6;border:2px solid var(--main-color,#89b0b6);border-radius:12px;box-shadow:4px 4px #89b0b6;box-shadow:4px 4px var(--main-color,#89b0b6);margin:6px 0 10px;padding:10px 12px;position:relative;text-align:center}.congrats-banner .congrats-title{color:#2f7a2f;font-weight:900;margin-bottom:6px}.congrats-banner .congrats-body{color:#323232;color:var(--font-color,#323232);font-weight:700;margin-bottom:6px}.congrats-banner .verse{color:#3b7680;font-style:italic;font-weight:700}.congrats-body{color:#323232;color:var(--font-color,#323232);font-weight:700;margin-bottom:6px}.verse{color:#3b7680;font-style:italic;font-weight:700}.congrats-close{background:#0000;border:none;color:#2f7a2f;cursor:pointer;font-size:18px;font-weight:900;position:absolute;right:8px;top:6px}.congrats-close:hover{color:#1f5a1f}.no-active-goals{color:#666;color:var(--font-color-sub,#666);font-weight:700;margin:4px 0 8px;text-align:center}@media (max-width:600px){.congrats-banner{box-shadow:3px 3px #89b0b6;box-shadow:3px 3px var(--main-color,#89b0b6);padding:8px 10px}}.cards-container{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));justify-content:center;padding:20px}.finished-cards{gap:16px;grid-template-columns:repeat(auto-fit,minmax(0,max-content));justify-content:center;justify-items:center}@media (min-width:768px){.history-container .cards-container.finished-cards{gap:48px 56px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;padding-left:32px!important;padding-right:32px!important}.history-container .cards-container.finished-cards .budget-card{max-width:none!important;width:100%!important}}.finished-cards .budget-card{align-items:center;display:flex;flex-direction:column;justify-self:center;max-width:260px;min-width:200px;width:auto}.finished-cards .card-content{align-items:center;display:flex;flex-direction:column;margin:0 auto;padding:8px 10px;text-align:center;width:100%}.finished-cards .goal-top{display:flex;flex-wrap:wrap;max-width:100%}.finished-cards .goal-amount-row,.finished-cards .goal-top{align-items:center;align-self:center;gap:8px;justify-content:center}.finished-cards .goal-amount-row{display:inline-flex}.finished-cards .goal-name{max-width:100%;min-width:0;text-align:center;white-space:normal;word-break:break-word}.finished-cards .goal-badge{flex-shrink:0}.finished-cards .goal-amount,.finished-cards .goal-label,.finished-cards .goal-name{text-align:center}@media (max-width:600px){.cards-container,.finished-cards{grid-template-columns:1fr}.finished-cards{gap:48px;justify-content:stretch}.finished-cards .budget-card{max-width:none;width:100%}.finished-cards .card-content{margin:0;width:100%}.expense-items{margin-left:-16px;margin-right:-16px;padding:10px 14px}.expense-items .expense-item{grid-template-columns:1fr auto;width:100%}.expense-items .expense-name{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-items .expense-amount{font-size:12px;text-align:right}.expense-items .expense-desc{display:none}.expense-items .expense-item.quick-expense .expense-amount,.expense-items .expense-item.quick-expense .expense-name{color:#a73b3b}.card-content .kv-row .kv-label .expense-count,.card-content .kv-row .kv-label .expense-toggle{display:none}.card-content .kv-row .kv-amount,.card-content .kv-row .kv-label{white-space:nowrap}.expenses-meta{align-items:center;display:flex;gap:8px;justify-content:space-between;margin:4px 0 2px}}.budget-card{background:#add8e6;border:3px solid #89b0b6;border-radius:0;box-shadow:6px 6px 0 #89b0b6;height:auto;overflow:hidden;transition:all .3s ease;translate:-6px -6px;width:300px}.budget-card:hover{box-shadow:0 0 0 #89b0b6;translate:0}.card-head{align-items:center;background:#ffffe0;border-bottom:3px solid #89b0b6;box-sizing:border-box;display:flex;font-weight:900;gap:6px;height:32px;justify-content:center;padding:5px 12px;white-space:nowrap;width:100%}.card-content,.card-head{color:#545454;font-size:14px}.card-content{font-weight:600;padding:8px 12px}.card-content p{line-height:1.5;margin:10px 0}.card-content strong{color:#3b7680;font-weight:900}.card-content .kv-row{grid-column-gap:8px;align-items:center;column-gap:8px;display:grid;grid-template-columns:1fr auto;margin:10px 0}.card-content .kv-label{align-items:center;color:#3b7680;display:flex;flex-wrap:wrap;font-weight:900;gap:6px;text-align:left}.card-content .kv-amount{color:#333;font-weight:900;text-align:right}.expenses-meta{display:none}.goal-contributions-history{border-top:2px dashed #89b0b6;margin-top:15px;padding-top:10px}.goal-contributions-history strong{display:block;margin-bottom:8px}.goal-contributions-history ul{list-style-type:none;margin:0;padding-left:0}.goal-contributions-history li{font-size:.9em;padding:4px 0}.history-controls{display:flex;justify-content:center;margin-bottom:20px}.btn-clear-history{background-color:#f8d7da;border:3px solid #d17a7a;border-radius:0;box-shadow:2px 2px 0 #d17a7a;color:#721c24;cursor:pointer;font-weight:900;padding:10px 20px;transition:all .2s ease}.btn-clear-history:hover{background-color:#f4c2c7;box-shadow:0 0 0 #d17a7a;translate:4px 4px}.history-container h2{color:#545454;font-size:2em;font-weight:900;margin-bottom:20px;text-align:center}.pagination{align-items:center;display:flex;gap:15px;justify-content:center;margin-top:30px}.pagination button{background-color:#ffffe0;border:3px solid #89b0b6;border-radius:0;box-shadow:2px 2px 0 #89b0b6;color:#545454;cursor:pointer;font-weight:900;padding:10px 20px;transition:all .2s ease}.pagination button:hover:not(:disabled){background-color:#fffacd;box-shadow:0 0 0 #89b0b6;translate:4px 4px}.pagination button:disabled{background-color:#e0e0e0;border-color:silver;box-shadow:none;color:#a0a0a0;cursor:not-allowed}.pagination span{color:#545454;font-size:1.1em;font-weight:900}.expense-toggle{align-items:center;background:#0000;border:none;color:#a73b3b;cursor:pointer;display:inline-flex;font-size:14px;font-weight:900;height:22px;justify-content:center;line-height:1;margin-left:6px;padding:0;width:22px}.expense-toggle:hover{background:#0000;color:#7f2d2d}.expense-toggle:focus-visible{border-radius:2px;outline:2px solid #89b0b6;outline-offset:2px}.expense-count{color:#666;font-weight:700;margin-left:4px}.expense-items{background:#f6fbfd;border:2px dashed #89b0b6;margin-top:8px;padding:8px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.expense-items ul{list-style:none;margin:0;padding:0}.expense-items .expense-item{grid-column-gap:8px;align-items:center;border-bottom:1px solid #0000000d;column-gap:8px;display:grid;grid-template-columns:1fr auto;padding:6px 0}.expense-items .expense-item:last-child{border-bottom:none}.expense-items .expense-name{color:#3b7680;font-weight:800;min-width:0;overflow-wrap:break-word;text-align:left;word-break:normal}.expense-items .expense-amount{color:#333;font-weight:900;margin-left:0;text-align:right}.expense-items .expense-desc{color:#777;font-size:12px;font-weight:600;grid-column:1/-1;margin-left:0;text-align:left}@media (max-width:768px){.cards-container{align-items:stretch;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.budget-card{box-sizing:border-box;width:100%}.budget-card,.budget-card:hover{box-shadow:4px 4px 0 #89b0b6;translate:0}.card-head{align-items:center;display:flex;flex-direction:column;font-size:11px;gap:2px;height:auto;line-height:1.15;min-height:28px;overflow-wrap:anywhere;padding:4px 6px;text-align:center;white-space:normal;word-break:break-word}.date-sep{display:none}.card-time{display:block}.expense-toggle{font-size:18px;height:28px;width:28px}.finished-cards{gap:40px;grid-template-columns:1fr;justify-content:stretch;padding:14px}.finished-cards .budget-card{width:100%}.card-content .kv-row .kv-amount,.card-content .kv-row .kv-label{white-space:nowrap}.card-content .kv-row .kv-label .expense-count,.card-content .kv-row .kv-label .expense-toggle{display:none}.expenses-meta{align-items:center;display:flex;gap:2px;justify-content:center;margin:4px 0 2px;white-space:nowrap;width:100%}.expenses-meta .expense-toggle{margin-left:0}.expenses-meta .expense-count{margin:0}}.history-tabs{align-items:center;display:flex;gap:12px;justify-content:center;margin:10px 0 20px}.tab-btn{background-color:#ffffe0;border:3px solid #89b0b6;border-radius:0;box-shadow:3px 3px 0 #89b0b6;color:#545454;cursor:pointer;font-weight:900;padding:8px 16px;transition:all .2s ease}.tab-btn:hover{background-color:#fffacd;box-shadow:0 0 0 #89b0b6;translate:4px 4px}.tab-btn.active{background-color:#add8e6;border-color:#89b0b6;box-shadow:0 0 0 #89b0b6}.no-history{color:#545454;font-weight:800;margin:20px 0;text-align:center}.goal-card .card-head{background:#e6ffe6;border-bottom:3px solid #89b0b6;font-weight:900}.goal-card{position:relative}.goal-card:before{background:#fffacd;background:var(--goal-color,#fffacd);border-right:2px solid #89b0b6;bottom:0;content:"";left:0;pointer-events:none;position:absolute;top:0;width:6px}.goal-top{display:flex;justify-content:space-between;margin-bottom:6px}.goal-name,.goal-top{align-items:center;gap:8px}.goal-name{color:#3b7680;display:inline-flex;font-weight:900}.goal-badge{background:#e6ffe6;border:2px solid #89b0b6;border-radius:0;box-shadow:2px 2px 0 #89b0b6;color:#2f7a2f;font-weight:900;padding:4px 8px}.goal-amount-row{grid-column-gap:8px;align-items:center;border-top:2px dashed #89b0b6;column-gap:8px;display:grid;grid-template-columns:1fr auto;margin-top:6px;padding-top:8px}.goal-label{color:#3b7680;font-weight:900}.goal-amount{color:#333;font-weight:900;text-align:right}.color-dot{aspect-ratio:1/1;border:2px solid #545454;border-radius:50%;display:inline-block;flex:0 0 12px;flex-shrink:0;height:12px;width:12px}@media (max-width:600px){.history-tabs{flex-wrap:wrap;gap:8px}.tab-btn{box-shadow:2px 2px 0 #89b0b6;padding:6px 12px}.goal-top{align-items:flex-start;flex-direction:column;gap:4px}}.main-nav{border-bottom:1px solid #fff3;display:flex;justify-content:center;margin-bottom:30px;padding:10px}@media (max-width:768px){.main-nav{margin-bottom:15px;padding:5px}}.main-nav button{background-color:initial;border:none;color:#0009;cursor:pointer;font-size:18px;font-weight:600;padding:10px 20px;position:relative;transition:color .3s ease}@media (max-width:768px){.main-nav button{font-size:16px;padding:8px 15px}}.main-nav button.active{color:#ffc40c}.main-nav button.active:after{background-color:#ffc40c;border-radius:2px;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:50%}.main-nav button:hover:not(.active){color:#ffda79}:root{--font-color:#323232;--font-color-sub:#666;--input-focus:#87ceeb;--main-color:#89b0b6;--bg-color:#ffffe0;--bg-color-alt:#add8e6;--dark-accent-blue:#3498db;--pastel-powder-blue:#b2e6ce;--pastel-light-yellow:#ffc;--pastel-red:#f9c}.auth-form-container{background:#add8e6;background:var(--bg-color-alt);border:2px solid #89b0b6;border:2px solid var(--main-color);border-radius:15px;box-shadow:4px 4px #89b0b6;box-shadow:4px 4px var(--main-color);margin:0 auto;max-width:400px;padding:20px}.auth-form-container h2{color:#323232;color:var(--font-color);font-size:25px;font-weight:900;margin-bottom:15px;text-align:center}.auth-description{color:#666;color:var(--font-color-sub);font-weight:600;margin-bottom:1.5rem;text-align:center}.auth-form{gap:20px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#666;color:var(--font-color-sub);font-weight:600}.form-group input{background-color:#ffffe0;background-color:var(--bg-color);border:2px solid #89b0b6;border:2px solid var(--main-color);border-radius:5px;box-shadow:inset 5px 5px 10px #d9d9c0,inset -5px -5px 10px #fffffe;box-sizing:border-box;font-size:15px;font-weight:600;height:40px;padding:0 15px;width:100%}.form-group input:focus{border-color:#87ceeb;border-color:var(--input-focus);outline:none}.auth-button{border:2px solid #444;border-radius:5px;box-shadow:3px 3px #444;color:#323232;color:var(--font-color);cursor:pointer;font-size:15px;font-weight:600;margin-top:1rem;padding:10px 15px;transition:all .2s ease}.auth-button,.auth-button:hover{background-color:#d8d0f0}.auth-button:active{box-shadow:0 0 #89b0b6;box-shadow:0 0 var(--main-color);transform:translate(3px,3px)}.auth-button:disabled{background-color:#d9d9c0;cursor:not-allowed;opacity:.7}.auth-error{background-color:#f9c;background-color:var(--pastel-red)}.auth-error,.auth-success{border:2px solid #89b0b6;border:2px solid var(--main-color);border-radius:5px;color:#323232;color:var(--font-color);font-size:.9rem;font-weight:600;margin-bottom:1rem;padding:.75rem}.auth-success{background-color:#b2e6ce;background-color:var(--pastel-powder-blue)}.auth-link{color:#666;color:var(--font-color-sub);font-weight:600;margin-top:1.5rem;text-align:center}.link-button{background:none;border:none;color:#3498db;color:var(--dark-accent-blue);cursor:pointer;font-size:inherit;font-weight:600;padding:0}.link-button:hover{text-decoration:underline}.forgot-password{margin-top:.5rem;text-align:right}.auth-container{align-items:center;background-color:#e8e8e8;display:flex;justify-content:center;min-height:100vh;padding:2rem}.auth-wrapper{max-width:450px;width:100%}@media (max-width:768px){.auth-form .form-group input,.auth-form input,.auth-form select,.auth-form textarea{font-size:16px!important}}
/*# sourceMappingURL=main.27beb745.css.map*/