@charset "UTF-8";body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}body,code{font-weight:400}code{font-family:JetBrains Mono,Fira Code,Cascadia Code,SF Mono,Monaco,Inconsolata,Roboto Mono,Source Code Pro,monospace}.straffic-logo{align-items:center;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;justify-content:flex-start;-webkit-user-select:none;user-select:none;width:auto}.logo-container{align-items:flex-start;display:flex;flex-direction:column;justify-content:center;line-height:1;text-align:left}.logo-container .logo-tagline{box-sizing:border-box;text-align:center;width:100%}.logo-image{display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));margin:0;transition:all .3s ease}.logo-tagline{color:#666;font-size:.7em;font-weight:500;letter-spacing:.5px;margin-top:2px}.straffic-logo.small .logo-tagline{font-size:.6em}.straffic-logo.large .logo-tagline{font-size:.8em}.straffic-logo:hover .logo-image{filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));transform:scale(1.05)}.straffic-logo:hover .logo-tagline{color:#1890ff;transition:all .3s ease}@media (max-width:768px){.straffic-logo.medium .logo-tagline{font-size:.6em}}@media (max-width:480px){.straffic-logo .logo-tagline{display:none}}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.login-background{bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.floating-shapes{height:100%;position:relative;width:100%}.shape{animation:float 6s ease-in-out infinite;background:#ffffff1a;border-radius:50%;position:absolute}.shape-1{animation-delay:0s;height:80px;left:10%;top:20%;width:80px}.shape-2{animation-delay:2s;height:120px;right:15%;top:60%;width:120px}.shape-3{animation-delay:4s;height:60px;left:20%;top:80%;width:60px}.shape-4{animation-delay:1s;height:100px;right:30%;top:30%;width:100px}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}}.login-content{max-width:520px;padding:24px;position:relative;width:100%;z-index:2}.login-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:20px;box-shadow:0 20px 40px #0000001a;padding:40px 30px}.login-header{align-items:flex-start;flex-direction:column;margin-bottom:30px;text-align:left;width:100%}.login-header,.login-logo{display:flex;justify-content:flex-start}.login-logo{align-items:center;margin-bottom:16px;margin-left:0;margin-right:auto;max-width:100%;width:auto}.login-logo .straffic-logo{justify-content:flex-start;margin:0}.login-logo .logo-container{align-items:flex-start;margin:0}.login-icon{color:#1890ff;display:block;font-size:48px;margin-bottom:16px}.login-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;margin-bottom:8px!important}.login-subtitle{color:#666;font-size:16px}.login-form{margin-top:30px;width:100%}.login-form .ant-form-item{margin-left:0;margin-right:0}.login-input{border:2px solid #f0f0f0;border-radius:12px;padding:12px 16px;transition:all .3s ease}.login-input:hover{border-color:#d9d9d9}.login-input:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33}.input-icon{color:#bfbfbf;font-size:16px}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea66;font-size:16px;font-weight:600;height:48px;transition:all .3s ease}.login-button:hover{box-shadow:0 6px 20px #667eea99;transform:translateY(-2px)}.login-demo{background:#1890ff0d;border:1px solid #1890ff1a;border-radius:12px;margin-top:30px;padding:20px}.demo-text{display:block;font-weight:500;margin-bottom:12px}.demo-credentials{width:100%}.demo-credentials .ant-typography{background:#1890ff1a;border:1px solid #1890ff33;border-radius:6px;font-size:12px;margin:0;padding:4px 8px}@media (max-width:768px){.login-content{padding:10px}.login-card{padding:30px 20px}.login-title{font-size:24px}.login-subtitle{font-size:14px}}@media (max-width:480px){.login-card{padding:20px 15px}.login-icon{font-size:36px}.login-title{font-size:20px}}.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{clip:rect(0,0,0,0);border:0;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;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}.schedule-modal .ant-modal-content{border-radius:16px;overflow:hidden}.schedule-modal .ant-modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border:none;padding:20px 24px}.schedule-modal .ant-modal-title{color:#fff;font-size:18px;font-weight:600}.modal-content{padding:0}.schedule-preview{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #0000000f;border-radius:12px;margin-bottom:0}.preview-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.preview-title{flex:1 1}.schedule-title{margin:0 0 8px!important}.user-tag{align-items:center;border-radius:6px;display:inline-flex;font-weight:500;gap:4px;padding:4px 8px}.preview-description{background:#ffffffb3;border:1px solid #0000000f;border-radius:8px;margin-bottom:16px;padding:12px}.preview-details{display:flex;flex-direction:column;gap:16px}.detail-item{align-items:flex-start;display:flex;gap:12px}.detail-icon{color:#1890ff;font-size:16px;margin-top:2px}.detail-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.schedule-form{padding:24px}.form-row{display:flex;gap:16px}.form-item-half{flex:1 1}.form-datepicker,.form-input,.form-select,.form-textarea,.form-timepicker{border:2px solid #f0f0f0;border-radius:8px;transition:all .3s ease}.form-datepicker:focus,.form-input:focus,.form-select:focus,.form-textarea:focus,.form-timepicker:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33}.form-datepicker:hover,.form-input:hover,.form-select:hover,.form-textarea:hover,.form-timepicker:hover{border-color:#d9d9d9}.user-option{align-items:center;display:flex;gap:8px}@media (max-width:768px){.schedule-modal{max-width:500px;width:95%!important}.schedule-form{padding:16px}.form-row{flex-direction:column;gap:0}.form-item-half{width:100%}.preview-header{align-items:stretch;flex-direction:column;gap:12px}.preview-header .ant-space{justify-content:flex-end;width:100%}}@media (max-width:480px){.schedule-modal .ant-modal-header{padding:16px 20px}.schedule-modal .ant-modal-title{font-size:16px}.schedule-form{padding:12px}.form-actions{flex-direction:column;gap:8px}.form-actions .ant-space{justify-content:stretch;width:100%}.form-actions .ant-btn{flex:1 1}}.form-datepicker{border:2px solid #f0f0f0!important;border-radius:8px!important;font-size:14px!important;height:40px!important;padding:8px 12px!important;transition:all .3s ease!important;width:100%!important}.form-datepicker:focus{border-color:#1890ff!important;box-shadow:0 0 0 2px #1890ff33!important;outline:none!important}.form-datepicker:hover{border-color:#d9d9d9!important}.date-range-container{display:flex;gap:16px;width:100%}.date-range-container .form-item-half{flex:1 1}.time-range-container{display:flex;gap:16px;width:100%}.time-range-container .form-item-half{flex:1 1}@media (max-width:768px){.date-range-container,.time-range-container{flex-direction:column;gap:0}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{-webkit-appearance:button;appearance:button;cursor:pointer;overflow:visible;text-transform:none}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:column;height:100%}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar :after,.rbc-calendar :before{box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0}.rbc-ellipsis,.rbc-event-label,.rbc-row-segment .rbc-event-content,.rbc-show-more{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{border-bottom:1px solid #ddd;flex:1 0;font-size:90%;font-weight:700;min-height:0;overflow:hidden;padding:0 3px;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{background:none;border:none;color:inherit;cursor:pointer;margin:0;padding:0;-webkit-user-select:text;user-select:text}.rbc-row-content{position:relative;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:flex;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{-ms-overflow-style:none;height:100%;overflow-y:scroll;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{align-items:center;display:flex;flex-wrap:wrap;font-size:16px;justify-content:center;margin-bottom:10px}.rbc-toolbar .rbc-toolbar-label{flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{background:none;background-image:none;border:1px solid #ccc;border-radius:4px;color:#373a3c;display:inline-block;line-height:normal;margin:0;padding:.375rem 1rem;text-align:center;vertical-align:middle;white-space:nowrap}.rbc-toolbar button.rbc-active,.rbc-toolbar button:active{background-color:#e6e6e6;background-image:none;border-color:#adadad;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.rbc-toolbar button.rbc-active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button:active:hover{background-color:#d4d4d4;border-color:#8c8c8c;color:#373a3c}.rbc-toolbar button:focus,.rbc-toolbar button:hover{background-color:#e6e6e6;border-color:#adadad;color:#373a3c}.rbc-toolbar button:hover{cursor:pointer}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:4px;border-bottom-left-radius:0;border-top-left-radius:0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px;border-bottom-right-radius:0;border-top-right-radius:0}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width:767px){.rbc-toolbar{flex-direction:column}}.rbc-day-slot .rbc-background-event,.rbc-event{background-color:#3174ad;border:none;border-radius:5px;box-shadow:none;box-sizing:border-box;color:#fff;cursor:pointer;margin:0;padding:2px 5px;text-align:left;width:100%}.rbc-day-slot .rbc-slot-selecting .rbc-background-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-slot-selecting .rbc-event{cursor:inherit;pointer-events:none}.rbc-day-slot .rbc-selected.rbc-background-event,.rbc-event.rbc-selected{background-color:#265985}.rbc-day-slot .rbc-background-event:focus,.rbc-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{box-shadow:-1px 1px 5px 0 #33333380}.rbc-event-continues-prior{border-bottom-left-radius:0;border-top-left-radius:0}.rbc-event-continues-after{border-bottom-right-radius:0;border-top-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:flex;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;color:#3174ad;font-size:85%;font-weight:700;height:auto;line-height:normal;z-index:4}.rbc-show-more:focus,.rbc-show-more:hover{color:#265985}.rbc-month-view{border:1px solid #ddd;display:flex;flex:1 0;flex-direction:column;height:100%;position:relative;user-select:none;-webkit-user-select:none;width:100%}.rbc-month-header{display:flex;flex-direction:row}.rbc-month-row{display:flex;flex:1 0;flex-basis:0px;flex-direction:column;height:100%;overflow:hidden;position:relative}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{flex:1 1;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:flex;flex:1 0;flex-direction:row;overflow:hidden;right:1px}.rbc-day-bg{flex:1 0}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{background-color:#fff;border:1px solid #e5e5e5;box-shadow:0 5px 15px #00000040;padding:10px;position:absolute;z-index:5}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:flex;flex:1 0;flex-direction:column;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{border:1px solid #ddd;border-collapse:collapse;border-spacing:0;width:100%}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{border-bottom:1px solid #ddd;padding:3px 5px;text-align:left}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:flex;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{flex:1 1}.rbc-timeslot-group{border-bottom:1px solid #ddd;display:flex;flex-flow:column nowrap;min-height:40px}.rbc-header-gutter,.rbc-time-gutter{flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{bottom:0;left:0;margin-right:10px;position:absolute;right:0;top:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-event{align-items:flex-start;border:1px solid #265985;display:flex;flex-flow:column wrap;max-height:100%;min-height:20px;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{word-wrap:break-word;flex:1 1;height:100%;line-height:1;min-height:1em;width:100%}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{background-color:#fff;border-right:1px solid #ddd;left:0;margin-right:-1px;position:-webkit-sticky;position:sticky;z-index:10}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{flex:1 0;flex-basis:0px;min-width:auto}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-day-bg,.rbc-time-view-resources .rbc-header{flex:1 1;flex-basis:0 px;width:140px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{flex:1 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{background-color:#00000080;color:#fff;font-size:75%;padding:3px;position:absolute;width:100%;z-index:10}.rbc-slot-selecting{cursor:move}.rbc-time-view{border:1px solid #ddd;display:flex;flex:1 1;flex-direction:column;min-height:0;width:100%}.rbc-time-view .rbc-time-gutter{text-align:right;white-space:nowrap}.rbc-time-view .rbc-allday-cell{box-sizing:initial;height:100%;position:relative;width:100%}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{box-sizing:border-box;min-height:20px}.rbc-time-header{display:flex;flex:0 0 auto;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-left:1px solid #ddd;border-right-width:0}.rbc-time-header>.rbc-row.rbc-row-resource,.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{border-left:1px solid #ddd;display:flex;flex:1 1;flex-direction:column;min-width:0}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;flex-shrink:0}.rbc-time-content{align-items:flex-start;border-top:2px solid #ddd;display:flex;flex:1 0;overflow-y:auto;position:relative;width:100%}.rbc-time-content>.rbc-time-gutter{flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{user-select:none;-webkit-user-select:none;width:100%}.rbc-current-time-indicator{background-color:#74ad31;height:1px;left:0;pointer-events:none;position:absolute;right:0;z-index:3}.rbc-resource-grouping.rbc-time-header-content{display:flex;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.calendar-layout{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh}.calendar-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #0000000f;box-shadow:0 2px 8px #0000000f;max-width:100%;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.calendar-header .header-content{max-width:none}.add-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;font-weight:500;height:36px;transition:all .3s ease}.add-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.admin-button,.logout-button{border-radius:8px;font-weight:500;height:36px}.user-info{max-width:200px;overflow:hidden;padding:6px 12px;white-space:nowrap}.main-layout{display:flex;min-height:calc(100vh - 64px)}.calendar-content{flex:1 1;margin:0;max-width:none;padding:24px;width:auto}.calendar-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;overflow:hidden}.calendar-container{padding:20px}.custom-calendar{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.5}.custom-calendar .rbc-header{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;font-weight:600;padding:12px 8px;text-align:center}.custom-calendar .rbc-month-view{border:none}.custom-calendar .rbc-date-cell{color:#333;font-weight:500;padding:4px;text-align:right}.custom-calendar .rbc-off-range-bg{background:#f8f9fa}.custom-calendar .rbc-today{position:relative}.custom-calendar .rbc-month-view .rbc-date-cell.rbc-today,.custom-calendar .rbc-month-view .rbc-day-bg.rbc-today,.custom-calendar .rbc-month-view .rbc-today,.custom-calendar .rbc-today{animation:todayGlow 3s ease-in-out infinite!important;background:linear-gradient(135deg,#e6f7ff,#bae7ff 50%,#91d5ff)!important;border:2px solid #40a9ff!important;border-radius:8px!important;box-shadow:0 2px 8px #1890ff33!important}.custom-calendar .rbc-month-view .rbc-date-cell.rbc-today,.custom-calendar .rbc-month-view .rbc-day-bg.rbc-today,.custom-calendar .rbc-month-view .rbc-today{position:relative!important}.custom-calendar .rbc-month-view .rbc-today:before,.custom-calendar .rbc-today:before{background:linear-gradient(135deg,#1890ff1a,#40a9ff0d);border-radius:6px;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.custom-calendar .rbc-today .rbc-date-cell{position:relative;z-index:2}.custom-calendar .rbc-month-view .rbc-date-cell.rbc-today,.custom-calendar .rbc-month-view .rbc-today .rbc-date-cell,.custom-calendar .rbc-month-view .rbc-today .rbc-date-cell.rbc-date-cell,.custom-calendar .rbc-today .rbc-date-cell{align-items:center!important;background:none!important;border:none!important;border-radius:0!important;box-shadow:none!important;color:#1890ff!important;display:block!important;font-size:24px!important;font-weight:900!important;height:auto!important;justify-content:center!important;line-height:1!important;margin:8px 4px!important;text-shadow:0 2px 4px #0000001a!important;width:auto!important}.custom-calendar .rbc-month-view .rbc-date-cell.rbc-today,.custom-calendar .rbc-month-view .rbc-today .rbc-date-cell,.custom-calendar .rbc-month-view .rbc-today .rbc-date-cell.rbc-date-cell{position:relative!important;z-index:2!important}@keyframes todayGlow{0%,to{border-color:#40a9ff;box-shadow:0 2px 8px #1890ff33}50%{border-color:#1890ff;box-shadow:0 4px 16px #1890ff66}}.rbc-month-view .rbc-date-cell.rbc-today,.rbc-month-view .rbc-day-bg.rbc-today,.rbc-month-view .rbc-today,.rbc-month-view .rbc-today .rbc-date-cell,.rbc-month-view .rbc-today .rbc-day-bg,.rbc-month-view .rbc-today.rbc-today{animation:todayGlow 3s ease-in-out infinite!important;background:linear-gradient(135deg,#e6f7ff,#bae7ff 50%,#91d5ff)!important;border:2px solid #40a9ff!important;border-radius:8px!important;box-shadow:0 2px 8px #1890ff33!important;min-height:100px!important;position:relative!important}.rbc-month-view .rbc-date-cell.rbc-today,.rbc-month-view .rbc-today .rbc-date-cell,.rbc-month-view .rbc-today .rbc-date-cell.rbc-date-cell,.rbc-month-view .rbc-today .rbc-day-bg .rbc-date-cell{background:none!important;border:none!important;box-shadow:none!important;color:#1890ff!important;display:block!important;font-size:28px!important;font-weight:900!important;height:auto!important;line-height:1!important;margin:8px!important;padding:4px!important;text-align:center!important;text-shadow:0 2px 4px #0000001a!important;width:auto!important}.rbc-month-view .rbc-today .rbc-date-cell:after,.rbc-month-view .rbc-today .rbc-date-cell:before{display:none!important}.rbc-month-view .rbc-today[style*=background]{background:linear-gradient(135deg,#e6f7ff,#bae7ff 50%,#91d5ff)!important}.rbc-month-view .rbc-today .rbc-date-cell[style*=background]{background:none!important}.custom-calendar .rbc-event{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:2px 6px;transition:all .2s ease}.custom-calendar .rbc-event:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.custom-calendar .rbc-toolbar{background:#1890ff0d;border:1px solid #1890ff1a;border-radius:12px;margin-bottom:20px;padding:16px}.custom-calendar .rbc-toolbar.rbc-toolbar-custom{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.custom-calendar .rbc-toolbar-custom .rbc-toolbar-label-center{align-items:center;display:flex;flex:1 1;gap:12px;justify-content:center;min-width:0}.custom-calendar .rbc-toolbar-custom .rbc-toolbar-label-text{color:#333;font-weight:600}.custom-calendar .rbc-toolbar-custom .rbc-btn-group-right{margin-left:auto}.custom-calendar .rbc-toolbar-custom .rbc-btn-nav{align-items:center;display:inline-flex;gap:6px}.custom-calendar .rbc-toolbar-custom .rbc-btn-nav .anticon{font-size:12px}.custom-calendar .rbc-toolbar button{background:#fff;border:1px solid #d9d9d9;border-radius:8px;color:#333;font-weight:500;transition:all .3s ease}.custom-calendar .rbc-toolbar button:hover{border-color:#1890ff;color:#1890ff}.custom-calendar .rbc-toolbar button.rbc-active{background:#1890ff;border-color:#1890ff;color:#fff}.custom-calendar .rbc-toolbar button:disabled{cursor:not-allowed;opacity:.5}.custom-calendar .rbc-toolbar button:not(:disabled):hover{background:#1890ff;border-color:#1890ff;box-shadow:0 2px 4px #1890ff4d;color:#fff;transform:translateY(-1px)}.day-cell-wrapper{display:flex;flex-direction:column;height:100%;min-height:100px;position:relative}.day-cell-wrapper--today{border:2px solid #40a9ff!important;border-radius:8px!important;box-shadow:0 0 0 2px #1890ff4d,0 2px 12px #1890ff40!important}.custom-calendar .rbc-month-view .rbc-day-bg.rbc-today,.day-cell-content--today,.day-cell-wrapper--today,.day-cell-wrapper--today .day-cell-content{background:linear-gradient(135deg,#e6f7ff,#bae7ff 50%,#91d5ff)!important}.custom-calendar .rbc-month-view .rbc-day-bg.rbc-today{border:2px solid #40a9ff!important;border-radius:8px!important;box-shadow:0 2px 12px #1890ff4d!important}.custom-calendar .rbc-month-view .rbc-date-cell.rbc-now{color:#1890ff!important;font-size:1.15em!important;font-weight:700!important}.day-cell-content--today .rbc-date-cell,.day-cell-wrapper--today .rbc-date-cell{color:#1890ff!important;font-size:1.1em!important;font-weight:700!important}.day-cell-content{flex:1 1;position:relative;z-index:1}.day-schedules{bottom:0;left:0;max-height:60px;overflow:hidden;position:absolute;right:0;z-index:2}.day-schedules-scroll{max-height:60px;overflow-y:auto;padding:2px}.day-schedule-item{border-radius:3px;color:#fff;cursor:pointer;display:flex;flex-direction:column;font-size:10px;font-weight:500;margin:1px 0;padding:2px 4px;transition:all .2s ease}.day-schedule-item:hover{box-shadow:0 2px 4px #0003;transform:scale(1.02)}.schedule-user{font-size:9px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-schedules{background:#0009;border-radius:3px;color:#fff;cursor:pointer;font-size:9px;margin:1px 0;padding:2px 4px;text-align:center}.day-schedules-scroll::-webkit-scrollbar{width:3px}.day-schedules-scroll::-webkit-scrollbar-track{background:#0000001a;border-radius:2px}.day-schedules-scroll::-webkit-scrollbar-thumb{background:#0000004d;border-radius:2px}.day-schedules-scroll::-webkit-scrollbar-thumb:hover{background:#00000080}@media (max-width:768px){.calendar-container,.calendar-content{padding:12px}.header-content{padding:0 12px}.header-right{gap:8px}.add-button span{display:none}.user-info{max-width:150px;padding:4px 8px}.user-details{display:flex}.custom-calendar .rbc-toolbar{flex-direction:column;gap:8px}.custom-calendar .rbc-toolbar button{font-size:12px;padding:4px 8px}}@media (max-width:480px){.calendar-header{padding:0 8px}.header-content{height:56px}.header-right{gap:4px}.user-info{max-width:120px;padding:4px 6px}.user-details{display:flex}.header-title{font-size:18px}.calendar-container,.calendar-content{padding:8px}.day-cell-wrapper{min-height:80px}.day-schedules,.day-schedules-scroll{max-height:50px}.custom-calendar .rbc-today .rbc-date-cell{font-size:20px!important;font-weight:900!important;height:auto!important;width:auto!important}.custom-calendar .rbc-today{border-width:1px!important}.custom-calendar .rbc-month-view .rbc-today .rbc-date-cell{font-size:20px!important;font-weight:900!important;height:auto!important;width:auto!important}.custom-calendar .rbc-month-view .rbc-today{border-width:1px!important}}.schedule-sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-left:1px solid #0000000f;box-shadow:-2px 0 8px #0000000f;position:relative;z-index:10}.sidebar-content{height:100%;padding:20px}.sidebar-content,.sidebar-header{display:flex;flex-direction:column}.sidebar-header{gap:4px;margin-bottom:16px}.sidebar-header .ant-typography{margin:0!important}.sidebar-search{margin-bottom:16px}.sidebar-search .ant-input{border:1px solid #d9d9d9;border-radius:8px;transition:all .3s ease}.sidebar-search .ant-input-focused,.sidebar-search .ant-input:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33}.schedule-list{flex:1 1;overflow:hidden}.schedule-list .ant-list{height:100%;overflow-y:auto}.schedule-list-item{background:#fffc!important;border:1px solid #0000000f!important;border-radius:8px!important;margin-bottom:8px!important;padding:12px!important;transition:all .3s ease!important}.schedule-list-item:hover{background:#1890ff0d!important;border-color:#1890ff33!important;box-shadow:0 2px 8px #0000001a!important;transform:translateY(-1px)}.schedule-item-content{width:100%}.schedule-item-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.schedule-color-indicator{border-radius:50%;box-shadow:0 1px 3px #0003;flex-shrink:0;height:12px;width:12px}.schedule-title{color:#333;flex:1 1;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-item-details{display:flex;flex-direction:column;gap:6px}.schedule-user{align-items:center;display:flex;gap:8px}.schedule-datetime{align-items:center;display:flex;font-size:12px;gap:4px}.schedule-description{color:#666;font-size:12px;line-height:1.4;margin-top:4px}.schedule-tags{display:flex;gap:4px;margin-top:6px}.schedule-tags .ant-tag{border-radius:4px;font-size:10px;margin:0;padding:2px 6px}.schedule-list .ant-list::-webkit-scrollbar{width:6px}.schedule-list .ant-list::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.schedule-list .ant-list::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.schedule-list .ant-list::-webkit-scrollbar-thumb:hover{background:#0000004d}@media (max-width:1200px){.schedule-sidebar{width:300px!important}}@media (max-width:992px){.schedule-sidebar{width:280px!important}.sidebar-content{padding:16px}}@media (max-width:768px){.schedule-sidebar{height:calc(100vh - 64px);position:fixed;right:0;top:64px;transform:translateX(100%);transition:transform .3s ease;z-index:1000}.schedule-sidebar.ant-layout-sider-collapsed{transform:translateX(0)}.main-layout{flex-direction:column}.calendar-content{padding:12px}}@media (max-width:480px){.schedule-sidebar{left:0;right:0;width:100%!important}.sidebar-content{padding:12px}.schedule-list-item{padding:8px!important}.schedule-item-header{margin-bottom:6px}.schedule-title{font-size:13px}}.admin-layout{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh}.admin-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #0000000f;box-shadow:0 2px 8px #0000000f;max-width:100%;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.admin-header .header-content{max-width:none}.header-content{height:64px;justify-content:space-between;width:100%}.header-content,.header-left{align-items:center;display:flex}.header-left{gap:16px}.header-logo{margin-right:8px}.back-button{border-color:#1890ff;border-radius:8px;color:#1890ff;font-weight:500;height:36px}.back-button:hover{background:#1890ff;border-color:#1890ff;color:#fff}.header-icon{color:#1890ff;font-size:24px}.header-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;margin:0!important}.header-right,.user-info{align-items:center;display:flex}.user-info{background:#1890ff0d;border:1px solid #1890ff1a;border-radius:8px;gap:8px;padding:8px 12px}.user-details{display:flex;flex-direction:column;line-height:1.2}.admin-content{margin:0 auto;max-width:1200px;padding:24px;width:100%}.admin-container{display:flex;flex-direction:column;gap:24px}.stats-row{margin-bottom:24px}.stat-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 4px 16px #0000001a;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-2px)}.stat-card .ant-card-body{padding:20px}.stat-card .ant-statistic-title{color:#666;font-weight:500;margin-bottom:8px}.stat-card .ant-statistic-content{font-size:24px;font-weight:700}.users-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;overflow:hidden}.users-card .ant-card-head{background:linear-gradient(135deg,#667eea,#764ba2);border:none;padding:20px 24px}.users-card .ant-card-head-title{color:#fff;font-size:18px;font-weight:600}.table-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px;padding:0 4px}.table-title{color:#333;margin:0!important}.add-user-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;font-weight:500;height:36px;transition:all .3s ease}.add-user-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.users-table{margin-top:16px}.users-table .ant-table-thead>tr>th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#333;font-weight:600}.users-table .ant-table-tbody>tr>td{border-bottom:1px solid #f0f0f0;padding:16px 12px}.users-table .ant-table-tbody>tr:hover>td{background:#1890ff0d}.users-table .user-cell{align-items:center;display:flex;gap:12px}.users-table .user-cell .user-info{background:none;border:none;border-radius:0;display:flex;flex-direction:column;gap:0;justify-content:center;padding:0}.users-table .user-cell .user-info .ant-typography{line-height:1.4;margin:0}.users-table .ant-table-tbody>tr>td:first-child{vertical-align:middle}.user-modal .ant-modal-content{border-radius:16px;overflow:hidden}.user-modal .ant-modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border:none;padding:20px 24px}.user-modal .ant-modal-title{color:#fff;font-size:18px;font-weight:600}.modal-header{align-items:center;display:flex;gap:12px}.modal-icon{color:#fff;font-size:20px}.user-form{padding:24px}.form-input,.form-select{border:2px solid #f0f0f0;border-radius:8px;transition:all .3s ease}.form-input:focus,.form-select:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33}.form-input:hover,.form-select:hover{border-color:#d9d9d9}.form-actions{border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;margin-top:24px;padding-top:20px}.save-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;font-weight:600;transition:all .3s ease}.save-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}@media (max-width:768px){.admin-content{padding:12px}.admin-container{gap:16px}.stats-row{margin-bottom:16px}.table-header{align-items:stretch;flex-direction:column;gap:12px}.add-user-button{width:100%}.header-content{padding:0 12px}.header-left{gap:8px}.back-button span,.user-details{display:none}}@media (max-width:480px){.admin-header{padding:0 8px}.header-content{height:56px}.header-title{font-size:18px}.admin-content{padding:8px}.stat-card .ant-card-body{padding:16px}.stat-card .ant-statistic-content{font-size:20px}.users-table .ant-table-tbody>tr>td{padding:12px 8px}.user-cell{gap:8px}.user-modal{max-width:400px;width:95%!important}.user-form{padding:16px}.form-actions{flex-direction:column;gap:8px}.form-actions .ant-space{justify-content:stretch;width:100%}.form-actions .ant-btn{flex:1 1}}.App{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-weight:400;line-height:1.6;min-height:100vh;text-align:center}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.025em;line-height:1.3}div,h1,h2,h3,h4,h5,h6,p,span{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}div,p,span{font-weight:400;line-height:1.6}.ant-btn,button{font-weight:500;letter-spacing:-.01em}.ant-btn,.ant-input,.ant-select,button,input,textarea{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.ant-input,.ant-select,input,textarea{font-weight:400}body{background:#f5f7fa;margin:0;padding:0}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.ant-btn{border-radius:8px;font-weight:500;transition:all .3s ease}.ant-btn:hover{transform:translateY(-1px)}.ant-card{border-radius:12px;box-shadow:0 4px 16px #0000001a;transition:all .3s ease}.ant-card:hover{box-shadow:0 8px 24px #00000026}.ant-input,.ant-input-password,.ant-select-selector{border:2px solid #f0f0f0;border-radius:8px;transition:all .3s ease}.ant-input-password:focus,.ant-input:focus,.ant-select-focused .ant-select-selector{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33}.ant-modal-content{border-radius:16px;overflow:hidden}.ant-table{border-radius:8px;overflow:hidden}.ant-table-thead>tr>th{background:#f8f9fa;border-bottom:2px solid #e9ecef;font-weight:600}@media (max-width:768px){.ant-btn{font-size:14px}.ant-card{margin:8px}.ant-table{font-size:14px}}@media (max-width:480px){.ant-btn{font-size:12px;padding:4px 8px}.ant-card{margin:4px}.ant-table{font-size:12px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.slide-in{animation:slideIn .3s ease-out}.loading-container{align-items:center;display:flex;justify-content:center;min-height:200px}.error-container{color:#ff4d4f}.error-container,.success-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:200px}.success-container{color:#52c41a}
/*# sourceMappingURL=main.fd56c1e1.css.map*/