:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#4f46e5;--primary-hover:#4338ca;--secondary:#10b981;--bg-color:#f8fafc;--surface:#fff;--surface-hover:#f1f5f9;--text-main:#0f172a;--text-muted:#64748b;--danger:#ef4444;--warning:#f59e0b;--info:#3b82f6;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--transition:all .3s ease;--priority-high:#9e0142;--priority-medium:#fdae61;--priority-low:#02818a;--status-overdue:#f46d43;--status-in-progress:#2563eb;--status-pending:#807dba;--status-completed:#66c2a5}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);flex-direction:column;min-height:100vh;font-family:Inter,sans-serif;display:flex}a{color:var(--primary);transition:var(--transition);text-decoration:none}a:hover{color:var(--primary-hover)}button{cursor:pointer;font-family:inherit}.container{width:100%;max-width:600px;margin:0 auto;padding:20px}.glass-panel{-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-lg);background:#ffffffe6;border:1px solid #00000026;padding:24px;box-shadow:0 8px 32px #00000014}.input-group{flex-direction:column;justify-content:flex-end;margin-bottom:16px;display:flex}.input-group label{color:var(--text-muted);margin-bottom:8px;font-size:.9rem;display:block}.input-group input,.input-group textarea,.input-group select{border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text-main);transition:var(--transition);border:1px solid #00000080;padding:12px 16px;font-family:inherit;font-size:.9rem}.input-group input:focus,.input-group textarea:focus,.input-group select:focus{border:2px solid var(--primary);box-shadow:none;outline:none;padding:11px 15px}.btn{border-radius:var(--radius-sm);transition:var(--transition);border:none;justify-content:center;align-items:center;width:100%;padding:12px 24px;font-size:1rem;font-weight:600;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-hover));color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4f46e54d}.btn-secondary{color:var(--text-main);background:#0000000d}.btn-secondary:hover{background:#0000001a}.btn-danger{background:var(--danger);color:#fff}.keypad{grid-template-columns:repeat(3,1fr);gap:16px;max-width:300px;margin:24px auto;display:grid}.key-btn{background:var(--surface);width:72px;height:72px;color:var(--text-main);transition:var(--transition);border:1px solid #0000000d;border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:1.5rem;display:flex}.key-btn:hover{background:var(--surface-hover);transform:scale(1.05)}.key-btn:active{transform:scale(.95)}.pin-display{justify-content:center;gap:12px;margin-bottom:24px;display:flex}.pin-dot{border:2px solid var(--primary);width:16px;height:16px;transition:var(--transition);background:0 0;border-radius:50%}.pin-dot.filled{background:var(--primary);box-shadow:0 0 10px var(--primary)}.bottom-nav{z-index:100;background:var(--surface);width:100%;padding:12px 0;padding-bottom:env(safe-area-inset-bottom,12px);border-top:1px solid #0000000d;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;box-shadow:0 -2px 10px #00000005}.nav-item{color:var(--text-muted);transition:var(--transition);flex-direction:column;align-items:center;gap:4px;font-size:.75rem;display:flex}.nav-item.active{color:var(--primary)}.main-content{padding-top:80px;padding-bottom:80px}.top-header{background:var(--surface);z-index:100;border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;width:100%;padding:16px 24px;display:flex;position:fixed;top:0;left:0;box-shadow:0 2px 10px #00000005}.app-title{color:var(--primary);font-size:1.2rem;font-weight:700}.logout-btn{color:var(--text-muted);transition:var(--transition)}.logout-btn:hover{color:var(--danger)}.task-card{background:var(--surface);border-radius:var(--radius-md);border-left:4px solid var(--primary);transition:var(--transition);border:1px solid #0000000d;margin-bottom:12px;padding:16px;box-shadow:0 4px 12px #00000008}.task-card.flagged{border-left-color:var(--warning)}.task-card.completed{border-left-color:var(--secondary);opacity:.8}.task-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.task-title{font-size:1.1rem;font-weight:600}.task-meta{color:var(--text-muted);margin-bottom:8px;font-size:.8rem}.task-actions{gap:8px;margin-top:12px;display:flex}.icon-btn{color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;padding:8px}.icon-btn:hover{color:var(--text-main);background:#0000000d}.text-center{text-align:center}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.text-error{color:var(--danger);margin-top:4px;font-size:.9rem}.text-success{color:var(--secondary);margin-top:4px;font-size:.9rem}.file-upload-area{border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:var(--transition);border:2px dashed #00000080;padding:32px}.file-upload-area:hover{border-color:var(--primary);background:#4f46e50d}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.agenda-container{flex-direction:column;gap:24px;max-width:600px;margin:0 auto;padding:16px 0;display:flex}.agenda-day-group{flex-direction:column;gap:12px;display:flex}.agenda-header-row{align-items:center;gap:12px;margin-bottom:4px;display:flex}.agenda-date-text{color:var(--text-main);font-size:1.1rem;font-weight:700}.agenda-wk-text{color:var(--text-muted);font-size:.85rem;font-weight:500}.agenda-today-badge{background-color:var(--primary);color:#fff;border-radius:4px;padding:4px 10px;font-size:.85rem;font-weight:700}.agenda-card{background-color:var(--surface);cursor:pointer;border:1px solid #0000000d;border-radius:10px;align-items:flex-start;gap:12px;padding:10px 12px;transition:all .2s;display:flex;box-shadow:0 4px 12px #00000008}.react-datepicker__current-month,.react-datepicker__day-name,.react-datepicker__time-name,.react-datepicker__day{color:var(--text-main)!important}.custom-calendar-container .react-datepicker__day.calendar-day-today.calendar-day-event{cursor:pointer;border:1px solid #0000000d;gap:12px;transition:all .2s;box-shadow:0 4px 12px #00000008;background-color:#00c853!important}.agenda-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.agenda-card-icon{color:#10b981;flex-shrink:0;margin-top:2px}.agenda-card-content{flex-direction:column;gap:4px;display:flex}.agenda-card-title{color:var(--text-main);font-size:1.1rem;font-weight:600}.agenda-card-subtitle{color:var(--text-muted);font-size:.9rem}.agenda-empty-msg{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:24px 0;font-size:.95rem;line-height:1.6;display:flex}.modal-content-box{background:var(--surface-hover);border-radius:var(--radius-md);transition:var(--transition);border:1px solid #0000000d;padding:12px;box-shadow:inset 0 2px 10px #00000005}.modal-content-box:hover{border-color:#0000001a}.modal-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:.8rem}.modal-value{color:var(--text-main);font-size:1.05rem;font-weight:600}.btn-complete-task{border-radius:var(--radius-lg);cursor:pointer;color:var(--secondary);background:linear-gradient(135deg,#10b9811a,#10b98133);border:1px solid #10b9814d;align-items:center;gap:12px;padding:16px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-complete-task:hover{color:#fff;background:linear-gradient(135deg,#10b981cc,#10b981);transform:translateY(-2px)scale(1.02);box-shadow:0 8px 24px #10b9814d}.btn-start-task{border-radius:var(--radius-lg);cursor:pointer;color:var(--secondary);background:linear-gradient(135deg,#3b82f61a,#3b82f633);border:1px solid #3b82f64d;align-items:center;gap:12px;padding:16px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-start-task:hover{color:#fff;background:linear-gradient(135deg,#3b82f6cc,#3b82f6);transform:translateY(-2px)scale(1.02);box-shadow:0 8px 24px #3b82f64d}.animate-fade-in{animation:.4s cubic-bezier(.4,0,.2,1) forwards fadeIn}.react-datepicker-wrapper{width:100%}.react-datepicker{background-color:var(--surface)!important;color:var(--text-main)!important;border:1px solid #0000001a!important;font-family:Inter,sans-serif!important;box-shadow:0 8px 32px #0000001a!important}.react-datepicker__header{background-color:var(--surface-hover)!important;border-bottom:1px solid #0000001a!important}.react-datepicker__current-month,.react-datepicker__day-name,.react-datepicker__time-name,.react-datepicker__day{color:var(--text-main)!important}.react-datepicker__day:hover{background-color:var(--surface-hover)!important}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background-color:var(--primary)!important;color:#fff!important}.react-datepicker__time-container{border-left:1px solid #0000001a!important}.react-datepicker__time{background-color:var(--surface)!important;color:var(--text-main)!important}.react-datepicker__time-list-item:hover{background-color:var(--surface-hover)!important}.react-datepicker__time-list-item--selected{background-color:var(--primary)!important}.react-datepicker-popper{z-index:1000!important}.react-datepicker__input-container input{background-color:var(--surface);color:var(--text-main);border-radius:var(--radius-sm);border:1px solid #00000080;width:100%;padding:12px 8px;font-family:inherit;font-size:.85rem}.react-datepicker__input-container input:focus{border:2px solid var(--primary);box-shadow:none;outline:none;padding:11px 7px}.custom-calendar-container .react-datepicker__day.calendar-day-today{border-radius:50%;color:#fff!important;background-color:#00c853!important}.custom-calendar-container .react-datepicker__day.calendar-day-event{border-radius:50%;color:#fff!important;background-color:#9c27b0!important}.custom-calendar-container .react-datepicker__day.calendar-day-today.calendar-day-event{background-color:#00c853!important;border:2px solid #9c27b0!important}.modal-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--surface,#fff);border-radius:var(--radius-lg,8px);flex-direction:column;width:100%;padding:20px;display:flex;box-shadow:0 4px 20px #00000026}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.modal-header h3{margin:0}.close-btn{cursor:pointer;color:var(--text-muted,#666);background:0 0;border:none}.close-btn:hover{color:var(--text-main,#333)}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.notification-container{align-items:center;display:flex;position:relative}.notification-icon{cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:background-color .2s;display:flex;position:relative}.notification-icon:hover{background-color:#ffffff1a}.notification-badge{color:#fff;background-color:#ef4444;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.7rem;font-weight:700;display:flex;position:absolute;top:2px;right:2px}.notification-dropdown{z-index:1000;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;width:300px;max-width:90vw;margin-top:10px;position:absolute;top:100%;right:-30px;overflow:hidden;box-shadow:0 10px 25px #0003}.notification-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;padding:12px 16px}.notification-header h4{color:#374151;margin:0;font-size:.95rem}.notification-list{max-height:350px;overflow-y:auto}.notification-empty{text-align:center;color:#6b7280;padding:24px 16px;font-size:.9rem}.notification-item{cursor:pointer;border-bottom:1px solid #f3f4f6;padding:12px 16px;transition:background-color .2s}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:#f9fafb}.notification-item p{color:#1f2937;margin:0 0 6px;font-size:.9rem;line-height:1.4}.notification-time{color:#9ca3af;font-size:.75rem}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{content:"";border:3px solid #ccc;border-width:3px 3px 0 0;width:9px;height:9px;display:block;position:absolute;top:6px}.react-datepicker__sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker-wrapper{border:0;padding:0;display:inline-block}.react-datepicker{color:#000;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:initial;background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;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-right-radius:.375em;border-bottom-left-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-top:1px solid #aeaeae;border-bottom:none;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{margin:0 15px;display:inline-block}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;background-color:#0000;border:1px solid #aeaeae;border-radius:.3rem;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:1px auto}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{color:#000;margin-top:0;font-size:.944rem;font-weight:700}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{text-align:center;cursor:pointer;z-index:1;text-indent:-999em;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex;position:absolute;top:2px;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{margin-left:auto;margin-right:auto;display:block;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{width:0;font-size:20px;position:relative;top:-1px}.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{text-align:center;margin:.5em}.react-datepicker__year-wrapper{flex-wrap:wrap;max-width:180px;display:flex}.react-datepicker__year .react-datepicker__year-text{width:5em;margin:2px;display:inline-block}.react-datepicker__month{text-align:center;margin:.5em}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{width:5em;margin:2px;display:inline-block}.react-datepicker__input-time-container{clear:both;float:left;text-align:left;width:100%;margin:5px 0 10px 15px}.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{margin-left:10px;display:inline-block}.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{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.375em;display:inline;position:absolute;top:0;right:-87px}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.375em;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{text-align:center;border-bottom-right-radius:.375em;width:85px;margin:0 auto;overflow-x:hidden}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:content-box;width:100%;height:calc(195px + 1.0625em);margin:0;padding-left:0;padding-right:0;list-style:none;overflow-y:scroll}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{white-space:nowrap;height:30px;padding:5px 10px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{color:#fff;background-color:#216ba5;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:#0000}.react-datepicker__week-number{color:#ccc;text-align:center;width:2.125em;margin:.208em;line-height:2.125em;display:inline-block}.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{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;text-align:center;width:2.125em;margin:.208em;line-height:2.125em;display:inline-block}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.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{color:#fff;background-color:#3dcc4a;border-radius:.3rem}.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{color:#fff;background-color:#ff6803;border-radius:.3rem;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{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{color:#000;background-color:#bad9f1;border-radius:.3rem}.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{color:#fff;background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){color:#000;background-color:#f0f0f0}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:70%;left:50%;transform:translate(-50%)}.react-datepicker__input-container{width:100%;display:inline-block;position:relative}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:content-box;padding:.625em;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{top:0;right:-16px;transform:rotate(135deg)}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{z-index:1;text-align:center;background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;width:50%;position:absolute;top:30px;left:25%}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{width:100%;margin-left:auto;margin-right:auto;line-height:20px;display:block}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;user-select:none;border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;vertical-align:middle;background-color:#0000;border:0;outline:0;height:100%;padding:0 6px 0 0;display:table-cell;position:absolute;top:0;right:0}.react-datepicker__close-icon:after{cursor:pointer;color:#fff;text-align:center;vertical-align:middle;content:"×";background-color:#216ba5;border-radius:50%;width:16px;height:16px;padding:2px;font-size:12px;line-height:1;display:table-cell}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{cursor:pointer;text-align:center;clear:left;background:#f0f0f0;border-top:1px solid #aeaeae;padding:5px 0;font-weight:700}.react-datepicker__portal{z-index:2147483647;background-color:#000c;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.react-datepicker__children-container{width:17.25em;height:auto;margin:.5em;padding-left:.25em;padding-right:.25em}.react-datepicker__aria-live{clip-path:circle(0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker__calendar-icon{vertical-align:-.125em;width:1em;height:1em}.react-datepicker-popper-offset{margin-top:-.7em}.dashboard-container{background-color:var(--bg-primary);box-sizing:border-box;min-height:100vh;padding:80px 20px 100px;animation:.5s ease-out fadeIn}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.dashboard-header h1{color:var(--text-primary);margin:0;font-size:24px;font-weight:700}.scope-badge{background:var(--bg-tertiary);color:var(--primary-light);border:1px solid var(--border-color);border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:flex;box-shadow:0 4px 12px #0000001a}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:24px;display:grid}.metric-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;align-items:center;gap:16px;padding:20px;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 4px 20px #0000000d}.metric-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0000001a}.metric-icon{color:#fff;border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.users-icon{background:linear-gradient(135deg,#0088fe,#0056b3)}.clock-icon{background:linear-gradient(135deg,#00c49f,#008a6e)}.check-icon{background:linear-gradient(135deg,#ffbb28,#b38015)}.trend-icon{background:linear-gradient(135deg,#ff8042,#b3562b)}.metric-info{flex-direction:column;display:flex}.metric-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:13px}.metric-value{color:var(--text-primary);font-size:24px;font-weight:700}.split-metric{justify-content:center}.metric-split-item{flex-direction:column;align-items:center;display:flex}.split-label{color:var(--text-secondary);text-transform:uppercase;margin-bottom:8px;font-size:13px}.split-value{flex-direction:column;align-items:center;gap:4px;display:flex}.split-value .current{color:#ef4444;font-size:24px;font-weight:700}.split-value .previous{color:var(--text-tertiary);font-size:12px}.charts-grid-main{grid-template-columns:1fr 1.5fr;gap:20px;margin-bottom:24px;display:grid}.charts-grid-secondary{grid-template-columns:1fr;gap:20px;display:grid}.chart-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;flex-direction:column;padding:20px;display:flex;box-shadow:0 4px 20px #0000000d}.chart-card h3{color:var(--text-primary);border-bottom:1px solid var(--border-color);margin-top:0;margin-bottom:16px;padding-bottom:12px;font-size:16px;font-weight:600}.chart-wrapper{flex:1;width:100%;min-height:250px}.pie-chart-wrapper{justify-content:center;align-items:center;display:flex}.table-responsive{overflow-x:auto}.resource-table{border-collapse:collapse;text-align:left;width:100%}.resource-table th,.resource-table td{vertical-align:middle;border:1px solid #0000001a;padding:12px;font-size:13px}.resource-table th{color:var(--text-muted,#64748b);background-color:var(--surface-hover,#f1f5f9);text-align:center;font-weight:600}.resource-table td{color:var(--text-main,#0f172a);text-align:center}.resource-table td:first-child,.resource-table th:first-child{text-align:left}.resource-name{margin-bottom:2px;font-weight:600}.resource-role{color:var(--text-secondary);font-size:12px}.completion-bar{align-items:center;gap:8px;display:flex}.completion-bar .bar-fill{background-color:var(--primary-color);border-radius:4px;height:8px}.completion-bar span{font-size:12px;font-weight:600}.quality-badge{text-transform:uppercase;border-radius:12px;padding:4px 8px;font-size:12px;font-weight:600}.quality-excellent{color:#00c49f;background-color:#00c49f1a}.quality-good{color:#0088fe;background-color:#0088fe1a}.quality-average{color:#ffbb28;background-color:#ffbb281a}.quality-poor{color:#ff8042;background-color:#ff80421a}.loading-container,.error-container{height:calc(100vh - 130px);color:var(--text-secondary);justify-content:center;align-items:center;font-size:18px;display:flex}.error-container{color:var(--danger-color)}@media (width<=1024px){.charts-grid-main,.charts-grid-secondary{grid-template-columns:1fr}}@media (width<=768px){.charts-grid-main{grid-template-columns:1fr}}.info-icon-container{color:var(--text-tertiary,#9ca3af);cursor:help;z-index:10;justify-content:center;align-items:center;transition:color .2s;display:flex;position:absolute;top:16px;right:16px}.info-icon-container:hover{color:var(--primary-color,#3b82f6)}.info-tooltip{visibility:hidden;opacity:0;z-index:9999;background-color:var(--bg-tertiary,#fff);width:max-content;max-width:250px;color:var(--text-primary,#111827);text-align:left;border:1px solid var(--border-color,#e5e7eb);pointer-events:none;border-radius:8px;padding:10px 14px;font-size:12px;font-weight:500;line-height:1.5;transition:opacity .2s,visibility .2s,transform .2s;position:absolute;top:130%;bottom:auto;right:0;transform:translateY(5px);box-shadow:0 4px 20px #00000026}.info-tooltip:after{content:"";border-style:solid;border-width:6px;border-color:transparent transparent var(--bg-tertiary,#fff) transparent;margin-left:-5px;position:absolute;bottom:100%;right:4px}.info-tooltip:before{content:"";border-style:solid;border-width:7px;border-color:transparent transparent var(--border-color,#e5e7eb) transparent;margin-left:-5px;position:absolute;bottom:100%;right:4px}.info-icon-container:hover .info-tooltip{visibility:visible;opacity:1;transform:translateY(0)}.metric-card,.chart-card{position:relative}.header-left{align-items:center;gap:15px;display:flex}.live-indicator{color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;align-items:center;padding:6px 14px;font-size:13px;font-weight:500;display:flex}.time-filter-select{border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;border-radius:8px;outline:none;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s}.time-filter-select:hover{border-color:var(--primary-color)}.time-scope-label{color:var(--text-muted,#64748b);border-left:1px solid var(--border-color,#e2e8f0);padding-left:10px;font-size:13px;font-weight:500}.urgent-risk-container{cursor:help;align-items:center;display:inline-flex;position:relative}.urgent-risk-container .info-tooltip{white-space:nowrap;width:max-content;inset:auto auto 130% 50%;transform:translate(-50%)translateY(5px)}.urgent-risk-container .info-tooltip:after{content:"";border-style:solid;border-width:6px;border-color:var(--bg-tertiary,#fff) transparent transparent transparent;margin-left:-6px;position:absolute;inset:100% auto auto 50%}.urgent-risk-container .info-tooltip:before{content:"";border-style:solid;border-width:7px;border-color:var(--border-color,#e5e7eb) transparent transparent transparent;margin-left:-7px;position:absolute;inset:100% auto auto 50%}.urgent-risk-container:hover .info-tooltip{visibility:visible;opacity:1;transform:translate(-50%)translateY(0)}.mfg-cell-hover:hover{filter:brightness(.95);box-shadow:inset 0 0 0 2px #0000001a}.timeline-container{background-color:var(--bg-primary);box-sizing:border-box;flex-direction:column;height:100vh;padding:80px 20px 100px;animation:.5s ease-out fadeIn;display:flex;overflow:hidden}.timeline-header-bar{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px;display:flex}.timeline-controls{align-items:center;gap:15px;display:flex}.current-date-range{background:var(--bg-secondary,#fff);border:1px solid var(--border-color,#e2e8f0);color:var(--text-primary);border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-weight:600;display:flex}.ctrl-btn{background:var(--bg-secondary,#fff);border:1px solid var(--border-color,#e2e8f0);color:var(--text-primary);border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.ctrl-btn:hover{background:var(--bg-hover,#f8fafc);border-color:var(--primary-color,#4f46e5)}.timeline-board{background:var(--bg-secondary,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:12px;flex:0 auto;max-height:100%;overflow:auto;box-shadow:0 4px 6px -1px #0000000d}.timeline-header-row{border-bottom:3px solid var(--border-color,#cbd5e1);z-index:20;background:#f8fafc;min-width:max-content;display:flex;position:sticky;top:0}.timeline-staff-header{width:130px;color:var(--text-secondary,#475569);border-right:1px solid var(--border-color,#e2e8f0);flex-shrink:0;padding:15px 10px;font-weight:600}.timeline-days-header{flex-grow:1;min-width:800px}.day-cell{text-align:center;border-right:1px solid var(--border-color,#e2e8f0);color:var(--text-secondary,#475569);padding:10px}.day-cell:last-child{border-right:none}.day-cell.today{color:#1d4ed8;background:#eff6ff;font-weight:700}.day-name{text-transform:uppercase;font-size:12px}.day-number{font-size:16px}.timeline-body{flex-direction:column;min-width:max-content;display:flex}.timeline-row{border-bottom:3px solid var(--border-color,#cbd5e1);display:flex}.timeline-row:last-child{border-bottom:none}.timeline-staff-cell{border-right:1px solid var(--border-color,#e2e8f0);flex-shrink:0;align-items:center;gap:12px;width:130px;padding:15px 10px;display:flex}.staff-avatar{background:var(--primary-color,#4f46e5);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:14px;font-weight:600;display:flex}.staff-info{flex-direction:column;display:flex}.staff-name{color:var(--text-primary);overflow-wrap:break-word;word-break:normal;font-size:13px;font-weight:600;line-height:1.2}.staff-role{color:var(--text-muted,#64748b);font-size:12px}.timeline-grid-container{flex-grow:1;min-width:800px;position:relative}.timeline-bg-grid{z-index:1;grid-template-columns:repeat(14,1fr);display:grid;position:absolute;inset:0}.bg-col{border-right:1px solid var(--border-color,#e2e8f0)}.bg-col:last-child{border-right:none}.timeline-tasks-grid{z-index:2;grid-template-columns:repeat(14,1fr);grid-auto-rows:minmax(40px,auto);padding:10px 0;display:grid;position:relative}.task-block{color:#fff;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:6px;flex-direction:column;justify-content:center;min-height:40px;padding:6px 10px;font-size:12px;transition:transform .2s;display:flex;overflow:hidden;box-shadow:0 2px 4px #0000001a}.task-block:hover{z-index:10;transform:scale(1.02)}.task-block-title{text-overflow:ellipsis;font-weight:600;overflow:hidden}.task-block-status{opacity:.9;text-transform:uppercase;margin-top:2px;font-size:10px}.no-data{text-align:center;color:var(--text-muted,#64748b);padding:40px}.timeline-legend{border-top:1px solid var(--border-color,#e2e8f0);z-index:20;box-sizing:border-box;background:#f8fafc;border-radius:12px;flex-wrap:wrap;flex-shrink:0;justify-content:center;gap:15px;width:100%;margin-top:10px;padding:15px;display:flex;position:sticky;bottom:0}.legend-item{align-items:center;gap:6px;display:flex}.legend-color{border-radius:4px;width:14px;height:14px}.legend-label{color:var(--text-secondary,#475569);font-size:12px;font-weight:600}.timeline-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.timeline-filter-input,.timeline-filter-select{border:1px solid var(--border-color,#e2e8f0);background:var(--bg-secondary,#fff);color:var(--text-primary);border-radius:8px;outline:none;padding:8px 12px;font-size:14px;transition:border-color .2s}.timeline-filter-input:focus,.timeline-filter-select:focus{border-color:var(--primary-color,#4f46e5)}
