@charset "UTF-8";.header-bg{background:#fff;width:100%;padding:.5rem 0;box-shadow:0 2px 4px #0000001a}.header-container{max-width:1000px;margin:0 auto;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;font-family:Segoe UI,sans-serif}.logo{color:#005288;margin:0}.user-greeting{font-weight:700;color:#005288;font-size:1.1rem}.nav-bar{background:#005288;width:100%;padding:.75rem 0;box-shadow:0 2px 4px #0000001a}.nav-container{max-width:1000px;margin:0 auto;padding:0 1rem;display:flex;align-items:center;font-family:Segoe UI,sans-serif}.nav-link{color:#fff;text-decoration:none;margin-right:1.5rem;font-weight:700;font-family:Segoe UI,sans-serif}.logout-btn{background:transparent;border:1px solid white;color:#fff;padding:.25rem .75rem;border-radius:4px;cursor:pointer;font-weight:700;transition:background-color .2s;font-family:Segoe UI,sans-serif}.expense-item{display:flex;align-items:center;padding:8px 0;border-bottom:1px solid #eee;position:relative;overflow:hidden}.expense-item.even{background-color:#fff}.expense-item.odd{background-color:#f9f9f9}.expense-item-content{display:flex;justify-content:space-between;align-items:center;flex:1;padding:0 8px}.expense-name{flex-grow:1;margin-right:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-price{font-weight:700;width:auto;min-width:80px;text-align:right}.delete-btn{background-color:#f44336;color:#fff;border:none;border-radius:4px;padding:4px 8px;margin-left:16px;margin-right:8px;cursor:pointer}.delete-btn:hover{background-color:#d32f2f}.swipe-delete-indicator{position:absolute;right:0;top:0;height:100%;width:100px;background-color:#f44336;color:#fff;display:flex;align-items:center;justify-content:center;transform:translate(100%);display:none}@media screen and (max-width: 768px){.expense-item{cursor:grab;padding:0}.expense-item-content{width:100%;padding:8px 0}.expense-name{padding:.5rem .75rem;margin-right:0}.expense-price{padding:.5rem .75rem;background-color:#e6f0fa;min-width:70px}.delete-btn{display:none}.swipe-delete-indicator{display:flex}}.expense-group{background:#f5f5f5;padding:1rem;margin-bottom:2rem;border-radius:8px;width:100%;box-sizing:border-box}.category-section{margin-bottom:1rem}.category-heading{margin:.75rem 0 .5rem;padding:.3rem 0;border-bottom:1px solid #ccc;font-size:1rem;color:#666}.expenses-list{list-style:none;padding:0;margin-left:0;width:100%}.group-summary{margin-top:1rem;padding-top:.5rem;border-top:1px solid #ccc;font-size:.95rem;display:flex;flex-wrap:wrap;justify-content:space-between;font-weight:700}.summary-item{display:flex;justify-content:space-between;width:48%;margin-bottom:.5rem}.summary-label{color:#555}.summary-value{font-weight:700}.add-item-btn{margin-top:1rem;background:#005288;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-weight:700;cursor:pointer;display:flex;align-items:center;transition:background-color .2s;width:100%;justify-content:center}.plus-icon{margin-right:5px;font-size:1.1rem}.shared-group{background-color:#f0f7ff;border-left:4px solid #3498db}.shared-by{font-size:.8rem;font-weight:400;color:#666;font-style:italic;margin-left:8px}.shared-btn{background-color:#3498db!important}.groups-section{margin-bottom:2rem}.groups-section h3{margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #eee;color:#444}.shared-groups-section{margin-top:2rem}@media screen and (max-width: 768px){.expense-group{padding:.75rem;margin-bottom:1.5rem;width:100%;max-width:100%}.expenses-list{margin-left:0}.group-summary{flex-direction:column}.summary-item{width:100%;margin-bottom:.3rem}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.date-navigation{display:flex;align-items:center;justify-content:center;background:#005288;color:#fff;padding:.5rem 1rem;border-radius:8px;font-weight:700;margin:1rem 0}.date-nav-btn{color:#fff;background:none;border:none;font-size:1.5rem;cursor:pointer}.date-nav-btn.disabled{cursor:not-allowed;opacity:.5}.date-display{margin:0 1rem}.date-picker-wrapper{margin-left:1rem}.calendar-btn{background:none;border:none;cursor:pointer;font-size:1.2rem}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-family:Segoe UI,sans-serif;font-size:1rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:#005288;box-shadow:0 0 0 2px #00528833}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.btn-submit:hover{background-color:#0069b4}.price-input-container{position:relative;width:100%;padding-left:.1rem}.currency-symbol{position:absolute;top:48%;left:3px;transform:translateY(-50%);color:#444}.form-control-with-symbol{padding-left:25px}.expense-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.expense-modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 12px #0003;padding:0;box-sizing:border-box}.expense-modal-header{padding:20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.expense-modal-header h2{margin:0;color:#005288}.close-button{border:none;background:none;font-size:24px;cursor:pointer;color:#777}.expense-modal-body{overflow-y:auto;padding:20px;flex-grow:1}.expense-category{margin-bottom:25px}.category-title{color:#005288;border-bottom:2px solid #eee;padding-bottom:5px;margin-bottom:10px}.expense-list{display:flex;flex-direction:column;gap:8px}.expense-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border-radius:6px;background-color:#f9f9f9;transition:background-color .2s}.expense-item:hover{background-color:#f0f0f0}.expense-item-left{display:flex;flex-direction:column}.expense-item-name{font-weight:500}.expense-item-details{font-size:.85rem;color:#666;margin-top:3px}.expense-item-price{font-weight:600}.expense-item-price.shared{color:#6200ea}.expense-modal-footer{padding:15px 20px;border-top:1px solid #eee}.total-amount{display:flex;justify-content:space-between;font-weight:600;font-size:1.1rem}.total-value{color:#005288}@media (max-width: 768px){.expense-modal-content{width:95%;max-height:80vh}.expense-modal-search{padding:8px 16px}.search-input{font-size:13px}}.expense-modal-search{padding:10px 20px;border-bottom:1px solid #eee;background-color:#f9f9f9;box-sizing:border-box}.search-input-container{position:relative;width:100%}.search-input{width:100%;padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px;box-sizing:border-box}.clear-button{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:#888;font-size:16px;cursor:pointer;padding:0}.clear-button:hover{color:#333}.login-prompt{text-align:center;padding:3rem 1rem}.login-heading{margin-bottom:2rem;color:#005288}.google-btn{background:#005288;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:700;cursor:pointer;font-size:1rem;display:flex;align-items:center;margin:0 auto}.google-icon{margin-right:10px}.page-container{background-color:#f7f9fb;color:#000;min-height:100vh;padding:2rem;font-family:Segoe UI,sans-serif}.content-container{max-width:1000px;margin:0 auto;background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 12px #0000000d}.dashboard-actions{display:flex;justify-content:center;margin-bottom:20px}.view-all-button{background-color:#005288;color:#fff;border:none;border-radius:4px;padding:10px 16px;font-size:14px;cursor:pointer;transition:background-color .2s;font-weight:600}.view-all-button:hover{background-color:#0069b4}.view-all-button:disabled{background-color:#ccc;cursor:not-allowed}@media screen and (max-width: 768px){.page-container{padding:.25rem}.content-container{padding:.5rem;border-radius:0;box-shadow:none}}.settings-container{max-width:800px;margin:0 auto;padding:2rem;font-family:Segoe UI,sans-serif}.settings-section{margin-bottom:2rem}.currency-select{padding:.5rem;border-radius:4px;border:1px solid #ccc;font-family:Segoe UI,sans-serif;margin-left:.5rem}.groups-table{width:100%;border-collapse:collapse;margin-top:1rem}.groups-table th{padding:.75rem;background-color:#005288;color:#fff;font-weight:400}.text-left{text-align:left}.drag-column{width:30px}.row-even{background:#f8f9fb}.row-odd{background:#e9edf1}.row-even td,.row-odd td{padding:.5rem}.form-input,.form-select{width:100%;padding:.5rem;border-radius:4px;border:1px solid #ccc;font-family:Segoe UI,sans-serif;box-sizing:border-box}.btn-save,.btn-delete,.btn-add{padding:.5rem .75rem;border:none;border-radius:4px;cursor:pointer;font-family:Segoe UI,sans-serif;font-weight:700}.btn-save{background-color:#005288;color:#fff;transition:background-color .3s}.btn-delete{background-color:#f44336;color:#fff;margin-left:.5rem}.btn-add{background-color:#005288;color:#fff}.drag-handle{cursor:grab;text-align:center;font-size:1.2rem}.add-group-title{margin-top:2rem}.add-group-form{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.add-group-form .form-input,.add-group-form .form-select{flex:1;min-width:120px}.add-group-form .btn-add{min-width:80px}hr{border:none;border-top:1px solid #ddd;margin:1.5rem 0}.row-saved{background-color:#4caf5033!important;transition:background-color .5s ease}.row-saved td{animation:flash-success 2s}@keyframes flash-success{0%{background-color:#4caf5080}to{background-color:transparent}}.row-saved .btn-save,.btn-save.saved{background-color:#4caf50}.btn-share{background-color:#2ecc71;color:#fff;border:none;padding:.5rem .75rem;border-radius:4px;margin-left:.5rem;cursor:pointer;position:relative;font-weight:700;font-family:Segoe UI,sans-serif;transition:background-color .3s}.btn-share:hover{background-color:#27ae60}.share-badge{position:absolute;top:-8px;right:-8px;background-color:#f44336;color:#fff;font-size:11px;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 2px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;padding:2rem;border-radius:8px;width:90%;max-width:500px;box-shadow:0 4px 12px #00000026}.modal-content h2{margin-top:0;color:#005288;margin-bottom:1.5rem}.modal-content h3{margin-top:1.5rem;margin-bottom:.75rem;color:#444;font-size:1.1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:700;color:#444}.form-control{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-family:Segoe UI,sans-serif;font-size:1rem;box-sizing:border-box}.form-control:focus{outline:none;border-color:#005288;box-shadow:0 0 0 2px #00528833}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.btn-submit{background-color:#005288;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-weight:700;transition:background-color .2s;font-family:Segoe UI,sans-serif}.btn-submit:hover:not(:disabled){background-color:#0069b4}.btn-submit:disabled{background-color:#ccc;cursor:not-allowed}.btn-cancel{background-color:#f2f2f2;color:#444;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-weight:700;transition:background-color .2s;font-family:Segoe UI,sans-serif}.btn-cancel:hover{background-color:#e0e0e0}.error-message{color:#f44336;margin-bottom:16px;padding:8px;background-color:#ffebee;border-radius:4px}.success-message{color:#43a047;margin-bottom:16px;padding:8px;background-color:#e8f5e9;border-radius:4px}.shared-users-section{margin-top:1.5rem;border-top:1px solid #eee;padding-top:1rem}.shared-users-section h3{margin-top:0;color:#005288;font-size:1.1rem}.shared-users-list{list-style:none;padding:0;margin:.5rem 0 0}.shared-user-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:#f5f5f5;border-radius:4px;margin-bottom:8px}.btn-remove{background-color:#f44336;color:#fff;border:none;padding:.4rem .75rem;border-radius:4px;cursor:pointer;font-size:.85rem;transition:background-color .2s}.btn-remove:hover:not(:disabled){background-color:#d32f2f}.btn-remove:disabled{background-color:#ccc;cursor:not-allowed}.modal-footer{margin-top:2rem;text-align:right}.trash-icon{font-style:normal;display:flex;align-items:center;justify-content:center}.confirmation-dialog{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1100}.confirmation-content{background-color:#fff;padding:1.5rem;border-radius:6px;max-width:400px;box-shadow:0 4px 12px #00000026;text-align:center}.confirmation-actions{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.btn-confirm{background-color:#f44336;color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;font-weight:700}.monthly-budget-container{display:flex;max-width:1200px;margin:0 auto;font-family:Segoe UI,sans-serif}.monthly-budget{flex:3;background-color:#f7f9fb;padding:2rem;border-radius:8px}.budget-sidebar{flex:1;background-color:#f9f9f9;padding:1.5rem;margin-left:2rem;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 6px #0000001a;align-self:flex-start;position:sticky;top:2rem}.budget-name-container{display:flex;margin-bottom:1.5rem;align-items:center}.budget-name-input{flex:1;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:16px}.save-btn{background-color:#005288;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;margin-left:.5rem}.save-btn:hover{background-color:#003d66}.budget-list{list-style:none;padding:0;margin:0}.budget-list-item{padding:.5rem;margin-bottom:.5rem;cursor:pointer;border-radius:4px;transition:background-color .2s}.budget-list-item:hover{background-color:#e9ecef}.add-budget-btn{background-color:#007bff;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;width:100%}.budget-category{margin-bottom:2rem}.budget-category h3{margin-bottom:1rem;color:#005288}.budget-items{list-style:none;padding:0;margin:0 0 1rem}.budget-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border:1px solid #ccc;border-radius:4px;margin-bottom:.5rem}.budget-item .item-name{flex:1}.budget-item .item-price{margin-left:1rem;font-weight:700}.delete-btn{background-color:#f44336;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.add-item-form{display:flex;gap:.5rem}.add-item-form input{flex:1;padding:.5rem;border:1px solid #ccc;border-radius:4px}.add-btn{background-color:#005288;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.add-budget-btn{background-color:#007bff;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;margin-bottom:1rem}.budget-list-widget{position:absolute;right:20px;top:100px;width:200px;background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;padding:16px;box-shadow:0 4px 6px #0000001a}.budget-list-widget h3{margin-bottom:1rem;font-size:16px}.budget-list-item{padding:.5rem;cursor:pointer;border-radius:4px}.budget-list-item.active{background-color:#007bff;color:#fff}.floating-totals{position:fixed;background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;padding:16px;box-shadow:0 4px 6px #0000001a;z-index:1000;width:300px;cursor:grab}.floating-totals .drag-handle{display:flex;justify-content:space-between;align-items:center;background-color:#ddd;padding:4px 8px;border-radius:4px;cursor:grab;font-weight:700;margin-bottom:8px}.floating-totals .collapse-btn{background:none;border:none;font-size:16px;font-weight:700;cursor:pointer;margin-right:8px}.floating-totals h3{margin:0 0 8px;font-size:18px}.monthly-budget p{background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:.5rem 1rem;font-family:Segoe UI,sans-serif;font-size:16px;line-height:1.5;color:#333;box-shadow:0 2px 4px #0000001a;margin-bottom:1rem}.floating-totals p{display:flex;justify-content:space-between;align-items:center;margin:.5rem 0;font-size:14px;font-weight:700;color:#444}.floating-totals .totals-label{flex:1;text-align:left}.floating-totals .totals-value{text-align:left;min-width:100px}@media (max-width: 768px){.monthly-budget-container{flex-direction:column}.budget-sidebar{margin-left:0;margin-top:2rem;position:static}.floating-totals{position:static;width:100%;margin-bottom:1.5rem;cursor:default}.floating-totals .drag-handle{display:none}}.budget-actions{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.duplicate-budget-btn{background-color:#28a745;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;width:100%}.duplicate-budget-btn:hover{background-color:#218838}.delete-budget-btn{background-color:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;width:100%}.delete-budget-btn:hover{background-color:#c82333}.reports-container{max-width:1200px;margin:0 auto;padding:2rem;font-family:Segoe UI,sans-serif}.reports-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.month-navigation{display:flex;align-items:center;gap:1rem}.nav-button{background-color:#007bff;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:16px}.nav-button:hover{background-color:#0056b3}.current-period{font-size:1.25rem;font-weight:700;margin-bottom:1.5rem}.report-content{display:flex;flex-wrap:wrap;gap:2rem;margin-top:2rem}.chart-container{flex:1;min-width:300px;background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:1.5rem}.pie-chart{max-width:400px;margin:0 auto}.table-container{flex:1;min-width:350px}.chart-container h3,.table-container h3{margin-top:0;margin-bottom:1rem;color:#333;font-size:1.25rem}.category-totals-table{width:100%;border-collapse:collapse;box-shadow:0 4px 6px #0000001a;border-radius:8px;overflow:hidden}.category-totals-table th,.category-totals-table td{padding:1rem;text-align:left;border-bottom:1px solid #ddd}.category-totals-table th{background-color:#f5f5f5;font-weight:700}.category-totals-table tr:last-child td{border-bottom:none}.category-totals-table tbody tr:hover{background-color:#f9f9f9}.table-amount{font-weight:700;text-align:right}.grand-total-row{background-color:#f0f0f0}.grand-total-row td{font-weight:700}.custom-date-range{display:flex;gap:1rem;align-items:center;margin-top:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.custom-date-range input{padding:.5rem;border:1px solid #ccc;border-radius:4px}.custom-date-range button{background-color:#007bff;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.no-data-message{text-align:center;padding:2rem;font-style:italic;color:#666}.error-message{color:#d9534f;text-align:center;padding:1rem}@media (max-width: 768px){.report-content{flex-direction:column}.chart-container,.table-container{width:100%}.reports-header{flex-direction:column;align-items:flex-start;gap:1rem}.month-navigation{width:100%;justify-content:space-between}}body{margin:0;font-family:Segoe UI,sans-serif;background-color:#fff}.container{max-width:1000px;margin:0 auto;padding:0 1rem}.card{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 12px #0000000d}.btn{cursor:pointer;font-family:Segoe UI,sans-serif;font-weight:700;border-radius:8px;transition:background-color .2s}.btn-primary{background:#005288;color:#fff;border:none;padding:.5rem 1rem}.btn-primary:hover{background:#0069b4}.btn-danger{background-color:#f44336;color:#fff;border:none;padding:.25rem .5rem}
