@charset "UTF-8";body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before,.react-datepicker__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__sr-only{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker-wrapper{border:0;display:inline-block;padding:0}.react-datepicker{background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;color:#000;display:inline-block;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:normal;position:relative}.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{line-height:0;z-index:1}.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{background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative;text-align:center}.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__month-dropdown-container--scroll,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__year-dropdown-container--select{display:inline-block;margin:0 15px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#000;font-size:.944rem;font-weight:700;margin-top:0}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-datepicker__navigation{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;padding:0;position:absolute;text-align:center;text-indent:-999em;top:2px;width:32px;z-index:1}.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{display:block;margin-left:auto;margin-right:auto;position:relative;top:0}.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{font-size:20px;position:relative;top:-1px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.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;margin:2px;width:4rem}.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;margin:2px;width:4rem}.react-datepicker__input-time-container{clear:both;float:left;margin:5px 0 10px 15px;text-align:left;width:100%}.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{display:inline-block;margin-left:5px}.react-datepicker__time-container{border-left:1px solid #aeaeae;float:right;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{border-bottom-right-radius:.3rem;margin:0 auto;overflow-x:hidden;text-align:center;width:85px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:initial;height:calc(195px + .85rem);list-style:none;margin:0;overflow-y:scroll;padding-left:0;padding-right:0;width:100%}.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{background-color:#f0f0f0;cursor:pointer}.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{background-color:initial;cursor:default}.react-datepicker__week-number{color:#ccc;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.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{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{margin-bottom:-8px;text-align:center;white-space:nowrap}.react-datepicker__week{white-space:nowrap}.react-datepicker__day,.react-datepicker__day-name,.react-datepicker__time-name{color:#000;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__day--disabled,.react-datepicker__day-name--disabled,.react-datepicker__time-name--disabled{color:#ccc;cursor:default}.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{background-color:#f0f0f0;border-radius:.3rem}.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{background-color:#3dcc4a;border-radius:.3rem;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{background-color:#ff6803;border-radius:.3rem;color:#fff;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{background-color:#333;border-radius:4px;bottom:100%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.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{opacity:1;visibility:visible}.react-datepicker__day--in-range,.react-datepicker__day--in-selecting-range,.react-datepicker__day--selected,.react-datepicker__month-text--in-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--in-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--in-range,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected: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{background-color:#bad9f1;border-radius:.3rem;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;color:#fff}.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__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__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__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__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__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__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__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{color:#ccc;cursor:default}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{background-color:#333;border-radius:4px;bottom:70%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__input-container{display:inline-block;position:relative;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:initial;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__month-read-view,.react-datepicker__month-year-read-view,.react-datepicker__year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover,.react-datepicker__year-read-view:hover{cursor:pointer}.react-datepicker__month-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-year-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__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__year-read-view--down-arrow{right:-16px;top:0;transform:rotate(135deg)}.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown{background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;left:25%;position:absolute;text-align:center;top:30px;width:50%;z-index:1}.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover,.react-datepicker__year-dropdown:hover{cursor:pointer}.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable,.react-datepicker__year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__month-option,.react-datepicker__month-year-option,.react-datepicker__year-option{display:block;line-height:20px;margin-left:auto;margin-right:auto;width:100%}.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type,.react-datepicker__year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type,.react-datepicker__year-option:last-of-type{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;-webkit-user-select:none;user-select:none}.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover,.react-datepicker__year-option:hover{background-color:#ccc}.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected,.react-datepicker__year-option--selected{left:15px;position:absolute}.react-datepicker__close-icon{background-color:initial;border:0;cursor:pointer;display:table-cell;height:100%;outline:0;padding:0 6px 0 0;position:absolute;right:0;top:0;vertical-align:middle}.react-datepicker__close-icon:after{background-color:#216ba5;border-radius:50%;color:#fff;content:"×";cursor:pointer;display:table-cell;font-size:12px;height:16px;line-height:1;padding:2px;text-align:center;vertical-align:middle;width:16px}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{background-color:#ccc;cursor:default}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;clear:left;cursor:pointer;font-weight:700;padding:5px 0;text-align:center}.react-datepicker__portal{align-items:center;background-color:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2147483647}.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:3rem;width:3rem}@media (max-height:550px),(max-width:400px){.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:2rem;width:2rem}}.react-datepicker__portal .react-datepicker-time__header,.react-datepicker__portal .react-datepicker__current-month{font-size:1.44rem}.react-datepicker__children-container{height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem;width:13.8rem}.react-datepicker__aria-live{border:0;-webkit-clip-path:circle(0);clip-path:circle(0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker__calendar-icon{height:1em;vertical-align:-.125em;width:1em}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;height:calc(100% + .5px);left:0;pointer-events:none;position:absolute;right:0;top:0;width:calc(100% + .5px)}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}.ReactCrop__crop-selection:focus{outline:2px solid #08f;outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:#0003;background-color:var(--rc-drag-handle-bg-colour);border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);height:12px;height:var(--rc-drag-handle-size);position:absolute;width:12px;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:#08f;background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:6px;height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:6px;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:24px;height:var(--rc-drag-handle-mobile-size);width:24px;width:var(--rc-drag-handle-mobile-size)}}.app-layout{display:flex;flex-direction:column;min-height:100vh}.layout-content{display:flex;flex:1 1}.main-content{background:#f8f9fa;flex:1 1;min-height:calc(100vh - 70px);overflow-y:auto;padding:30px}.app-header{background:#fff;box-shadow:0 2px 15px #0000001a;height:70px;justify-content:space-between;padding:0 30px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.app-header,.header-left{align-items:center;display:flex}.header-left{gap:40px}.logo{background-image:url(/static/media/logo-catatanbelanja.aef3b0b21fbd3b739b43.png);background-position:0;background-repeat:no-repeat;background-size:contain;color:#333;height:0;padding-bottom:55px;padding-left:60px;text-decoration:none;width:210px}.logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;font-size:24px}.header-nav{display:flex;gap:20px}.nav-link{border-radius:8px;color:#666;font-weight:500;padding:8px 16px;text-decoration:none;transition:all .3s}.nav-link:hover{background:#f8f9fa;color:#667eea}.nav-link.active{background:#667eea;color:#fff}.header-right{align-items:center;display:flex;gap:20px}.header-btn{background:none;border:none;border-radius:8px;color:#666;cursor:pointer;font-size:18px;padding:8px;position:relative;transition:all .3s}.header-btn:hover{background:#f8f9fa;color:#667eea}.notification-badge{background:#ff6b6b;border-radius:50%;color:#fff;font-size:12px;height:18px;justify-content:center;position:absolute;right:-5px;top:-5px;width:18px}.notification-badge,.user-menu{align-items:center;display:flex}.user-menu{gap:15px}.user-info{align-items:center;background:#f8f9fa;border-radius:25px;display:flex;gap:12px;padding:8px 16px}.user-details{display:flex;flex-direction:column}.username{font-size:14px;font-weight:600}.user-email{color:#666;font-size:12px}.logout-btn{align-items:center;background:#ff6b6b;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:8px 16px;transition:all .3s}.logout-btn:hover{background:#ff5252;transform:translateY(-2px)}.sidebar{background:#fff;border-right:1px solid #e1e5e9;display:flex;flex-direction:column;height:calc(100vh - 70px);position:-webkit-sticky;position:sticky;top:70px;transition:all .3s;width:280px}.sidebar.collapsed{width:70px}.sidebar-header{align-items:center;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;padding:20px}.sidebar-header h3{color:#666;font-size:16px;overflow:hidden;white-space:nowrap}.collapse-btn{background:none;border:none;border-radius:6px;color:#666;cursor:pointer;padding:8px;transition:all .3s}.collapse-btn:hover{background:#f8f9fa;color:#667eea}.sidebar-nav{flex:1 1;overflow-y:auto;padding:20px 0}.nav-item{align-items:center;color:#666;display:flex;margin:5px 0;padding:12px 20px;position:relative;text-decoration:none;transition:all .3s}.nav-item:hover{background:#f8f9fa;color:#667eea}.nav-item.active{background:linear-gradient(90deg,#667eea1a,#0000);border-right:3px solid #667eea;color:#667eea}.nav-icon{align-items:center;display:flex;font-size:20px;justify-content:center;min-width:40px}.nav-content{flex:1 1;overflow:hidden;white-space:nowrap}.nav-label{display:block;font-size:14px;font-weight:500}.nav-description{color:#999;display:block;font-size:12px;margin-top:2px}.active-indicator{background:#51cf66;border-radius:50%;height:8px;margin-left:10px;width:8px}.sidebar.collapsed .active-indicator,.sidebar.collapsed .nav-content,.sidebar.collapsed .nav-description{display:none}.sidebar-footer{border-top:1px solid #e1e5e9;padding:20px}.quick-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.stat-item{background:#f8f9fa;border-radius:8px;padding:10px;text-align:center}.stat-label{font-size:11px;margin-bottom:4px;text-transform:uppercase}.stat-value{color:#333;font-size:16px}.page-header{align-items:center;border-bottom:2px solid #e1e5e9;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.header-left h1{color:#333;font-size:28px;margin-bottom:8px}.back-btn,.header-left p{color:#666;font-size:14px}.back-btn{align-items:center;background:#f8f9fa;border:1px solid #e1e5e9;border-radius:8px;cursor:pointer;display:flex;gap:8px;margin-bottom:10px;padding:8px 16px;transition:all .3s}.back-btn:hover{background:#e9ecef;color:#333}.header-actions{gap:15px}.header-actions,.primary-btn{align-items:center;display:flex}.primary-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s}.primary-btn:hover:not(:disabled){box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.primary-btn:disabled{cursor:not-allowed;opacity:.6}.secondary-btn{align-items:center;background:#fff;border:2px solid #667eea;border-radius:10px;color:#667eea;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s}.secondary-btn:hover:not(:disabled){background:#f8f9fa;transform:translateY(-2px)}.dashboard-page{display:flex;flex-direction:column;gap:30px}.welcome-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;padding:40px;text-align:center}.welcome-section h1{font-size:36px;margin-bottom:15px}.welcome-section p{font-size:18px;margin-bottom:30px;opacity:.9}.welcome-actions{display:flex;gap:20px;justify-content:center}.welcome-actions .primary-btn{background:#fff;color:#667eea}.welcome-actions .secondary-btn{background:#0000;border-color:#fff;color:#fff}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.stat-card{align-items:center;background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;display:flex;gap:20px;padding:25px;transition:all .3s}.stat-card:hover{box-shadow:0 10px 25px #0000001f;transform:translateY(-5px)}.stat-icon{align-items:center;border-radius:15px;color:#fff;display:flex;font-size:24px;height:60px;justify-content:center;width:60px}.stat-icon.total{background:#667eea}.stat-icon.pending{background:#ffd43b}.stat-icon.completed{background:#51cf66}.stat-icon.overdue{background:#ff6b6b}.stat-content h3{color:#333;font-size:32px;margin-bottom:5px}.stat-content p{color:#666;font-size:14px}.section{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:30px}.section-header{margin-bottom:30px}.section-header h2{color:#333;font-size:24px;margin-bottom:8px}.section-header p{color:#666;font-size:14px}.quick-actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.quick-action-card{align-items:center;background:#fff;border:2px solid #e1e5e9;border-radius:15px;color:#333;display:flex;gap:20px;padding:25px;text-decoration:none;transition:all .3s}.quick-action-card:hover{border-color:var(--action-color);box-shadow:0 10px 25px #0000001a;transform:translateY(-5px)}.action-icon{align-items:center;border-radius:12px;color:#fff;display:flex;font-size:24px;height:60px;justify-content:center;width:60px}.action-content h4{font-size:18px;margin-bottom:8px}.action-content p{color:#666;font-size:14px}.content-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:2fr 1fr}.content-card{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:25px}.card-header{align-items:center;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.card-header h3{color:#333;font-size:18px}.view-all{color:#667eea;font-size:14px;font-weight:500;text-decoration:none}.view-all:hover{text-decoration:underline}.recent-todos{display:flex;flex-direction:column;gap:15px}.recent-todo-item{align-items:center;background:#f8f9fa;border-radius:10px;display:flex;justify-content:space-between;padding:15px;transition:all .3s}.recent-todo-item:hover{background:#e9ecef;transform:translateX(5px)}.todo-info h4{font-size:15px;margin-bottom:5px}.todo-description{font-size:13px;margin-bottom:10px}.todo-tags{display:flex;gap:10px}.priority-tag{color:#fff;font-weight:600;text-transform:uppercase}.category-tag,.priority-tag{border-radius:15px;font-size:11px;padding:3px 10px}.category-tag{background:#e9ecef;color:#666}.todo-status{align-items:flex-end;display:flex;flex-direction:column;gap:5px}.status-badge{border-radius:15px;font-size:12px;font-weight:600;padding:5px 15px;text-transform:uppercase}.status-badge.pending{background:#fff3cd;color:#856404}.status-badge.completed{background:#d4edda;color:#155724}.categories-list{display:flex;flex-direction:column;gap:15px}.category-item{align-items:center;background:#f8f9fa;border-radius:10px;display:flex;gap:15px;padding:15px}.category-color{border-radius:8px;height:30px;width:30px}.category-info h4{font-size:15px;margin-bottom:3px}.category-info p{color:#666;font-size:13px}.card-footer{border-top:1px solid #e1e5e9;margin-top:20px;padding-top:20px;text-align:center}.add-category-btn{align-items:center;background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;gap:8px;margin:0 auto;padding:10px 20px}.tips-section{background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:15px;color:#fff;padding:30px}.tips-section h3{font-size:24px;margin-bottom:20px}.tips-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}.tip-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:10px;padding:20px}.tip-card h4{font-size:16px;margin-bottom:10px}.tip-card p{font-size:14px;opacity:.9}.todos-page{display:flex;flex-direction:column;gap:30px}.quick-stats-bar{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(4,1fr)}.quick-stat{background:#fff;border-radius:10px;box-shadow:0 3px 10px #00000014;padding:20px;text-align:center}.stat-label{color:#666;display:block;font-size:14px;margin-bottom:10px}.stat-value{display:block;font-size:32px;font-weight:700}.stat-value.pending{color:#ffd43b}.stat-value.completed{color:#51cf66}.stat-value.high{color:#ff6b6b}.search-filters-section{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:25px}.search-container{display:flex;gap:15px;margin-bottom:20px}.filter-toggle-btn{align-items:center;background:#f8f9fa;border:2px solid #e1e5e9;border-radius:10px;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:12px 24px;transition:all .3s}.filter-toggle-btn.active,.filter-toggle-btn:hover{background:#667eea;border-color:#667eea;color:#fff}.filters-panel{grid-gap:20px;background:#f8f9fa;border-radius:10px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px;padding:25px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{color:#333;font-size:14px;font-weight:500}.filter-select{background:#fff;border:2px solid #e1e5e9;border-radius:8px;cursor:pointer;font-size:14px;padding:10px}.filter-select:focus{border-color:#667eea;outline:none}.sort-order-buttons{display:flex;gap:10px}.sort-btn{align-items:center;background:#f8f9fa;border:2px solid #e1e5e9;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:14px;gap:5px;justify-content:center;padding:10px;transition:all .3s}.sort-btn.active,.sort-btn:hover{background:#667eea;border-color:#667eea;color:#fff}.clear-filters-btn{background:#ff6b6b;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;grid-column:1/-1;padding:12px;transition:all .3s}.clear-filters-btn:hover{background:#ff5252}.results-info{background:#e3f2fd;border-radius:10px;color:#1565c0;font-size:14px;padding:15px}.todos-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.todo-card{background:#fff;border:2px solid #0000;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:25px;transition:all .3s}.todo-card:hover{border-color:#667eea;box-shadow:0 15px 30px #0000001f;transform:translateY(-5px)}.todo-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.todo-priority{align-items:center;display:flex;gap:10px}.priority-dot{border-radius:50%;height:12px;width:12px}.priority-text{color:#666;font-size:14px;font-weight:600;text-transform:uppercase}.todo-actions{display:flex;gap:10px}.icon-btn{align-items:center;background:#f8f9fa;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:16px;height:36px;justify-content:center;transition:all .3s;width:36px}.icon-btn:hover{background:#e9ecef;transform:scale(1.1)}.icon-btn.delete:hover{background:#ff6b6b;color:#fff}.todo-card-content{margin-bottom:20px}.todo-card-content h3{color:#333;font-size:18px;margin-bottom:12px}.todo-description{color:#666;font-size:14px;line-height:1.6;margin-bottom:20px}.todo-meta{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.category-badge{background:#e9ecef;color:#666}.category-badge,.due-date{border-radius:15px;font-size:12px;padding:5px 12px}.due-date{background:#e3f2fd;color:#1565c0;gap:5px}.due-date,.todo-card-footer{align-items:center;display:flex}.todo-card-footer{border-top:1px solid #e1e5e9;justify-content:space-between;padding-top:20px}.created-date{color:#999;font-size:12px}.quick-navigation{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:30px;text-align:center}.quick-navigation h3{color:#333;margin-bottom:20px}.nav-buttons{display:flex;gap:15px;justify-content:center}.nav-btn{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:10px;cursor:pointer;font-weight:500;padding:12px 24px;transition:all .3s}.nav-btn:hover{transform:translateY(-2px)}.nav-btn.primary,.nav-btn:hover{background:#667eea;border-color:#667eea;color:#fff}.nav-btn.secondary{background:#51cf66;border-color:#51cf66;color:#fff}.add-todo-page{display:flex;flex-direction:column;gap:30px}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:10px;color:#155724;padding:20px;text-align:center}.form-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:2fr 1fr}.todo-form{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:30px}.form-section{margin-bottom:30px}.form-section h3{align-items:center;color:#333;display:flex;font-size:18px;gap:8px;margin-bottom:8px}.form-section p{color:#666;font-size:14px;margin-bottom:15px}.form-input{border:2px solid #e1e5e9;border-radius:10px;font-size:16px;padding:12px 16px;transition:all .3s;width:100%}.form-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-input.error{border-color:#ff6b6b}.error-message{color:#ff6b6b;display:block;font-size:14px;margin-top:5px}.char-count{color:#999;font-size:12px;margin-top:5px;text-align:right}.form-textarea{border:2px solid #e1e5e9;border-radius:10px;font-size:16px;min-height:120px;padding:12px 16px;resize:vertical;transition:all .3s;width:100%}.form-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-row{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.priority-options{display:flex;gap:15px}.priority-option{align-items:center;background:#fff;border:2px solid #e1e5e9;border-radius:10px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:10px;padding:15px;transition:all .3s}.priority-option:hover{border-color:#667eea;transform:translateY(-2px)}.priority-option.selected{background:#f8f9fa;border-color:#667eea}.priority-option.high{background:#fc000094;border-color:#667eea}.priority-option.medium{background:#fcfc00;border-color:#667eea}.priority-option.low{background:#00ff26ad;border-color:#667eea}.priority-icon{font-size:24px}.priority-label{font-size:14px;font-weight:500}.date-picker{cursor:pointer}.category-selection{display:flex;gap:15px}.form-select{background:#fff;border:2px solid #e1e5e9;border-radius:10px;cursor:pointer;flex:1 1;font-size:16px;padding:12px 16px}.form-select:focus{border-color:#667eea;outline:none}.manage-categories-btn{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:10px;cursor:pointer;font-weight:500;padding:12px 24px;transition:all .3s}.manage-categories-btn:hover{background:#667eea;border-color:#667eea;color:#fff}.form-error{background:#ffebee;border-radius:10px;margin:20px 0;padding:15px}.form-actions{border-top:1px solid #e1e5e9;display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:30px}.cancel-btn{align-items:center;background:#f8f9fa;border:2px solid #e1e5e9;border-radius:10px;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:12px 24px;transition:all .3s}.cancel-btn:hover:not(:disabled){background:#e9ecef;color:#333}.submit-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s}.submit-btn:hover:not(:disabled){box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.6}.spinner-small{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.tips-sidebar{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:30px}.tips-header{align-items:center;border-bottom:1px solid #e1e5e9;display:flex;gap:10px;margin-bottom:25px;padding-bottom:15px}.tips-header h3{color:#333;font-size:18px}.tip-item{border-bottom:1px solid #f8f9fa;margin-bottom:20px;padding-bottom:20px}.tip-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.tip-item h4{color:#333;font-size:16px;margin-bottom:8px}.tip-item p{color:#666;font-size:14px;line-height:1.6}.quick-links{border-top:1px solid #e1e5e9;margin-top:30px;padding-top:20px}.quick-links h4{color:#333;font-size:16px;margin-bottom:15px}.quick-links a{border-radius:8px;color:#667eea;display:block;margin-bottom:8px;padding:10px 15px;text-decoration:none;transition:all .3s}.quick-links a:hover{background:#f8f9fa;padding-left:20px}.preview-section{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:30px}.preview-section h3{color:#333;font-size:20px;margin-bottom:20px}.todo-preview{background:#f8f9fa;border:2px dashed #e1e5e9;border-radius:10px;padding:25px}.preview-header{align-items:flex-start;justify-content:space-between;margin-bottom:20px}.preview-header h4{color:#333;flex:1 1;font-size:18px;margin-right:20px}.preview-priority{padding:5px 15px;text-transform:uppercase}.preview-meta{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.preview-category{background:#e9ecef;color:#666}.preview-category,.preview-due-date{align-items:center;border-radius:15px;display:flex;font-size:12px;gap:5px;padding:5px 12px}.preview-due-date{background:#e3f2fd;color:#1565c0}.preview-status{color:#999}.categories-page{display:flex;flex-direction:column;gap:30px}.categories-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.category-card{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;display:flex;flex-direction:column;padding:25px;transition:all .3s}.category-card:hover{box-shadow:0 15px 30px #0000001f;transform:translateY(-5px)}.category-card.uncategorized{border:2px solid #868e96}.category-header{align-items:center;display:flex;gap:15px;margin-bottom:20px}.category-color{align-items:center;border-radius:12px;color:#fff;display:flex;font-size:20px;height:50px;justify-content:center;width:50px}.category-title{flex:1 1}.category-title h3{color:#333;font-size:18px;margin-bottom:5px}.category-title p{color:#999;font-size:12px}.category-actions{display:flex;gap:10px}.category-content{flex:1 1;margin-bottom:20px}.todo-count{margin-bottom:20px;text-align:center}.todo-count .count{color:#333;display:block;font-size:36px;font-weight:700}.todo-count .label{color:#666;display:block;font-size:14px}.recent-todos h4{color:#333;font-size:14px;margin-bottom:10px}.recent-todo{align-items:center;border-bottom:1px solid #f8f9fa;display:flex;justify-content:space-between;padding:8px 0}.recent-todo:last-child{border-bottom:none}.todo-title{color:#666;flex:1 1;font-size:13px}.todo-status{border-radius:10px;font-size:11px;font-weight:600;padding:3px 8px;text-transform:uppercase}.todo-status.pending{background:#fff3cd;color:#856404}.todo-status.completed{background:#d4edda;color:#155724}.no-todos{color:#999;font-style:italic;padding:20px 0;text-align:center}.category-footer{border-top:1px solid #e1e5e9;display:flex;gap:10px;padding-top:20px}.add-todo-btn,.view-todos-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:10px;transition:all .3s}.view-todos-btn{background:#f8f9fa;color:#333}.view-todos-btn:hover{background:#e9ecef}.add-todo-btn{background:#667eea;color:#fff}.add-todo-btn:hover{background:#5a67d8}.category-form-section{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:30px}.category-form{display:flex;flex-direction:column;gap:25px}.login-page,.register-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-container,.register-container{background:#fff;border-radius:25px;box-shadow:0 30px 60px #0000004d;display:grid;grid-template-columns:1fr;max-width:1200px;overflow:hidden;width:100%}.login-left,.register-left{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:60px}.brand-section h1{font-size:36px;margin-bottom:10px}.tagline{font-size:18px;margin-bottom:40px;opacity:.9}.benefits,.features{display:flex;flex-direction:column;gap:25px;margin:40px 0}.benefit,.feature{align-items:center;display:flex;gap:20px}.benefit-icon,.feature-icon{align-items:center;background:#ffffff1a;border-radius:12px;display:flex;font-size:24px;height:50px;justify-content:center;width:50px}.benefit-content h4,.feature-content h4{font-size:18px;margin-bottom:5px}.benefit-content p,.feature-content p{font-size:14px;opacity:.8}.testimonial{border-top:1px solid #ffffff1a;margin-top:auto;padding-top:30px}.quote{font-style:italic;margin-bottom:10px;opacity:.9}.author{font-size:14px;opacity:.7}.stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-top:40px}.stat h4{font-size:28px;margin-bottom:5px}.stat p{font-size:14px;opacity:.8}.login-right,.register-right{display:flex;flex-direction:column;padding:60px}.login-card,.register-card{flex:1 1}.login-header,.register-header{margin-bottom:40px;text-align:center}.login-header h2,.register-header h2{color:#333;font-size:32px;margin-bottom:10px}.login-header p,.register-header p{color:#666;font-size:16px}.social-login{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.social-btn{align-items:center;background:#fff;border:2px solid #e1e5e9;border-radius:12px;cursor:pointer;display:flex;font-weight:500;gap:10px;justify-content:center;padding:14px;transition:all .3s}.social-btn:hover{background:#f8f9fa;border-color:#667eea}.social-btn.google{color:#db4437}.social-btn.github{color:#333}.divider{color:#999;margin:30px 0;position:relative;text-align:center}.divider:before{left:0}.divider:after,.divider:before{background:#e1e5e9;content:"";height:1px;position:absolute;top:50%;width:45%}.divider:after{right:0}.login-form,.register-form{display:flex;flex-direction:column;gap:25px}.form-options{justify-content:space-between}.checkbox-label,.form-options{align-items:center;display:flex}.checkbox-label{cursor:pointer;font-size:14px;gap:8px}.forgot-password{color:#667eea;font-size:14px;text-decoration:none}.forgot-password:hover{text-decoration:underline}.login-btn,.register-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;padding:16px;transition:all .3s}.login-btn:hover:not(:disabled),.register-btn:hover:not(:disabled){box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.demo-btn{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:12px;cursor:pointer;font-size:16px;font-weight:500;padding:16px;transition:all .3s}.demo-btn:hover:not(:disabled){background:#e9ecef;border-color:#667eea}.password-strength{margin-top:10px}.strength-meter{display:flex;gap:5px;margin-bottom:5px}.strength-bar{background:#e1e5e9;border-radius:2px;flex:1 1;height:4px}.strength-bar.filled{transition:all .3s}.strength-text{font-size:12px;font-weight:500}.password-requirements{background:#f8f9fa;border-radius:8px;margin-top:15px;padding:15px}.password-requirements p{color:#666;font-size:14px;margin-bottom:10px}.password-requirements ul{list-style:none;padding:0}.password-requirements li{align-items:center;color:#999;display:flex;font-size:13px;gap:8px;margin-bottom:5px}.password-requirements li.valid{color:#51cf66}.login-footer,.register-footer{border-top:1px solid #e1e5e9;margin-top:30px;padding-top:20px;text-align:center}.login-footer a,.register-footer a{color:#667eea;font-weight:500;text-decoration:none}.login-footer a:hover,.register-footer a:hover{text-decoration:underline}.demo-info{background:#f8f9fa;border-radius:8px;font-size:12px;margin-top:15px;padding:10px}.demo-info p{margin:5px 0}.footer-links{border-top:1px solid #e1e5e9;display:flex;gap:20px;justify-content:center;margin-top:30px;padding-top:20px}.footer-links a{color:#666;font-size:14px;text-decoration:none}.footer-links a:hover{color:#667eea}.empty-state,.loading-container{align-items:center;background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;display:flex;flex-direction:column;justify-content:center;padding:60px;text-align:center}.empty-state h3{color:#333;font-size:24px;margin-bottom:15px}.empty-state p{color:#666;margin-bottom:20px;max-width:400px}@media (max-width:1200px){.content-grid,.form-container{grid-template-columns:1fr}.categories-grid,.quick-actions-grid,.stats-grid,.tips-grid,.todos-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:992px){.layout-content{flex-direction:column}.sidebar{border-bottom:1px solid #e1e5e9;border-right:none;height:auto;position:static;width:100%}.sidebar-nav{display:flex;overflow-x:auto;padding:10px}.nav-item{flex-direction:column;min-width:100px;text-align:center}.nav-content{white-space:nowrap}.sidebar-footer{display:none}.login-container,.register-container{grid-template-columns:1fr}.login-left,.register-left{display:none}}@media (max-width:768px){.app-header{height:auto;padding:15px}.app-header,.header-left{flex-direction:column;gap:15px}.header-left{text-align:center}.header-nav{flex-wrap:wrap;justify-content:center}.header-right,.user-menu{flex-direction:column;width:100%}.categories-grid,.form-row,.quick-actions-grid,.stats-grid,.tips-grid,.todos-grid{grid-template-columns:1fr}.page-header{flex-direction:column;gap:20px;text-align:center}.header-actions{flex-direction:column;width:100%}.primary-btn,.secondary-btn{justify-content:center;width:100%}.main-content{padding:20px}}@media (max-width:480px){.filters-panel{grid-template-columns:1fr}.category-selection,.nav-buttons,.priority-options,.search-container,.welcome-actions{flex-direction:column}*{-webkit-tap-highlight-color:transparent}body{font-size:14px;line-height:1.4}.app-layout{display:flex;min-height:100vh}.app-layout,.layout-content{flex-direction:column}.main-content{min-height:auto;overflow-x:hidden;padding:15px}.app-header{background:#fff;box-shadow:0 2px 10px #0000001a;height:auto;left:0;padding:10px 15px;position:fixed;right:0;top:0;z-index:1000}.app-header,.header-left{flex-direction:column;gap:10px}.header-left{width:100%}.logo h1{font-size:20px;text-align:center}.header-nav{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr);width:100%}.nav-link{border-radius:6px;font-size:12px;overflow:hidden;padding:8px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.header-right{justify-content:space-between;width:100%}.header-btn{font-size:16px;padding:6px}.notification-badge{font-size:10px;height:16px;width:16px}.user-menu{flex-direction:row;gap:10px;justify-content:space-between;width:100%}.user-info{flex:1 1;gap:8px;padding:6px 12px}.user-details{min-width:0}.username{font-size:12px}.user-email,.username{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{font-size:10px}.logout-btn{font-size:12px;padding:8px 12px;white-space:nowrap}.sidebar{box-shadow:5px 0 15px #0000001a;height:100vh;left:-280px;position:fixed;top:0;transition:transform .3s ease;width:280px;z-index:1001}.sidebar.active{transform:translateX(280px)}.sidebar.collapsed{left:-70px}.sidebar.collapsed.active{transform:translateX(70px)}.sidebar-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:1000}.sidebar-overlay.active{display:block}.mobile-menu-toggle{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;bottom:20px;box-shadow:0 4px 15px #667eea66;color:#fff;cursor:pointer;display:block;font-size:24px;height:60px;position:fixed;right:20px;width:60px;z-index:999}.mobile-bottom-nav{background:#fff;border-top:1px solid #e1e5e9;bottom:0;display:flex;left:0;padding:8px 0;position:fixed;right:0;z-index:998}.mobile-nav-item{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:inline-flex;flex:1 1;flex-wrap:nowrap;font-size:10px;gap:4px;justify-content:space-around;padding:8px;text-decoration:none;width:70px}.mobile-nav-item.active{color:#667eea}.mobile-nav-icon{font-size:20px}.page-header{flex-direction:column;gap:15px;margin:100px 0 20px;padding:15px;text-align:center}.header-left h1{font-size:22px;margin-bottom:5px}.header-left p{font-size:13px}.back-btn{font-size:12px;margin-bottom:5px;padding:6px 12px}.header-actions{flex-direction:column;gap:10px;width:100%}.primary-btn,.secondary-btn{font-size:14px;justify-content:center;padding:12px;width:100%}.dashboard-page{gap:20px;padding-bottom:80px}.welcome-section{border-radius:15px;margin-top:80px;padding:25px 20px}.welcome-section h1{font-size:24px}.welcome-section p{font-size:14px;margin-bottom:20px}.welcome-actions{flex-direction:column;gap:10px}.stats-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.stat-card{flex-direction:column;gap:10px;padding:15px;text-align:center}.stat-icon{font-size:20px;height:50px;width:50px}.stat-content h3{font-size:24px}.section{border-radius:12px;padding:20px}.section-header h2{font-size:18px}.quick-actions-grid{gap:15px;grid-template-columns:1fr}.quick-action-card{align-items:center;flex-direction:row;padding:15px}.action-icon{font-size:20px;height:50px;width:50px}.action-content h4{font-size:16px}.content-grid{gap:20px;grid-template-columns:1fr}.content-card{padding:20px}.recent-todo-item{align-items:flex-start;flex-direction:column;gap:10px}.todo-status{align-self:flex-start}.categories-list{gap:10px}.category-item{padding:12px}.tips-grid{gap:15px;grid-template-columns:1fr}.tip-card{padding:15px}.todos-page{padding-bottom:80px}.quick-stats-bar{gap:10px;grid-template-columns:repeat(2,1fr)}.quick-stat{padding:15px}.stat-value{font-size:24px}.search-filters-section{border-radius:12px;padding:15px}.search-bar,.search-container{flex-direction:column;gap:10px}.search-bar{width:100%}.search-input{font-size:14px;padding:12px 35px}.search-btn{padding:12px;width:100%}.filter-toggle-btn{justify-content:center;width:100%}.filters-panel{gap:15px;grid-template-columns:1fr;padding:15px}.sort-order-buttons{flex-direction:column}.todos-grid{gap:15px;grid-template-columns:1fr}.todo-card{padding:20px}.todo-card-header{align-items:flex-start;flex-direction:column;gap:10px}.todo-priority{align-self:flex-start}.todo-actions{align-self:flex-end}.todo-card-footer{align-items:flex-start;gap:10px}.nav-buttons,.todo-card-footer{flex-direction:column}.add-todo-page{padding-bottom:80px}.success-message{margin:10px 0;padding:15px}.form-container{gap:20px;grid-template-columns:1fr}.todo-form{padding:20px}.form-section{margin-bottom:20px}.form-row{gap:20px;grid-template-columns:1fr}.category-selection,.form-actions,.priority-options{flex-direction:column}.form-actions{gap:10px}.cancel-btn,.submit-btn{justify-content:center;width:100%}.preview-section,.tips-sidebar{padding:20px}.categories-page{padding-bottom:80px}.categories-grid{gap:15px;grid-template-columns:1fr}.category-card{padding:20px}.category-header{flex-direction:column;gap:10px;text-align:center}.category-actions{align-self:flex-end;position:absolute;right:20px;top:20px}.category-footer{flex-direction:column;gap:10px}.login-page,.register-page{align-items:stretch;padding:10px}.login-container,.register-container{border-radius:15px;grid-template-columns:1fr;min-height:100vh}.login-left,.register-left{display:block;padding:30px 20px}.brand-section h1{font-size:28px}.tagline{font-size:16px;margin-bottom:30px}.benefits,.features{gap:15px;margin:20px 0}.benefit,.feature{gap:15px}.benefit-icon,.feature-icon{font-size:20px;height:40px;width:40px}.benefit-content h4,.feature-content h4{font-size:16px}.stats{gap:15px;grid-template-columns:repeat(3,1fr);margin-top:20px}.stat h4{font-size:20px}.stat p{font-size:12px}.login-right,.register-right{padding:30px 20px}.login-header h2,.register-header h2{font-size:24px}.login-header p,.register-header p{font-size:14px}.social-login{margin-bottom:20px}.social-btn{font-size:14px;padding:12px}.login-form,.register-form{gap:20px}.form-options{align-items:flex-start;flex-direction:column;gap:10px}.demo-btn,.login-btn,.register-btn{font-size:14px;padding:14px}.footer-links{flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px;padding-top:20px}.footer-links a{font-size:12px}.empty-state,.loading-container{border-radius:12px;margin:20px 0;padding:40px 20px}.empty-state h3{font-size:20px}.form-input,.form-select,.form-textarea{font-size:14px;padding:10px 14px;width:90%}.form-textarea{min-height:100px}.date-picker,.react-datepicker-wrapper{width:100%}.color-picker{justify-content:center}.color-option{height:25px;width:25px}}@media (max-width:480px){::-webkit-scrollbar{height:4px;width:4px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:2px}.nav-item,.nav-link,button{min-height:44px}input,select,textarea{font-size:16px}.desktop-only{display:none!important}.mobile-only{display:block!important}}@media (min-width:481px) and (max-width:767px){.app-header{flex-wrap:wrap;height:auto;padding:10px 15px}.header-nav{justify-content:center;margin-top:10px;order:3;width:100%}.nav-link{font-size:13px;padding:8px 12px}.main-content{padding:20px}.categories-grid,.quick-actions-grid,.stats-grid,.todos-grid{grid-template-columns:repeat(2,1fr)}.mobile-bottom-nav,.mobile-menu-toggle{display:none}}@media (min-width:768px) and (max-width:1024px){.sidebar,.sidebar.collapsed{width:70px}.sidebar .nav-content,.sidebar-header h3{display:none}.main-content{padding:25px}.content-grid{grid-template-columns:1fr}.mobile-bottom-nav,.mobile-menu-toggle{display:none}}.mobile-only{display:none}.desktop-only{display:block}@media (hover:none) and (pointer:coarse){.nav-item:hover,.nav-link:hover,button:hover{transform:none}.todo-card:hover{box-shadow:0 5px 15px #00000014;transform:none}.primary-btn:hover,.secondary-btn:hover{box-shadow:none;transform:none}}@supports (padding:max(0px)){.app-header,.mobile-bottom-nav{padding-left:max(15px,env(safe-area-inset-left));padding-right:max(15px,env(safe-area-inset-right))}.mobile-bottom-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))}.mobile-menu-toggle{bottom:max(20px,env(safe-area-inset-bottom))}}.mobile-search-container{position:relative;width:100%}.mobile-search-toggle{align-items:center;background:#f8f9fa;border:2px solid #e1e5e9;border-radius:10px;color:#666;cursor:pointer;display:flex;font-size:16px;gap:8px;justify-content:center;padding:12px;width:100%}.mobile-search-expanded{align-items:center;background:#fff;box-shadow:0 2px 10px #0000001a;display:flex;gap:10px;left:0;padding:15px;position:fixed;right:0;top:0;z-index:1002}.mobile-search-input-wrapper{flex:1 1;position:relative}.mobile-search-icon{color:#999;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.mobile-search-input{border:2px solid #e1e5e9;border-radius:8px;font-size:16px;padding:12px 40px;width:100%}.mobile-clear-search-btn{right:40px}.mobile-clear-search-btn,.mobile-search-close{background:none;border:none;color:#999;padding:5px;position:absolute;top:50%;transform:translateY(-50%)}.mobile-search-close{font-size:16px;right:12px}.mobile-search-submit{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:12px 20px;white-space:nowrap}@media (max-width:480px){.mobile-search-input{font-size:16px}.mobile-search-submit{min-height:44px;min-width:44px}}.photo-upload-container{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;margin-bottom:25px;padding:25px}.photo-upload-header h3{align-items:center;color:#333;display:flex;font-size:18px;gap:10px;margin-bottom:8px}.photo-upload-header p{color:#666;font-size:14px;margin-bottom:20px}.upload-area{background:#f8f9fa;border:3px dashed #e1e5e9;border-radius:15px;cursor:pointer;overflow:hidden;padding:50px 30px;position:relative;text-align:center;transition:all .3s}.upload-area:hover{background:#f0f4ff;border-color:#667eea}.upload-area.drag-active{background:#f0fff4;border-color:#51cf66}.upload-area.dragging{background:#fff5f5;border-color:#ff6b6b}.upload-icon{color:#667eea;font-size:48px;margin-bottom:20px}.upload-area.drag-active .upload-icon{animation:pulse 1.5s infinite;color:#51cf66}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.upload-text h4{color:#333;font-size:20px;margin-bottom:8px}.upload-text p{color:#666;font-size:14px;margin-bottom:20px}.upload-info{background:#fffc;border-radius:8px;display:inline-block;padding:10px}.upload-info p{color:#999;font-size:12px;margin:2px 0}.upload-loading{align-items:center;display:flex;flex-direction:column;gap:15px}.upload-loading .spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;width:40px}.photo-preview{background:#fff;border-radius:12px;box-shadow:0 3px 10px #0000001a;overflow:hidden}.preview-container{height:300px;overflow:hidden;position:relative}.preview-image{height:100%;object-fit:cover;transition:transform .3s;width:100%}.preview-container:hover .preview-image{transform:scale(1.05)}.preview-overlay{align-items:center;background:#00000080;bottom:0;display:flex;gap:15px;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s}.preview-container:hover .preview-overlay{opacity:1}.preview-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s}.retake-btn{background:#fff;color:#333}.remove-btn{background:#ff6b6b;color:#fff}.preview-btn:hover{box-shadow:0 5px 15px #0003;transform:translateY(-2px)}.preview-info{background:#f8f9fa;border-top:1px solid #e1e5e9;justify-content:space-between;padding:20px}.file-info,.preview-info{align-items:center;display:flex}.file-info{gap:12px}.file-info svg{color:#667eea;font-size:20px}.file-details{display:flex;flex-direction:column}.file-name{color:#333;font-size:14px;font-weight:600;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{color:#999;font-size:12px}.thumbnail-preview{align-items:center;display:flex;flex-direction:column;gap:5px}.thumbnail-image{border:2px solid #e1e5e9;border-radius:8px;height:60px;object-fit:cover;width:60px}.thumbnail-label{color:#999;font-size:11px}.upload-error{align-items:center;background:#ffebee;border:1px solid #ffcdd2;border-radius:8px;color:#c62828;display:flex;gap:10px;margin:15px 0;padding:15px}.upload-error svg{flex-shrink:0}.close-error{background:none;border:none;color:#c62828;cursor:pointer;font-size:20px;margin-left:auto;padding:0 5px}.upload-tips{background:#f0fff4;border:1px solid #d4edda;border-radius:10px;margin-top:25px;padding:20px}.upload-tips h4{align-items:center;color:#155724;display:flex;gap:8px;margin-bottom:10px}.upload-tips ul{list-style:none;padding:0}.upload-tips li{color:#155724;font-size:14px;padding:5px 0 5px 20px;position:relative}.upload-tips li:before{color:#51cf66;content:"✓";font-weight:700;left:0;position:absolute}.crop-btn{background:#ffd43b;color:#333;font-weight:500;margin-top:15px;padding:10px 20px}.crop-btn:hover{background:#ffc107;transform:translateY(-2px)}.image-modal-overlay{align-items:center;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.image-modal-content{background:#fff;border-radius:10px;max-height:90%;max-width:90%;overflow:hidden;position:relative}.close-modal{align-items:center;background:#000000b3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;position:absolute;right:15px;top:15px;width:40px;z-index:10}.modal-image{height:auto;max-height:70vh;object-fit:contain;width:100%}.image-info{background:#fff;padding:20px}.image-info h4{color:#333;margin-bottom:10px}.image-info p{color:#666;font-size:14px;line-height:1.6}.todo-photo-thumbnail{border-radius:10px;cursor:pointer;flex-shrink:0;height:100px;margin-right:20px;overflow:hidden;position:relative;width:100px}.todo-photo-thumbnail img{height:100%;object-fit:cover;transition:transform .3s;width:100%}.todo-photo-thumbnail:hover img{transform:scale(1.1)}.photo-overlay{align-items:center;background:#0009;bottom:0;color:#fff;display:flex;flex-direction:column;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s}.todo-photo-thumbnail:hover .photo-overlay{opacity:1}.photo-overlay svg{font-size:24px;margin-bottom:5px}.photo-overlay span{font-size:12px;font-weight:500}.image-cropper-modal{background:#fff;border-radius:15px;max-width:800px;overflow:hidden;width:100%}.cropper-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:25px;text-align:center}.cropper-header h3{align-items:center;display:flex;font-size:24px;gap:10px;justify-content:center;margin-bottom:8px}.cropper-header p{opacity:.9}.cropper-container{max-height:500px;overflow:auto;padding:25px}.ReactCrop{max-width:100%}.cropper-controls{background:#f8f9fa;border-top:1px solid #e1e5e9;padding:20px}.crop-presets{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.preset-btn{background:#fff;border:2px solid #e1e5e9;border-radius:8px;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .3s}.preset-btn.active,.preset-btn:hover{border-color:#667eea}.preset-btn.active{background:#667eea;color:#fff}.crop-actions{display:flex;gap:15px;justify-content:flex-end}.crop-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s}.reset-btn{background:#f8f9fa;border:2px solid #e1e5e9;color:#333}.cancel-btn{background:#ff6b6b;color:#fff}.confirm-btn{background:#51cf66;color:#fff}.confirm-btn:disabled{cursor:not-allowed;opacity:.5}.crop-btn:hover:not(:disabled){box-shadow:0 5px 15px #0000001a;transform:translateY(-2px)}.cropper-tips{background:#fff5e6;border-top:1px solid #ffe8cc;padding:20px}.cropper-tips h4{align-items:center;color:#e67700;display:flex;gap:8px;margin-bottom:10px}.cropper-tips ul{list-style:none;padding:0}.cropper-tips li{color:#e67700;font-size:14px;padding:5px 0 5px 20px;position:relative}.cropper-tips li:before{color:#ff922b;content:"•";font-size:20px;left:0;position:absolute}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.modal-content{max-height:90vh;max-width:900px;overflow:auto;width:100%}.preview-sidebar{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:25px}.preview-header{align-items:center;border-bottom:1px solid #e1e5e9;display:flex;gap:10px;margin-bottom:25px;padding-bottom:15px}.preview-header h3{color:#333;font-size:18px}.todo-preview-card{border:2px solid #e1e5e9;border-radius:12px;margin-bottom:25px;overflow:hidden}.preview-photo{height:200px;overflow:hidden}.preview-photo img{height:100%;object-fit:cover;width:100%}.preview-content{padding:20px}.preview-content h4{color:#333;font-size:18px;margin-bottom:10px}.preview-description{color:#666;font-size:14px;line-height:1.6;margin-bottom:20px}.preview-details{display:flex;flex-direction:column;gap:12px}.preview-detail{align-items:center;border-bottom:1px dashed #e1e5e9;display:flex;justify-content:space-between;padding-bottom:8px}.preview-detail:last-child{border-bottom:none}.preview-detail strong{color:#333;font-size:14px}.preview-detail span{color:#666;font-size:14px}.preview-priority{border-radius:15px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.preview-tips{background:#e3f2fd;border:1px solid #bbdefb;border-radius:10px;padding:20px}.preview-tips h4{align-items:center;color:#1565c0;display:flex;gap:8px;margin-bottom:10px}.preview-tips ul{list-style:none;padding:0}.preview-tips li{color:#1565c0;font-size:14px;padding:5px 0 5px 20px;position:relative}.preview-tips li:before{content:"💡";left:0;position:absolute}@media (max-width:768px){.photo-upload-container{padding:20px}.upload-area{padding:30px 20px}.preview-container{height:200px}.preview-overlay{flex-direction:column;gap:10px;padding:20px}.preview-btn{justify-content:center;width:100%}.preview-info{align-items:stretch;flex-direction:column;gap:15px}.file-info{justify-content:center;text-align:center}.thumbnail-preview{align-self:center}.todo-photo-thumbnail{height:80px;margin-right:15px;width:80px}.crop-presets{justify-content:center}.crop-actions{flex-direction:column}.crop-btn{justify-content:center;width:100%}.image-modal-content{max-height:95%;max-width:95%}}@media (max-width:480px){.upload-text h4{font-size:16px}.upload-text p{font-size:12px}.preview-container{height:150px}.todo-photo-thumbnail{height:60px;margin-right:10px;width:60px}.photo-overlay span{display:none}.modal-image{max-height:60vh}}.edit-todo-page{display:flex;flex-direction:column;gap:30px;padding-bottom:80px}.photo-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:15px}.danger-btn{align-items:center;background:#ff6b6b;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:10px 20px;transition:all .3s}.danger-btn:hover{background:#ff5252;transform:translateY(-2px)}.status-options{display:flex;gap:15px}.status-option{background:#fff;border:2px solid #e1e5e9;border-radius:10px;cursor:pointer;flex:1 1;font-weight:500;padding:15px;text-align:center;transition:all .3s}.status-option:hover{border-color:#667eea;transform:translateY(-2px)}.status-option.selected{background:#f0f4ff;border-color:#667eea}.status-option.pending.selected{background:#fff9db;border-color:#ffd43b}.status-option.completed.selected{background:#ebfbee;border-color:#51cf66}.existing-photo-badge{background:#000000b3;right:10px}.existing-photo-badge,.photo-badge{border-radius:15px;color:#fff;font-size:12px;font-weight:500;padding:5px 10px;position:absolute;top:10px}.photo-badge{background:#667eea;left:10px}.preview-badge{background:#ffd43b;border-radius:15px;color:#333;font-size:12px;font-weight:600;margin-left:auto;padding:5px 15px}.changes-summary{background:#f8f9fa;border-radius:10px;margin:20px 0;padding:20px}.changes-summary h4{align-items:center;color:#333;display:flex;gap:8px;margin-bottom:15px}.changes-summary ul{list-style:none;padding:0}.changes-summary li{border-bottom:1px solid #e9ecef;color:#51cf66;font-size:14px;padding:8px 0 8px 25px;position:relative}.changes-summary li:last-child{border-bottom:none}.changes-summary li:before{color:#51cf66;content:"✓";font-weight:700;left:0;position:absolute}.preview-status{border-radius:15px;font-size:12px;font-weight:600;padding:4px 12px}.preview-status.pending{background:#fff3cd;color:#856404}.preview-status.completed{background:#d4edda;color:#155724}.reset-btn.secondary-btn{background:#f8f9fa;border:2px solid #e1e5e9;color:#333}.reset-btn.secondary-btn:hover{background:#e9ecef;border-color:#dee2e6}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.quick-actions-section{background:#fff;border-radius:15px;box-shadow:0 5px 15px #00000014;padding:25px;text-align:center}.quick-actions-section h3{color:#333;margin-bottom:20px}.quick-action-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.quick-action-btn{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:10px;cursor:pointer;font-weight:500;padding:12px 24px;transition:all .3s}.quick-action-btn:hover{background:#e9ecef;transform:translateY(-2px)}.quick-action-btn.primary{background:#667eea;border-color:#667eea;color:#fff}.quick-action-btn.primary:hover{background:#5a67d8}.quick-action-btn.secondary{background:#51cf66;border-color:#51cf66;color:#fff}.quick-action-btn.secondary:hover{background:#40c057}.icon-btn.edit{background:#339af0;color:#fff}.icon-btn.edit:hover{background:#228be6}@media (max-width:768px){.photo-actions{flex-direction:column}.crop-btn,.danger-btn{justify-content:center;width:100%}.quick-action-buttons,.status-options{flex-direction:column}.quick-action-btn{width:100%}.form-actions{flex-direction:column;gap:10px}.cancel-btn,.reset-btn,.submit-btn{justify-content:center;width:100%}}@media (max-width:480px){.existing-photo-badge,.photo-badge{font-size:10px;padding:3px 8px}.preview-badge{font-size:10px;padding:3px 10px}}
/*# sourceMappingURL=main.3aef1ab4.css.map*/