@charset "UTF-8";.custom-login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{animation:slideIn .3s ease;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:450px;overflow:hidden;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.login-header{background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:1px solid #e9ecef;padding:2rem;text-align:center}.login-header h1{color:#495057;font-size:2rem;font-weight:700;margin:0 0 .5rem}.login-header p{color:#6c757d;font-size:.95rem;margin:0}.login-type-selector{background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex}.type-btn{background:#0000;border:none;color:#6c757d;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:600;padding:1rem;position:relative;transition:all .3s ease}.type-btn:hover{background:#667eea0d}.type-btn.active{background:#fff;color:#667eea}.type-btn.active:after{background:linear-gradient(135deg,#667eea,#764ba2);bottom:0;content:"";height:3px;left:0;position:absolute;right:0}.login-form{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{font-size:.9rem;font-weight:600;margin-bottom:.5rem}.form-group input{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease;width:100%}.form-group input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled{cursor:not-allowed;opacity:.6}.error-message{align-items:center;border:1px solid #ffebee;border-radius:8px;display:flex;font-size:.9rem;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.login-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-transform:uppercase;transition:all .3s ease;width:100%}.login-btn:hover:not(:disabled){box-shadow:0 10px 30px #667eea4d;transform:translateY(-2px)}.login-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.login-footer{background:linear-gradient(135deg,#f8f9fa,#fff);border-top:1px solid #e9ecef;padding:1.5rem 2rem}.info-text{color:#6c757d;font-size:.9rem;margin:0;text-align:center}.admin-btn{background:linear-gradient(135deg,#dc3545,#c82333)}.admin-btn:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#a71d2a);box-shadow:0 10px 30px #dc35454d}.switch-link{color:#667eea;display:inline-block;font-size:.875rem;margin-top:1rem;text-decoration:none;transition:color .2s}.switch-link:hover{color:#764ba2;text-decoration:underline}@media (max-width:480px){.login-card{max-width:100%}.login-form{padding:1.5rem}.login-header h1{font-size:1.5rem}}.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-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;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,.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}.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}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.App{background:#fff;display:flex;flex-direction:column;height:100vh}.App-header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 6px #0000001a;color:#fff;padding:0;position:relative;z-index:10}.header-content{align-items:center;display:flex;justify-content:space-between;max-width:100%;padding:1.5rem 2rem}.App-header h1{background:linear-gradient(45deg,#fff,#f0f0f0);-webkit-background-clip:text;background-clip:text;font-size:1.8rem;font-weight:700;margin:0}.user-info{align-items:center;display:flex;gap:1rem}.user-email{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:20px;font-size:.9rem;opacity:.95;padding:.5rem 1rem}.admin-button,.logout-button{border:none;border-radius:25px;cursor:pointer;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:.5rem 1.2rem;text-transform:uppercase;transition:all .3s ease}.admin-button{background:linear-gradient(135deg,#28a745,#20c997);box-shadow:0 4px 15px #28a7454d;color:#fff}.admin-button:hover{box-shadow:0 6px 20px #28a74566;transform:translateY(-2px)}.logout-button{background:linear-gradient(135deg,#dc3545,#e74c3c);box-shadow:0 4px 15px #dc35454d;color:#fff}.logout-button:hover{box-shadow:0 6px 20px #dc354566;transform:translateY(-2px)}.password-button{background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:25px;box-shadow:0 4px 15px #4caf504d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin:0 .5rem;padding:.5rem 1.2rem;transition:all .3s ease}.password-button:hover{box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.password-modal{animation:modalSlideIn .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;left:50%;max-height:90vh;max-width:450px;overflow-y:auto;padding:2rem;position:absolute;top:50%;transform:translate(-50%,-50%);width:90%}.password-modal h2{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.5rem;margin-bottom:1.5rem;padding-bottom:1rem;text-align:center}.password-form{margin-top:1rem}.password-form .form-group{margin-bottom:1.5rem}.password-form label{color:#555;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.password-input{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;padding:.75rem;transition:all .3s ease;width:100%}.password-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.password-error{background:#fff5f5;border:1px solid #ffebee;border-radius:8px;color:#dc3545}.password-error,.password-success{align-items:center;display:flex;font-size:.9rem;gap:.5rem;margin:1rem 0;padding:.75rem}.password-success{animation:fadeIn .3s ease;background:#f0fff4;border:1px solid #b7e4c7;border-radius:8px;color:#2d6a4f}.modal-button-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-button-primary:hover{background:linear-gradient(135deg,#5a67d8,#6b4199)}.modal-button-primary:disabled{cursor:not-allowed;opacity:.7}.content{background:#f8f9fa;display:flex;flex:1 1;overflow:hidden}.sidebar{background:#fff;border-right:1px solid #e9ecef;box-shadow:2px 0 10px #0000000d;display:flex;flex-direction:column;width:280px}.sidebar-header{background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:2px solid #e9ecef;padding:1.5rem}.sidebar-header h3{color:#495057;font-size:1.2rem;font-weight:600;margin:0 0 1rem}.search-input{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;font-size:.9rem;padding:.75rem 1rem;transition:all .3s ease;width:100%}.search-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.bot-list{flex:1 1;overflow-y:auto;padding:.5rem}.sidebar-item{background:#f8f9fa;border:2px solid #0000;border-radius:10px;cursor:pointer;margin-bottom:.5rem;overflow:hidden;padding:1rem;position:relative;text-align:left;transition:all .3s ease;width:100%}.sidebar-item:hover:not(:disabled){background:linear-gradient(135deg,#f8f9fa,#fff);border-color:#667eea;color:#000;transform:translateX(5px)}.sidebar-item.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 4px 15px #667eea4d;color:#fff}.sidebar-item:disabled{background:#e9ecef;color:#28a745;cursor:not-allowed;opacity:.5}.bot-item-content{display:flex;flex-direction:column;gap:.5rem}.bot-name{font-size:.95rem;font-weight:600}.bot-visits-badge{background:#667eea1a;border-radius:12px;color:#667eea;display:inline-block;font-size:.75rem;padding:.2rem .5rem;width:-webkit-fit-content;width:fit-content}.sidebar-item.active .bot-visits-badge{background:#667eea;color:#fff}main{background:#f8f9fa;flex:1 1;overflow-y:auto;padding:2rem}.dashboard-container{margin:0 auto;max-width:1400px}.bot-header{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000000d;margin-bottom:2rem;padding:2rem}.bot-header h2{color:#495057;font-size:2rem;font-weight:700;margin-bottom:1.5rem}.bot-metadata{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metadata-card{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;transition:all .3s ease}.metadata-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-3px)}.metadata-label{color:#6c757d;display:block;font-size:.85rem;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.metadata-value{color:#495057;display:block;font-size:1.5rem;font-weight:700}.date-picker-container{align-items:center;background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000000d;display:flex;gap:2rem;justify-content:center;margin-bottom:2rem;padding:1.5rem}.date-picker-group{align-items:center;display:flex;gap:.75rem}.date-picker-group label{color:#495057;font-size:.95rem;font-weight:600}.date-picker{border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease}.date-picker:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.charts-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr;grid-template-rows:auto auto;margin-bottom:2rem}.chart-container{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000000d;padding:1.5rem;transition:all .3s ease}.chart-container:hover{box-shadow:0 5px 20px #00000014}.chart-container h3{color:#495057;font-size:1.2rem;font-weight:600;margin-bottom:1.5rem}.main-chart{grid-column:1/2}.main-chart,.pie-chart{grid-row:1/2;height:400px}.pie-chart{grid-column:2/3}.hourly-chart{grid-column:1/3;grid-row:2/3;height:300px}.table-container{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000000d;overflow-x:auto;padding:1.5rem}.table-container h3{color:#495057;font-size:1.2rem;font-weight:600;margin-bottom:1.5rem}.data-table{border-collapse:initial;border-spacing:0;width:100%}.data-table thead{background:linear-gradient(135deg,#f8f9fa,#fff)}.data-table th{border-bottom:2px solid #e9ecef;color:#495057;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.data-table td{border-bottom:1px solid #f1f3f5;color:#495057;padding:1rem}.data-table tbody tr{transition:all .3s ease}.data-table tbody tr:hover{background:#f8f9fa}.source-name{align-items:center;display:flex;font-weight:600;gap:.75rem}.source-color-indicator{border-radius:50%;display:inline-block;height:12px;width:12px}.number-cell{color:#495057;font-weight:600}.table-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .3s ease}.table-button:hover{box-shadow:0 4px 15px #667eea4d;transform:translateY(-2px)}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.qr-modal{animation:modalSlideIn .3s ease;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:2rem;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.qr-modal h2{color:#495057;font-size:1.5rem;margin-bottom:1.5rem;text-align:center}.qr-code-container{border-radius:15px;display:flex;justify-content:center;padding:1.5rem}.qr-code-container,.qr-url{background:#f8f9fa;margin-bottom:1.5rem}.qr-url{border-radius:10px;color:#6c757d;font-size:.9rem;padding:1rem;text-align:center;word-break:break-all}.modal-buttons{display:flex;gap:1rem;justify-content:center}.modal-button{border:none;border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.modal-button:first-child{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.modal-button:first-child:hover{box-shadow:0 4px 15px #28a7454d;transform:translateY(-2px)}.modal-button-close{background:linear-gradient(135deg,#dc3545,#e74c3c);color:#fff}.modal-button-close:hover{box-shadow:0 4px 15px #dc35454d;transform:translateY(-2px)}.welcome-message{padding:4rem 2rem;text-align:center}.welcome-message h2{color:#495057;font-size:2.5rem;margin-bottom:1rem}.welcome-message p{color:#6c757d;font-size:1.1rem;margin-bottom:3rem}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1000px}.feature-card{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000000d;padding:2rem;transition:all .3s ease}.feature-card:hover{box-shadow:0 10px 30px #0000001a;transform:translateY(-5px)}.feature-icon{display:block;font-size:3rem;margin-bottom:1rem}.feature-card h4{color:#495057;font-size:1.2rem;margin-bottom:.5rem}.feature-card p{color:#6c757d;font-size:.95rem}.no-data{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000000d;padding:4rem 2rem;text-align:center}.no-data p{color:#6c757d;font-size:1.1rem;margin-bottom:1rem}.error-message{background:#fff5f5;border:2px solid #ffebee;border-radius:15px;color:#dc3545;font-size:1.2rem;padding:3rem;text-align:center}.loading{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:1.2rem;height:100vh;justify-content:center}.no-bots-message{color:#6c757d;padding:2rem;text-align:center}.no-bots-message p{margin:.5rem 0}.no-bots-message .hint{color:#adb5bd;font-size:.9rem}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;justify-content:center;min-height:100vh}.auth-container{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:3rem;width:90%}.auth-container h2{color:#495057;font-size:2rem;margin-bottom:2rem;text-align:center}.auth-container input{border:2px solid #e9ecef;border-radius:10px;font-size:1rem;margin-bottom:1rem;padding:.75rem 1rem;transition:all .3s ease;width:100%}.auth-container input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.auth-container button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.auth-container button:hover{box-shadow:0 10px 30px #667eea4d;transform:translateY(-2px)}.auth-container .error{color:#dc3545;font-size:.9rem;margin-bottom:1rem;text-align:center}@media (max-width:1200px){.charts-grid{grid-template-columns:1fr;grid-template-rows:auto auto auto}.hourly-chart,.main-chart,.pie-chart{grid-column:1}.pie-chart{grid-row:2}.hourly-chart{grid-row:3}}@media (max-width:768px){.header-content{gap:1rem;text-align:center}.content,.header-content{flex-direction:column}.sidebar{border-bottom:1px solid #e9ecef;border-right:none;max-height:200px;width:100%}.bot-metadata{grid-template-columns:1fr}.date-picker-container{flex-direction:column}.features-grid{grid-template-columns:1fr}main{padding:1rem}.modal-buttons{flex-direction:column}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f3f5}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5a67d8,#6b46a8)}.admin-content.dimmed{opacity:.35;pointer-events:none;transition:opacity .15s ease-in-out}.modal-root{align-items:center;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.modal-backdrop{background:#00000080;inset:0;position:absolute}.modal-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #00000040;max-height:90vh;overflow-y:auto;padding:40px;position:relative;width:min(720px,92vw);z-index:1}.modal-header{align-items:center;gap:12px;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;top:0}.modal-footer,.modal-header{background:inherit;display:flex;position:-webkit-sticky;position:sticky}.modal-footer{bottom:0;gap:8px;justify-content:flex-end;margin-top:16px;padding-top:8px}.modal-close{background:#0000;border:none;cursor:pointer;font-size:1.1rem}.modal-card::-webkit-scrollbar{width:10px}.modal-card::-webkit-scrollbar-thumb{background:#0003;border-radius:8px}.admin-panel{background:#f8f9fa;border-radius:20px;margin:80px auto 0;min-height:auto;min-width:1000px;padding:3rem}.admin-panel h2{align-items:center;color:#495057;font-size:2rem;font-weight:700;gap:.75rem}.admin-panel h2,.admin-tabs{display:flex;margin-bottom:2rem}.admin-tabs{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;gap:.5rem;padding:.5rem}.tab-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem 1.5rem;position:relative;transition:all .3s ease}.tab-btn:hover{background:#f8f9fa;color:#495057}.tab-btn.active{box-shadow:0 4px 15px #667eea4d;color:#fff}.tab-btn.active,.tab-btn.active:after{background:linear-gradient(135deg,#667eea,#764ba2)}.tab-btn.active:after{border-radius:2px;bottom:-.5rem;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:40px}.admin-actions{display:flex;justify-content:flex-end;margin-bottom:2rem}.btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;margin-right:.75rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea4d;color:#fff}.btn-primary:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-success{background:linear-gradient(135deg,#28a745,#20c997);box-shadow:0 4px 15px #28a7454d;color:#fff}.btn-success:hover{box-shadow:0 6px 20px #28a74566;transform:translateY(-2px)}.btn-warning{background:linear-gradient(135deg,#ffc107,#ffb300);box-shadow:0 4px 15px #ffc1074d;color:#212529}.btn-warning:hover{box-shadow:0 6px 20px #ffc10766;transform:translateY(-2px)}.btn-danger{background:linear-gradient(135deg,#dc3545,#c82333);box-shadow:0 4px 15px #dc35454d;color:#fff}.btn-danger:hover{box-shadow:0 6px 20px #dc354566;transform:translateY(-2px)}.btn-secondary{background:linear-gradient(135deg,#6c757d,#5a6268);box-shadow:0 4px 15px #6c757d4d;color:#fff}.btn-secondary:hover{box-shadow:0 6px 20px #6c757d66;transform:translateY(-2px)}.btn-sm{font-size:.85rem;margin-right:.5rem;padding:.5rem 1rem}.create-user-form{animation:slideDown .3s ease;background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000000d;margin-bottom:2rem;padding:2rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.create-user-form h3{align-items:center;color:#495057;display:flex;font-size:1.3rem;font-weight:600;gap:.5rem;margin-bottom:1.5rem;margin-top:0}.form-group{margin-bottom:15px}.form-group label{color:#495057;display:block;font-weight:500;margin-bottom:5px}.form-group input,.form-group select{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.form-group input:focus,.form-group select:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.bot-checkbox-list{background:#fff;border:1px solid #ced4da;border-radius:4px;max-height:200px;overflow-y:auto;padding:10px}.bot-checkbox{cursor:pointer;display:block;margin-bottom:8px}.bot-checkbox input{margin-right:8px;width:auto}.users-table{animation:fadeIn .3s ease;background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000000d;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.users-table h3{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:2px solid #e9ecef;color:#495057;display:flex;font-size:1.2rem;font-weight:600;gap:.5rem;margin:0;padding:1.5rem}.users-table table{border-collapse:collapse;width:100%}.users-table td,.users-table th{border-bottom:1px solid #f1f3f5;padding:1rem 1.5rem;text-align:left}.users-table th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#495057;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.users-table tbody tr{transition:all .3s ease}.users-table tbody tr:hover{background:#f8f9fa;transform:translateX(2px)}.empty-state{color:#6c757d;font-style:italic;padding:3rem;text-align:center}.current-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-size:.75rem;margin-left:.5rem;padding:.2rem .5rem}.current-badge,.role-badge{display:inline-block;font-weight:600}.role-badge{border-radius:4px;font-size:12px;padding:4px 8px}.role-root_admin{background:#dc3545;color:#fff}.role-user{background:#6c757d;color:#fff}.assigned-bots{color:#495057;font-size:.9rem}.bot-checkbox-list.inline{background:#0000;border:none;display:flex;flex-wrap:wrap;gap:.5rem;max-height:none;padding:0}.bot-checkbox-list.inline .bot-checkbox{align-items:center;background:#f8f9fa;border-radius:6px;display:inline-flex;margin:0;padding:.3rem .6rem}.no-bots{color:#6c757d;font-style:italic;padding:1rem;text-align:center}@media (max-width:768px){.admin-panel{padding:1rem}.admin-tabs{flex-direction:column}.tab-btn{width:100%}.users-table{overflow-x:auto}.users-table table{min-width:600px}}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}
/*# sourceMappingURL=main.ff58139f.css.map*/