@font-face{font-family:Titillium Web;src:url(/assets/TitilliumWeb-Regular-BNW2HhQP.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Titillium Web;src:url(/assets/TitilliumWeb-SemiBold-DRUOblpW.ttf) format("truetype");font-weight:600;font-style:normal}body{font-family:Titillium Web,Arial,sans-serif;color:#13182c;background-color:#f7f8f9;margin:0;box-sizing:border-box}.typography--h1{font-size:1.75rem;line-height:2.25rem}@media screen and (min-width:700px){.typography--h1{font-size:2rem;line-height:2.5rem}}.typography--h2{font-size:1.25rem;line-height:1.75rem}@media screen and (min-width:700px){.typography--h2{font-size:1.5rem;line-height:2rem}}.typography--h3{font-size:.8125rem;line-height:1.25rem}@media screen and (min-width:700px){.typography--h3{font-size:.875rem;line-height:1.375rem}}.typography--h4{font-size:.6875rem;line-height:1rem}@media screen and (min-width:700px){.typography--h4{font-size:.75rem;line-height:1.125rem}}.typography--p1{font-size:.9375rem;line-height:1.625rem}@media screen and (min-width:700px){.typography--p1{font-size:1rem;line-height:1.75rem}}.typography--p2{font-size:.8125rem;line-height:1.25rem}@media screen and (min-width:700px){.typography--p2{font-size:.875rem;line-height:1.375rem}}.typography--p3{font-size:.6875rem;line-height:1rem}@media screen and (min-width:700px){.typography--p3{font-size:.75rem;line-height:1.125rem}}.navbar{display:flex;align-items:center;flex-direction:column;padding:0 1.5rem;background-color:#232940}@media screen and (min-width:700px){.navbar{flex-direction:row;align-items:center;justify-content:space-between}}.navbar__top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:.5rem}@media screen and (min-width:700px){.navbar__top{margin-bottom:0;flex:2}}.navbar__left{display:flex;align-items:center;justify-content:space-between;width:100%;flex:1}.navbar__left a{display:flex;align-items:center;gap:.5rem;text-decoration:none}.navbar__icon-wrapper{width:2.5rem;height:2.5rem;display:flex;justify-content:center;align-items:center}.navbar__profile-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center}.navbar__icon{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 2px 1px rgba(255,255,255,.3)) drop-shadow(0 0 4px rgba(0,0,0,.3))}.navbar__icon--profile{width:75%;height:75%}.navbar__brand{color:#fff}.navbar__center{width:auto;max-width:21.5rem;display:flex;justify-content:center;align-items:center;padding-left:1rem;margin-bottom:.5rem;gap:.5rem;flex:1}@media screen and (min-width:700px){.navbar__center{margin-bottom:0}}.navbar__tab{text-decoration:none;color:#bdc5d5;background-color:#232940;border-radius:1.25rem;padding:.5rem 2rem}.navbar__tab .typography--p2{margin-top:0;margin-bottom:0}@media screen and (min-width:700px){.navbar__tab{padding:.5rem 1rem}}.navbar__tab--active{background-color:#13182c;color:#fff}.navbar__right{display:flex;align-items:center;justify-content:flex-end;flex:1}.navbar__profile{position:relative}@media screen and (min-width:700px){.navbar__profile--mobile{display:none}}.navbar__profile--tablet{display:none}@media screen and (min-width:700px){.navbar__profile--tablet{display:flex;justify-content:center;align-items:center}}.navbar__dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;background:#232940;border-radius:.5rem}.navbar__dropdown-item{width:100%;padding:.75rem 1rem;background:none;border:none;cursor:pointer;color:#bdc5d5;background-color:#5c667e;border-radius:.5rem}.navbar__dropdown-item:hover{background:#ffffff0d}.navbar__dropdown-item .typography--p2{margin-top:0;margin-bottom:0}.footer{left:0;bottom:18px;width:100%;text-align:center}.footer__copy{font-size:12px;font-weight:400;color:#5c667e}.input{box-sizing:border-box;font-family:Titillium Web,Arial,sans-serif;border-radius:1.25rem;padding-left:1rem;padding-right:1rem;height:2.25rem;width:100%}.input__label .typography--p1,.input__label .typography--p2,.input__label .typography--p3,.input__label .typography--h1,.input__label .typography--h2,.input__label .typography--h3,.input__label .typography--h4{margin-top:0;margin-bottom:0;margin-left:.625rem}.input--select{appearance:none}.input{color:#13182c;font-size:.8125rem;line-height:1.25rem}.input::placeholder{color:#5c667e}.input{border:1px solid #BDC5D5}.input:focus{outline:none;border:1px solid #2E66E5}.input--error{border:1px solid #C94515}.input--error:focus{border:1px solid #C94515}@media screen and (min-width:700px){.input{height:2.375rem;font-size:.875rem;line-height:1.375rem}}.input:disabled{background-color:#f7f8f9;cursor:not-allowed;color:#5c667e}.input__error-msg{font-size:.75rem;color:#c94515;margin-top:.25rem;margin-left:1rem}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.button{font-family:Titillium Web,Arial,sans-serif;display:inline-flex;justify-content:center;align-items:center;text-decoration:none;white-space:nowrap;padding:8px 16px;border-radius:20px;border:none;cursor:pointer}.button--primary{background-color:#2e66e5;color:#fff}.button--primary:hover{opacity:80%}.button--secondary{background-color:#fff;color:#5c667e;border:1px solid #BDC5D5}.button--secondary:hover{background:#fff;box-shadow:0 0 0 1px #5c667e inset,0 0 0 3px #fff inset}.button--delete{background-color:#c94515;color:#fff}.button--delete:hover{opacity:80%}.button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;box-shadow:none}.signup{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f7f8f9;padding:2rem}.signup__header{font-weight:600;text-align:center;margin-bottom:1.5rem}.signup__error{color:#c94515;text-align:center;margin-bottom:1rem}.signup__success{color:#158463;font-weight:500}.signup__form{width:100%;max-width:18.75rem;background-color:#fff;border:1px solid #BDC5D5;border-radius:10px;padding:2rem;display:flex;flex-direction:column;gap:1rem}@media screen and (min-width:700px){.signup__form{max-width:25rem}}.signup__form-input{width:100%}.signup__button-wrapper{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;align-items:center}.signup__button{width:100%;display:flex;justify-content:center;align-items:center}.signup__button .typography--p2{margin-top:0;margin-bottom:0}.signup__login-text{font-size:.8125rem;color:#5c667e;text-align:center}.signup__login-link{font-weight:600;color:#2e66e5;text-decoration:none}.signup__login-link:hover{text-decoration:underline}.signup__icon-wrapper{width:6rem;height:6rem;display:flex;justify-content:center;align-items:center;margin:0 auto}.signup__icon-wrapper img{width:100%;height:100%;object-fit:contain}.login{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f7f8f9;padding:2rem}.login__header{font-weight:600;text-align:center;margin-bottom:1.5rem}.login__error{color:#c94515;text-align:center;margin-bottom:1rem}.login__form{width:100%;max-width:18.75rem;background-color:#fff;border:1px solid #BDC5D5;border-radius:10px;padding:2rem;display:flex;flex-direction:column;gap:1rem}@media screen and (min-width:700px){.login__form{max-width:25rem}}.login__form-input{width:100%}.login__button-wrapper{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;align-items:center}.login__button{width:100%;display:flex;justify-content:center;align-items:center}.login__button .typography--p2{margin-top:0;margin-bottom:0}.login__signup-text{font-size:.8125rem;color:#5c667e;text-align:center}.login__signup-link{font-weight:600;color:#2e66e5;text-decoration:none}.login__signup-link:hover{text-decoration:underline}.login__forgot-text{font-size:.8125rem;color:#5c667e;text-align:flex-start;margin:0 0 0 1rem}.login__forgot-link{font-weight:600;color:#2e66e5;text-decoration:none}.login__forgot-link:hover{text-decoration:underline}.login__icon-wrapper{width:6rem;height:6rem;display:flex;justify-content:center;align-items:center;margin:0 auto}.forgot-password{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f7f8f9;padding:2rem}.forgot-password__header{font-weight:600;text-align:center;margin-bottom:1.5rem}.forgot-password__error{color:#c94515;text-align:center;margin-bottom:1rem}.forgot-password__message{color:#158463;text-align:center;margin-bottom:1rem}.forgot-password__form{width:100%;max-width:18.75rem;background-color:#fff;border:1px solid #BDC5D5;border-radius:10px;padding:2rem;display:flex;flex-direction:column}@media screen and (min-width:700px){.forgot-password__form{max-width:25rem}}.forgot-password__form-input{width:100%}.forgot-password__button-wrapper{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;align-items:center}.forgot-password__button{width:100%;display:flex;justify-content:center;align-items:center}.forgot-password__button .typography--p2{margin-top:0;margin-bottom:0}.forgot-password__login-text{font-size:.8125rem;color:#5c667e;text-align:center}.forgot-password__login-link{font-weight:600;color:#2e66e5;text-decoration:none}.forgot-password__login-link:hover{text-decoration:underline}.forgot-password__icon-wrapper{width:6rem;height:6rem;display:flex;justify-content:center;align-items:center;margin:0 auto}.update-password{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f7f8f9;padding:2rem}.update-password__header{font-weight:600;text-align:center;margin-bottom:1.5rem}.update-password__error{color:#c94515;text-align:center;margin-bottom:1rem}.update-password__success{color:#158463;font-weight:500}.update-password__form{width:100%;max-width:18.75rem;background-color:#fff;border:1px solid #BDC5D5;border-radius:10px;padding:2rem;display:flex;flex-direction:column;gap:1rem}@media screen and (min-width:700px){.update-password__form{max-width:25rem}}.update-password__form-input{width:100%}.update-password__button{width:100%;display:flex;justify-content:center;align-items:center}.update-password__button .typography--p2{margin-top:0;margin-bottom:0}.update-password__login-text{font-size:.8125rem;color:#5c667e;text-align:center}.update-password__login-link{font-weight:600;color:#2e66e5;text-decoration:none}.update-password__login-link:hover{text-decoration:underline}.update-password__icon-wrapper{width:6rem;height:6rem;display:flex;justify-content:center;align-items:center;margin:0 auto}.update-password__icon-wrapper img{width:100%;height:100%;object-fit:contain}.pie-chart{width:100%}.pie-chart__container{width:100%;height:300px}.dashboard{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:.5rem auto}.dashboard__header-title{display:flex;justify-content:center}.dashboard__form{display:flex;justify-content:center;flex-wrap:wrap;align-items:center;background-color:#fff;padding:1rem 1.5rem 1.5rem;border-top:1px solid #BDC5D5;box-shadow:0 2px 5px #13182c1a;border-radius:1.25rem}.dashboard__form>*:not(.dashboard__reset-btn){flex:1 1 25%}@media screen and (min-width:700px){.dashboard__form{flex-wrap:nowrap;flex-direction:row;gap:1rem;align-items:center}}.dashboard__form:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001a}.dashboard__input{width:5rem}@media screen and (min-width:700px){.dashboard__input{width:7.5rem}}@media screen and (min-width:1100px){.dashboard__input{width:10rem}}.dashboard__reset-btn .typography--p2{margin-top:0;margin-bottom:0}.dashboard__reset-btn{width:60%}@media screen and (min-width:700px){.dashboard__reset-btn{margin-top:0;align-self:center;margin-top:.875rem}}.dashboard__card .typography--p1,.dashboard__card .typography--p2,.dashboard__card .typography--p3,.dashboard__card .typography--h1,.dashboard__card .typography--h2,.dashboard__card .typography--h3,.dashboard__card .typography--h4{margin-top:0;margin-bottom:0}.dashboard__card{width:300px}.dashboard__card--budget{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;background-color:#fff;padding:1.875rem 1.5rem 1.5rem;border-top:1px solid #BDC5D5;box-shadow:0 2px 5px #13182c1a;border-radius:1.25rem;margin-top:1.5rem;width:360px}@media screen and (min-width:700px){.dashboard__card--budget{width:530px}}@media screen and (min-width:1100px){.dashboard__card--budget{width:650px}}.dashboard__card--budget:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001a}.dashboard__card--pie{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;background-color:#fff;padding:1.875rem 1.5rem 1.5rem;border-top:1px solid #BDC5D5;box-shadow:0 2px 5px #13182c1a;border-radius:1.25rem;margin-top:1.5rem;width:360px}@media screen and (min-width:700px){.dashboard__card--pie{width:530px}}@media screen and (min-width:1100px){.dashboard__card--pie{width:650px}}.dashboard__card--pie:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001a}.dashboard__budget-summary-amount{display:flex;flex-direction:column;gap:.5rem;align-items:center;margin:.5rem}@media screen and (min-width:700px){.dashboard__budget-summary-amount{flex-direction:row}}@media screen and (min-width:1100px){.dashboard__budget-summary-amount{flex-wrap:wrap;width:25%}}.dashboard__budget-progress{height:20px;width:200px;background-color:#bdc5d5;border-radius:4px;display:flex;justify-content:flex-start;align-items:center}@media screen and (min-width:700px){.dashboard__budget-progress{width:300px}}.dashboard__budget-progress-fill{height:20px;border-radius:4px}.dashboard__budget-progress-fill--good{background-color:#158463}.dashboard__budget-progress-fill--warn{background-color:#f59e0b}.dashboard__budget-progress-fill--over{background-color:#c94515}.dashboard__budget-change{justify-self:center;padding-top:.5rem}.dashboard__budget-change--up{color:#158463}.dashboard__budget-change--down{color:#c94515}.dashboard__pie-chart{width:100%;height:300px}.dashboard__go-expenses .typography--p2{margin-top:0;margin-bottom:0}.dashboard__go-expenses{margin-top:1rem}.card{display:flex;flex-wrap:wrap;background-color:#fff;padding:1rem 1.5rem 1.5rem;border-top:1px solid #BDC5D5;box-shadow:0 2px 5px #13182c1a}.card:first-child{border-top:none}@media screen and (min-width:700px){.card{flex-wrap:nowrap;padding:1rem 2rem}}@media screen and (min-width:1100px){.card{padding:1rem 2.5rem}}.card__field{display:flex;flex-direction:column;width:calc(50% - 30.5px);box-sizing:border-box;gap:.25rem}@media screen and (min-width:700px){.card__field{flex:1 1 0;min-width:0;width:auto}}.card__label{margin:0}@media screen and (min-width:700px){.card__label{display:none}}.card__value{display:flex;flex-direction:column;flex-wrap:wrap;justify-content:flex-start;margin:0;padding:0;gap:0}.card__actions{display:flex;flex-direction:row;justify-content:space-between;width:100%}@media screen and (min-width:700px){.card__actions{flex:.75 1 0;min-width:0;justify-content:center;gap:1rem}}.card__icon-action{display:inline-flex;align-items:center;justify-content:center}.card__icon-action:hover{opacity:.75}.card__delete-button{all:unset;cursor:pointer}.card__value-text{margin:0;inline-size:90%;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.icon{display:inline-block;vertical-align:middle;width:1.5rem;height:1.5rem}.icon--default{fill:#5c667e}.icon--active path{fill:#2e66e5}.icon--delete path{fill:#c94515}.icon--error path{fill:#c94515}.table-header{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;margin:0;gap:1rem;padding:2rem 1.5rem 1.5rem;background-color:#fff}@media screen and (min-width:700px){.table-header{padding:2rem 2rem 1.375rem;flex-direction:row;align-items:center}}@media screen and (min-width:1100px){.table-header{padding:2rem 2.5rem 1.375rem}}.table-header__title .typography--h1{margin-top:0;margin-bottom:0}@media screen and (min-width:700px){.table-header__title{flex:0 0 40%}}@media screen and (min-width:1100px){.table-header__title{flex:0 0 60%}}.table-header__search{width:calc(100% - 1.25rem);position:relative}@media screen and (min-width:700px){.table-header__search{margin-right:1rem}}.table-header__search-input{width:100%;border-radius:1.25rem;border:1px solid #BDC5D5;padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;outline:none}.table-header__search-input::placeholder{font-size:.8125rem;line-height:1.25rem}@media screen and (min-width:700px){.table-header__search-input::placeholder{font-size:.875rem;line-height:1.375rem}}.table-header__search-icon-button{position:absolute;right:.375rem;top:50%;transform:translateY(-50%);background:none;border:none;padding:0;cursor:pointer}.table-header__search-icon{position:absolute;right:-.75rem;top:50%;transform:translateY(-50%)}.table-header__button{width:100%}@media screen and (min-width:700px){.table-header__button{width:auto}}.table-row-header{display:none}.table-row-header .typography--h4{margin-top:0;margin-bottom:0}@media screen and (min-width:700px){.table-row-header{display:flex;padding:.6875rem 2rem;box-shadow:0 2px 5px #13182c1a}}@media screen and (min-width:1100px){.table-row-header{padding:.6875rem 2.5rem}}.table-row-header__cell{display:flex;align-items:center;justify-content:flex-start}.table-row-header__cell--actions{justify-content:center;text-transform:uppercase}.table-row-header__sort-button{all:unset;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;line-height:1;background-color:#f7f8f9}.table-row-header__sort-icon{display:block;transform:scale(.75);transform-origin:center}.delete-modal__wrapper{position:fixed;inset:0;background-color:#fff;display:flex;justify-content:center;align-items:center;z-index:9999}@media screen and (min-width:700px){.delete-modal__wrapper{background-color:#13182c80}}.delete-modal__content{background-color:#fff;padding:3.75rem 1.5rem;display:flex;flex-direction:column;position:relative;width:100%;height:100%}@media screen and (min-width:700px){.delete-modal__content{width:33.75rem;height:auto;padding:2.5rem}}.delete-modal__title{color:#13182c;margin:1rem 0}.delete-modal__text{color:#5c667e;line-height:1.625rem}@media screen and (min-width:700px){.delete-modal__text{margin-bottom:2rem}}.delete-modal__actions{display:flex;gap:1.0625rem;margin-top:auto;padding-bottom:1.5rem}@media screen and (min-width:700px){.delete-modal__actions{justify-content:flex-end;margin-top:0;padding-bottom:0}}.delete-modal__actions .button{flex:1}@media screen and (min-width:700px){.delete-modal__actions .button{flex:none;width:4.4375rem}}.delete-modal__close{position:absolute;top:1rem;right:1rem;background:transparent;border:none}.expenses{display:flex;flex-direction:column;justify-content:center;align-items:stretch;margin-left:1.5rem;margin-right:1.5rem}@media screen and (min-width:1100px){.expenses{margin-left:2rem;margin-right:2rem}}.expenses__pagination{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.expenses__pagination-controls{display:flex;justify-content:center;align-items:center;gap:.5rem}.expense-table__card{gap:1rem;column-gap:2.8125rem}@media screen and (min-width:700px){.expense-table__card{gap:0;column-gap:0}.expense-table__card:hover{background-color:#2e66e512}}@media screen and (min-width:700px){.expense-table__description,.expense-table__category,.expense-table__amount,.expense-table__date,.expense-table__recurrence{flex:1}.expense-table__actions{flex:.75}}.page-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem;border-bottom:1px solid #BDC5D5;margin-bottom:.5rem}.page-header__side{flex:1;display:flex;align-items:center}.page-header__back-button{all:unset;cursor:pointer;transition:opacity .2s ease}.page-header__back-button:hover{opacity:.8}.page-header__back-icon{display:block}.page-header__title{flex:2;text-align:center}.page-header__title .typography--h1{margin:0;white-space:nowrap}.expense-form{display:flex;justify-content:center;flex-direction:column;overflow:hidden;width:300px;justify-self:center;background-color:#fff;padding:0 1.5rem 1.5rem;margin:1rem 1.5rem 1.5rem;border-top:1px solid #BDC5D5;box-shadow:0 2px 5px #13182c1a;border-radius:1.25rem;gap:.75rem}@media screen and (min-width:700px){.expense-form{width:400px}}.expense-form__actions{margin-top:.5rem;display:flex;justify-content:center}@media screen and (min-width:700px){.expense-form__actions{justify-content:flex-end}}.loading-text{display:flex;justify-content:center;align-items:center;margin:1rem auto}
