@charset "UTF-8";:root{--primary-color: #007aff;--secondary-color: #5ac8fa;--success-color: #34c759;--warning-color: #ff9500;--danger-color: #ff3b30;--text-color: #1d1d1f;--bg-color: #f5f5f7;--card-bg: #ffffff;--sidebar-bg: #ffffff;--border-color: #d2d2d7;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;max-width:100vw;overflow-x:hidden}a{text-decoration:none;color:inherit}ul{list-style:none}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:#0062cc}.btn-danger{background-color:var(--danger-color);color:#fff}.btn-danger:hover{background-color:#cc2f26}.btn-secondary{background-color:#e5e5ea;color:var(--text-color)}.btn-secondary:hover{background-color:#d1d1d6}.card{background:var(--card-bg);border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000000d}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:#86868b}.form-control{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #007aff1a}.react-datepicker-popper{z-index:105!important}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.table th{font-weight:600;color:#86868b;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}.badge{padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:uppercase}.badge-active{background-color:#34c7591a;color:var(--success-color)}.badge-inactive{background-color:#8e8e931a;color:#8e8e93}.react-datepicker-wrapper,.react-datepicker__input-container{width:100%}.react-datepicker__input-container input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;font-family:inherit;transition:border-color .2s}.react-datepicker__input-container input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #007aff1a}.modal-overlay{position:fixed;inset:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow:hidden;animation:modalScale .2s ease-out}@keyframes modalScale{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #f1f1f1;display:flex;align-items:center;justify-content:space-between}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.close-button{background:none;border:none;cursor:pointer;color:#9ca3af;padding:.5rem;border-radius:50%;display:flex;transition:all .2s}.close-button:hover{background-color:#f3f4f6;color:#374151}.modal-body{padding:1.5rem}.modal-footer{padding:1.25rem 1.5rem;background-color:#f9fafb;border-top:1px solid #f1f1f1;display:flex;justify-content:flex-end;gap:.75rem}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.75rem;color:#9ca3af;pointer-events:none}.input-with-icon .form-control{padding-left:2.5rem}.form-help{margin-top:.5rem;font-size:.8rem;color:#6b7280}.btn-outline{background:#fff;border:1px solid #d1d5db;color:#374151}.btn-outline:hover{background-color:#f9fafb;border-color:#9ca3af}.page-container{max-width:1200px;margin:0 auto;padding:1rem 0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:.5rem 0}.page-title{font-size:1.75rem;font-weight:700;color:#111827;margin-bottom:.25rem}.page-subtitle{font-size:.95rem;color:#6b7280}.loading-state{padding:3rem;text-align:center;color:#6b7280;font-style:italic}.clickable-row{cursor:pointer;transition:background-color .15s ease-in-out}.clickable-row:hover{background-color:#0284c714!important}.layout{display:flex;flex-direction:column;min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden}.header{background-color:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);padding:0 1.5rem;height:60px;display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;right:0;z-index:100}.header-left{display:flex;align-items:center;gap:1rem}.brand-title{font-size:1.1rem;font-weight:600;margin:0}.menu-toggle{background:none;border:none;cursor:pointer;display:none;align-items:center;justify-content:center;padding:.5rem;color:var(--text-color)}.desktop-menu-toggle{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.5rem;color:var(--text-color)}.menu-toggle:hover,.desktop-menu-toggle:hover{background-color:#e5e5ea;border-radius:8px}.profile-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:#f2f2f7;color:var(--primary-color);transition:background-color .2s}.profile-icon:hover{background-color:#e5e5ea}.sidebar{position:fixed;top:60px;left:0;bottom:0;width:250px;background-color:var(--sidebar-bg);border-right:1px solid var(--border-color);padding:1rem 0;overflow-y:auto;z-index:90;transition:transform .3s ease,width .3s ease}.sidebar.desktop-closed{transform:translate(-100%)}.sidebar-header{display:none}.sidebar-nav ul{list-style:none;padding:0 .5rem}.nav-item{display:flex;align-items:center;padding:.75rem 1rem;color:var(--text-color);border-radius:8px;margin-bottom:.25rem;cursor:pointer;transition:background-color .2s;text-decoration:none;font-weight:500}.nav-item:hover,.nav-item.active{background-color:#f2f2f7;color:var(--primary-color)}.nav-item svg,.nav-item-content svg{flex-shrink:0}.nav-item span{margin-left:.75rem}.nav-item.has-submenu{justify-content:space-between}.nav-item-content{display:flex;align-items:center}.submenu{margin-left:1.5rem;border-left:2px solid #f2f2f7;padding-left:.5rem!important}.submenu .nav-item{padding:.5rem 1rem;font-size:.95rem}.content{margin-top:60px;margin-left:250px;flex:1;display:flex;flex-direction:column;min-height:calc(100vh - 60px);min-width:0;max-width:calc(100vw - 250px);transition:margin-left .3s ease,max-width .3s ease}.content.desktop-closed{margin-left:0;max-width:100vw}.content-inner{padding:2rem;flex:1;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.footer{padding:1.5rem;text-align:center;color:#86868b;font-size:.85rem;border-top:1px solid var(--border-color);background-color:var(--bg-color)}.sidebar-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:80;opacity:0;transition:opacity .3s}@media(max-width:768px){.header{padding:0 .875rem}.header-left{gap:.4rem;min-width:0;flex:1}.brand-title{font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-toggle{display:flex;flex-shrink:0}.desktop-menu-toggle{display:none}.sidebar{transform:translate(-100%);top:0;z-index:110;width:280px}.sidebar.desktop-closed{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.sidebar-header h2{margin:0;font-size:1.25rem}.close-sidebar{background:none;border:none;cursor:pointer}.content{margin-left:0;width:100%;max-width:100vw;overflow-x:hidden}.content-inner{padding:.875rem}.footer{padding:1rem .875rem!important}.sidebar-overlay{display:block;pointer-events:none}.sidebar-overlay.open{opacity:1;pointer-events:auto}}.dashboard{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.dashboard .card{min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden}.dashboard-two-col-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:1.5rem;margin-bottom:2rem;width:100%;max-width:100%}.dashboard-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-bottom:2rem;width:100%;max-width:100%}.dashboard-section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;min-width:0}.dashboard-section-header svg{flex-shrink:0}.dashboard-section-title{font-size:1.1rem;font-weight:600;margin:0;line-height:1.35;color:#1e293b}.dashboard-stat-value{margin:.45rem 0 0;font-size:1.65rem;font-weight:700;line-height:1.25;word-break:break-word}.dashboard-stat-unit{font-size:.88rem;font-weight:500}.dashboard-chart-card{margin-bottom:2.5rem;padding:2rem;border-radius:20px;box-shadow:0 4px 20px -5px #0000000d;border:1px solid #f1f5f9;background:#fff}.dashboard-chart-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:.75rem}.dashboard-chart-legend{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.dashboard-mobile-subtext,.dashboard-mobile-only{display:none}.dashboard-desktop-only{display:block}.dashboard-mobile-list{display:flex;flex-direction:column;gap:.75rem}.dashboard-mobile-card-item{border:1px solid #e2e8f0;border-radius:10px;padding:.75rem;background:#f8fafc}.dashboard-mobile-stock-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem;margin-top:.6rem}.dashboard-mobile-stock-pill{display:flex;justify-content:space-between;align-items:center;padding:.35rem .55rem;border-radius:6px;font-size:.78rem;background:#fff;border:1px solid #e2e8f0}.dashboard-mobile-stock-pill.has-stock{background:#fef2f2;border-color:#fecaca;color:#dc2626;font-weight:600}@media(max-width:768px){.dashboard-two-col-grid{grid-template-columns:1fr;gap:1rem;margin-bottom:1.25rem}.dashboard-stats-grid{grid-template-columns:1fr;gap:.85rem;margin-bottom:1.25rem}.dashboard .card{padding:1rem;border-radius:14px}.dashboard-chart-card{padding:1rem!important;margin-bottom:1.25rem!important;border-radius:14px!important}.dashboard-chart-header{margin-bottom:1rem}.dashboard-section-title{font-size:.96rem}.dashboard-stat-value{font-size:1.4rem}.dashboard-stat-unit{display:block;font-size:.8rem;margin-top:2px;opacity:.92}.hide-on-mobile{display:none!important}.dashboard-mobile-subtext{display:block;font-size:.72rem;color:#64748b;margin-top:2px;font-weight:400}.dashboard-desktop-only{display:none!important}.dashboard-mobile-only{display:block!important}.dashboard .table-container{overflow-x:hidden;width:100%}.dashboard .table{width:100%;table-layout:fixed;font-size:.8rem!important}.dashboard .table th,.dashboard .table td{padding:.55rem .35rem;word-break:break-word;vertical-align:middle}.dashboard .table th{font-size:.7rem;letter-spacing:.02em}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.375em;border-bottom-right-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-bottom:none;border-top:1px solid #aeaeae;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{display:inline-block;margin:0 15px}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{background-color:transparent;border:1px solid #aeaeae;border-radius:.3rem;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;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:auto 1px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.5em;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:5em;margin:2px}.react-datepicker__month{margin:.5em;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:5em;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.375em;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.0625em);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{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;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.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{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.625em;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__children-container{width:17.25em;margin:.5em;padding-right:.25em;padding-left:.25em;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.react-datepicker-popper-offset{margin-top:-.7em}.role-permissions-container{padding:1rem}.controls-flex{display:flex;justify-content:space-between;align-items:flex-end;margin-top:1rem;gap:1rem;flex-wrap:wrap}.permissions-table{width:100%;border-collapse:collapse}.permissions-table th{background-color:#f8fafc;color:#64748b;font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;border-bottom:2px solid #e2e8f0}.permissions-table td{padding:.75rem 1rem;border-bottom:1px solid #e2e8f0;text-align:left;color:#1e293b}.permissions-table th.text-center,.permissions-table td.text-center{text-align:center}.permissions-table tbody tr:hover{background-color:#f1f5f9}.sticky-header{position:sticky;top:0;z-index:1}.btn-select-all{background:transparent;border:1px solid #475569;color:#94a3b8;border-radius:4px;padding:4px 8px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.btn-select-all:hover{background:#3b82f6;color:#fff;border-color:#3b82f6}.checkbox-container.center{display:flex;justify-content:center;align-items:center;margin:0;padding:0}.checkbox-container{display:inline-flex;align-items:center;justify-content:center;position:relative;cursor:pointer;font-size:22px;-webkit-user-select:none;user-select:none;width:20px;height:20px}.checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark{position:absolute;top:0;left:0;height:20px;width:20px;background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:4px;transition:all .2s}.checkbox-container:hover input~.checkmark{background-color:#f1f5f9}.checkbox-container input:checked~.checkmark{background-color:#3b82f6;border-color:#3b82f6}.checkmark:after{content:"";position:absolute;display:none}.checkbox-container input:checked~.checkmark:after{display:block}.checkbox-container .checkmark:after{left:6px;top:2px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.hr-container{padding:1.5rem;max-width:100%}.hr-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.hr-title{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:.6rem;color:var(--text-color, #1d1d1f);margin:0}.hr-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.hr-tabs{display:flex;gap:.5rem;border-bottom:2px solid var(--border-color, #e2e8f0);margin-bottom:1.5rem;overflow-x:auto}.hr-tab-btn{padding:.65rem 1.25rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#64748b;font-weight:600;font-size:.95rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;margin-bottom:-2px;transition:all .2s ease;white-space:nowrap}.hr-tab-btn:hover{color:var(--primary-color, #007aff)}.hr-tab-btn.active{color:var(--primary-color, #007aff);border-bottom-color:var(--primary-color, #007aff)}.hr-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.hr-stat-card{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:10px;padding:1.15rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #0000000a}.hr-stat-icon{width:46px;height:46px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hr-stat-info{display:flex;flex-direction:column}.hr-stat-label{font-size:.8rem;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.hr-stat-value{font-size:1.35rem;font-weight:700;color:var(--text-color, #1e293b);line-height:1.2;margin-top:.2rem}.hr-filter-bar{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:10px;padding:1rem;margin-bottom:1.5rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.hr-search-input{flex:1;min-width:220px;position:relative}.hr-search-input input{width:100%;padding:.55rem .85rem .55rem 2.2rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;font-size:.9rem;background:var(--card-bg, #ffffff);color:inherit}.hr-search-input svg{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#94a3b8}.hr-select{padding:.55rem .85rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;font-size:.9rem;background:var(--card-bg, #ffffff);color:inherit;min-width:160px}.hr-table-container{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:10px;overflow-x:auto;box-shadow:0 1px 3px #0000000a}.hr-table{width:100%;border-collapse:collapse;font-size:.9rem;text-align:left}.hr-table th{background:#f8fafc;color:#475569;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;padding:.85rem 1rem;border-bottom:2px solid var(--border-color, #e2e8f0);white-space:nowrap}.hr-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border-color, #e2e8f0);color:var(--text-color, #1e293b);vertical-align:middle}.hr-table tbody tr:hover{background-color:#007aff05}.hr-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:9999px;font-size:.75rem;font-weight:600;line-height:1}.hr-badge-success{background:#34c75926;color:#15803d}.hr-badge-primary{background:#007aff1f;color:#0369a1}.hr-badge-warning{background:#f59e0b26;color:#b45309}.hr-badge-danger{background:#ef444426;color:#b91c1c}.hr-badge-secondary{background:#f1f5f9;color:#475569}.salary-history-card{border-left:3px solid var(--primary-color, #007aff);background:#f8fafc;border-radius:0 8px 8px 0;padding:1rem;margin-bottom:.75rem;position:relative}.salary-diff-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.78rem;font-weight:700;padding:.15rem .45rem;border-radius:4px}.salary-diff-up{background:#dcfce7;color:#166534}.salary-diff-down{background:#fee2e2;color:#991b1b}.roster-table input[type=time],.roster-table input[type=number],.roster-table input[type=text]{padding:.35rem .5rem;border:1px solid var(--border-color, #cbd5e1);border-radius:4px;font-size:.85rem}.roster-table select{padding:.35rem .5rem;border:1px solid var(--border-color, #cbd5e1);border-radius:4px;font-size:.85rem;font-weight:600}.hr-modal-overlay{position:fixed;inset:0;background:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.hr-modal{background:var(--card-bg, #ffffff);border-radius:12px;width:100%;max-width:800px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0003,0 10px 10px -5px #0000001a;border:1px solid var(--border-color, #cbd5e1)}.hr-modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e2e8f0);display:flex;justify-content:space-between;align-items:center}.hr-modal-title{font-size:1.2rem;font-weight:700;margin:0;display:flex;align-items:center;gap:.5rem}.hr-modal-body{padding:1.5rem;overflow-y:auto;flex:1}.hr-modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color, #e2e8f0);display:flex;justify-content:flex-end;gap:.75rem;background:#f8fafc;border-radius:0 0 12px 12px}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}@media(max-width:640px){.form-grid-2,.form-grid-3{grid-template-columns:1fr}}.form-group{margin-bottom:1rem;display:flex;flex-direction:column;gap:.35rem}.form-group label{font-size:.85rem;font-weight:600;color:#475569}.form-group input,.form-group select,.form-group textarea{padding:.55rem .75rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;font-size:.9rem;background:var(--card-bg, #ffffff);color:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color, #007aff);box-shadow:0 0 0 3px #007aff26}.slip-gaji-container{background:#fff;color:#0f172a;padding:2.5rem;max-width:800px;margin:0 auto;border:1px solid #e2e8f0;border-radius:8px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.slip-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #0f172a;padding-bottom:1.25rem;margin-bottom:1.5rem}.slip-company-name{font-size:1.35rem;font-weight:800;color:#0284c7;margin:0 0 .25rem;letter-spacing:.05em}.slip-company-sub{font-size:.85rem;color:#64748b;margin:0}.slip-title{text-align:right}.slip-title h2{font-size:1.2rem;font-weight:800;margin:0 0 .25rem;letter-spacing:.05em}.slip-number{font-size:.85rem;color:#475569;font-family:monospace}.slip-emp-info{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:#f8fafc;padding:1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.85rem}.slip-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.slip-col-box{border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.slip-col-header{background:#f1f5f9;padding:.5rem .75rem;font-weight:700;font-size:.85rem;border-bottom:1px solid #e2e8f0}.slip-row{display:flex;justify-content:space-between;padding:.4rem .75rem;font-size:.85rem;border-bottom:1px dashed #f1f5f9}.slip-row.total-row{font-weight:700;background:#f8fafc;border-top:1px solid #cbd5e1;border-bottom:none}.slip-net-pay{background:#e0f2fe;border:1px solid #bae6fd;border-radius:8px;padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.slip-signatures{display:grid;grid-template-columns:1fr 1fr;text-align:center;margin-top:2.5rem;font-size:.85rem}.slip-sign-line{margin-top:4rem;border-top:1px solid #94a3b8;width:60%;margin-left:auto;margin-right:auto;padding-top:.35rem;font-weight:600}@media print{body *{visibility:hidden}.slip-gaji-container,.slip-gaji-container *{visibility:visible}.slip-gaji-container{position:absolute;left:0;top:0;width:100%!important;max-width:100%!important;border:none!important;padding:1.5rem!important;box-shadow:none!important}.no-print{display:none!important}}
