@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";
:root{--bs-grad-primary:#e21813;--bs-grad-secondary:#e76278;--bs-grad-success:#ffdbdb;--bs-light-grad-1:#fff;--bs-light-grad-2:#f8fafc;--bs-light-grad-3:#e2e8f0;--bs-dark-grad-1:#0f172a;--bs-dark-grad-2:#1e293b;--bs-dark-grad-3:#334155;--text-primary-light:#1e293b;--text-primary-dark:#f1f5f9;--text-secondary-light:#64748b;--text-secondary-dark:#94a3b8;--text-muted-light:#6b7280;--text-muted-dark:#94a3b8;--text-lead-dark:#cbd5e1;--bg-card-light:#fff;--bg-card-light-alpha:#ffffffe6;--bg-card-light-alpha-hover:#fffffff2;--bg-card-dark:#1e293b;--bg-card-dark-alpha:#1e293be6;--bg-card-dark-alpha-hover:#1e293bf2;--bg-dept-card-light:#f8fafccc;--bg-dept-card-light-hover:#f8fafc;--bg-dept-card-dark:#334155cc;--bg-dept-card-dark-hover:#334155;--border-light:#e2e8f0;--border-light-alpha:#e2e8f0cc;--border-dark:#475569;--border-dark-alpha:#475569cc;--border-modal-dark:#334155;--form-bg-light:#ffffffe6;--form-bg-light-focus:#fffffff2;--form-bg-dark:#0f172ae6;--form-bg-dark-focus:#0f172af2;--navbar-bg-light:#f2f5f7;--navbar-bg-dark:#0f172af2;--navbar-border-light:#e2e8f0cc;--navbar-border-dark:#33415580;--navbar-text-light:#333;--navbar-text-dark:#94a3b8;--navbar-text-hover-light:#e21813;--navbar-text-hover-dark:#fff;--navbar-brand-light:#333;--navbar-brand-dark:#f1f5f9;--navbar-icon-light:#e21813;--navbar-icon-dark:#f87171;--navbar-dropdown-item-hover-light:#e218131a;--navbar-dropdown-item-hover-dark:#f8717133;--code-text-light:#e21813;--code-text-dark:#f87171;--code-bg-light:#e713360d;--code-bg-dark:#f871711a;--toggle-active-bg-light:#e21813;--toggle-active-bg-dark:#f87171;--toggle-active-text-light:#fff;--toggle-active-text-dark:#fff;--comment-btn-bg:#3b82f61a;--comment-btn-bg-hover:#3b82f633;--comment-btn-border:#3b82f64d;--comment-btn-border-hover:#3b82f680;--comment-btn-success-bg:#22c55e1a;--comment-btn-success-bg-hover:#22c55e33;--comment-btn-success-border:#22c55e4d;--comment-btn-success-border-hover:#22c55e80;--comment-btn-success-color:#22c55e;--comment-btn-bg-dark:#3b82f633;--comment-btn-bg-hover-dark:#3b82f64d;--comment-btn-border-dark:#3b82f666;--comment-btn-border-hover-dark:#3b82f699;--comment-btn-color-dark:#60a5fa;--comment-btn-success-bg-dark:#22c55e33;--comment-btn-success-bg-hover-dark:#22c55e4d;--comment-btn-success-border-dark:#22c55e66;--comment-btn-success-border-hover-dark:#22c55e99;--comment-btn-success-color-dark:#4ade80;--save-dot-ready-light:#10b981;--save-dot-saving-light:#f59e0b;--save-dot-error-light:#ef4444;--save-dot-ready-dark:#34d399;--save-dot-saving-dark:#fbbf24;--save-dot-error-dark:#f87171;--sidebar-bg-light:#fff;--sidebar-bg-dark:#0f172af2;--sidebar-border-light:#e2e8f080;--sidebar-border-dark:#33415580;--sidebar-link-light:#1e293b;--sidebar-link-dark:#94a3b8;--sidebar-link-hover-light:#e21813;--sidebar-link-hover-dark:#f87171;--sidebar-link-active-light:#e21813;--sidebar-link-active-dark:#f87171;--sidebar-link-active-bg-light:#e713361a;--sidebar-link-active-bg-dark:#dc262633;--sidebar-link-active-border-light:#e21813;--sidebar-link-active-border-dark:#f87171;--shadow-light:#0000001a;--shadow-light-hover:#00000026;--shadow-dark:#0006;--shadow-dark-hover:#0009;--shadow-modal-light:#00000080;--shadow-modal-dark:#0f172acc;--dropdown-bg-light:#fffffff2;--dropdown-bg-dark:#1e293bf2;--dropdown-item-hover-dark:#334155cc;--btn-primary-bg:#111;--btn-primary-bg-hover:#e21813;--btn-primary-border:#111;--btn-primary-border-hover:#e21813;--btn-primary-color:#fff;--btn-secondary-bg:#64748b;--btn-secondary-bg-hover:#475569;--btn-secondary-border:#64748b;--btn-secondary-border-hover:#475569;--btn-secondary-color:#fff;--btn-success-bg:#16a34a;--btn-success-bg-hover:#15803d;--btn-success-border:#16a34a;--btn-success-border-hover:#15803d;--btn-success-color:#fff;--btn-danger-bg:#dc2626;--btn-danger-bg-hover:#b91c1c;--btn-danger-border:#dc2626;--btn-danger-border-hover:#b91c1c;--btn-danger-color:#fff;--btn-warning-bg:#ea580c;--btn-warning-bg-hover:#c2410c;--btn-warning-border:#ea580c;--btn-warning-border-hover:#c2410c;--btn-warning-color:#fff;--btn-info-bg:#0891b2;--btn-info-bg-hover:#0e7490;--btn-info-border:#0891b2;--btn-info-border-hover:#0e7490;--btn-info-color:#fff;--btn-light-bg:#f1f5f9;--btn-light-bg-hover:#e2e8f0;--btn-light-border:#e2e8f0;--btn-light-border-hover:#cbd5e1;--btn-light-color:#1e293b;--btn-dark-bg:#1e293b;--btn-dark-bg-hover:#0f172a;--btn-dark-border:#1e293b;--btn-dark-border-hover:#0f172a;--btn-dark-color:#fff;--status-item-bg-light:var(--bg-dept-card-light);--status-item-bg-dark:var(--bg-dept-card-dark);--bs-primary:#e21813!important;--bs-primary-rgb:226,24,19!important;--bs-secondary:#6b7280!important;--bs-success:#10b981!important;--bs-info:#3b82f6!important;--bs-warning:#f59e0b!important;--bs-danger:#ef4444!important;--bs-light:#f8fafc!important;--bs-dark:#1e293b!important;--comment-btn-color:#3b82f6!important}body{background:linear-gradient(135deg,var(--bs-light-grad-1)0%,var(--bs-light-grad-2)50%,var(--bs-light-grad-3)100%);color:var(--text-primary-light);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s}html.dark-mode body{background:linear-gradient(135deg,var(--bs-dark-grad-1)0%,var(--bs-dark-grad-2)50%,var(--bs-dark-grad-3)100%);color:var(--text-primary-dark)}.btn-primary{background-color:var(--btn-primary-bg)!important;border-color:var(--btn-primary-border)!important;color:var(--btn-primary-color)!important}.btn-primary:hover,.btn-primary:focus,.btn-primary:active{background-color:var(--btn-primary-bg-hover)!important;border-color:var(--btn-primary-border-hover)!important}.btn-secondary{background-color:var(--btn-secondary-bg)!important;border-color:var(--btn-secondary-border)!important;color:var(--btn-secondary-color)!important}.btn-secondary:hover,.btn-secondary:focus,.btn-secondary:active{background-color:var(--btn-secondary-bg-hover)!important;border-color:var(--btn-secondary-border-hover)!important}.btn-success{background-color:var(--btn-success-bg)!important;border-color:var(--btn-success-border)!important;color:var(--btn-success-color)!important}.btn-success:hover,.btn-success:focus,.btn-success:active{background-color:var(--btn-success-bg-hover)!important;border-color:var(--btn-success-border-hover)!important}.btn-danger{background-color:var(--btn-danger-bg)!important;border-color:var(--btn-danger-border)!important;color:var(--btn-danger-color)!important}.btn-danger:hover,.btn-danger:focus,.btn-danger:active{background-color:var(--btn-danger-bg-hover)!important;border-color:var(--btn-danger-border-hover)!important}.btn-warning{background-color:var(--btn-warning-bg)!important;border-color:var(--btn-warning-border)!important;color:var(--btn-warning-color)!important}.btn-warning:hover,.btn-warning:focus,.btn-warning:active{background-color:var(--btn-warning-bg-hover)!important;border-color:var(--btn-warning-border-hover)!important}.btn-info{background-color:var(--btn-info-bg)!important;border-color:var(--btn-info-border)!important;color:var(--btn-info-color)!important}.btn-info:hover,.btn-info:focus,.btn-info:active{background-color:var(--btn-info-bg-hover)!important;border-color:var(--btn-info-border-hover)!important}.btn-light{background-color:var(--btn-light-bg)!important;border-color:var(--btn-light-border)!important;color:var(--btn-light-color)!important}.btn-light:hover,.btn-light:focus,.btn-light:active{background-color:var(--btn-light-bg-hover)!important;border-color:var(--btn-light-border-hover)!important}.btn-dark{background-color:var(--btn-dark-bg)!important;border-color:var(--btn-dark-border)!important;color:var(--btn-dark-color)!important}.btn-dark:hover,.btn-dark:focus,.btn-dark:active{background-color:var(--btn-dark-bg-hover)!important;border-color:var(--btn-dark-border-hover)!important}.navbar-nav .nav-link,.navbar-custom .nav-link{color:var(--navbar-text-light)!important}.navbar-nav .nav-link:hover,.navbar-custom .nav-link:hover{color:var(--navbar-text-hover-light)!important}.navbar-brand{color:var(--navbar-brand-light)!important}.navbar-brand i{color:var(--navbar-icon-light)!important}.dark-mode .navbar-nav .nav-link,.dark-mode .navbar-custom .nav-link{color:var(--navbar-text-dark)!important}.dark-mode .navbar-nav .nav-link:hover,.dark-mode .navbar-custom .nav-link:hover{color:var(--navbar-text-hover-dark)!important}.dark-mode .navbar-brand{color:var(--navbar-brand-dark)!important}.dark-mode .navbar-brand i{color:var(--navbar-icon-dark)!important}.dark-mode .text-muted{color:var(--text-muted-dark)!important}.dark-mode .lead{color:var(--text-lead-dark)!important}.department-card{transition:all .3s;background:var(--bg-dept-card-light)!important}.department-card:hover{box-shadow:0 4px 12px var(--shadow-light);transform:translateY(-2px);background:var(--bg-dept-card-light-hover)!important}.dark-mode .department-card{background:var(--bg-dept-card-dark)!important;border-color:var(--border-dark)!important}.dark-mode .department-card:hover{box-shadow:0 4px 12px var(--shadow-dark);background:var(--bg-dept-card-dark-hover)!important}.form-select,.project-select{border:1px solid var(--border-light-alpha);background:var(--form-bg-light)!important;color:var(--text-primary-light)!important}.dark-mode .form-select,.dark-mode .project-select{border:1px solid var(--border-dark-alpha);background:var(--form-bg-dark)!important;color:var(--text-primary-dark)!important}.dark-mode .form-select:focus,.dark-mode .project-select:focus{border-color:var(--bs-info);box-shadow:0 0 0 .2rem #3b82f640;background:var(--form-bg-dark-focus)!important;color:var(--text-primary-dark)!important}.dark-mode .form-select option,.dark-mode .project-select option{background:var(--bs-dark)!important;color:var(--text-primary-dark)!important}.dark-mode ::placeholder{color:var(--text-muted-dark)!important}@media (max-width:768px){.calendar-grid .calendar-days{display:block!important}.calendar-grid .calendar-days .row{margin-bottom:1rem!important;display:block!important}.calendar-grid .calendar-days .col{margin-bottom:.5rem;flex:none!important;width:100%!important;max-width:100%!important}.calendar-grid .row.g-1.mb-2{display:none!important}.calendar-day{border-radius:8px!important;flex-wrap:wrap!important;justify-content:space-between!important;align-items:center!important;margin-bottom:.5rem!important;padding:1rem!important;display:flex!important}.calendar-day .day-number{min-width:40px!important;margin-right:1rem!important;font-size:1.2rem!important;font-weight:700!important}.calendar-day .value-btn{min-width:60px!important;margin-right:1rem!important}.calendar-day .project-select{flex:1!important;min-width:150px!important;margin-top:.5rem!important}.calendar-grid .d-flex.justify-content-between{flex-direction:column!important;align-items:flex-start!important;gap:1rem!important}.calendar-grid .d-flex.gap-2{flex-wrap:wrap!important;gap:.5rem!important}.card-enhanced{margin-bottom:1.5rem!important}.card-body .row.text-center .col-4{margin-bottom:1rem}.card-body .row.text-center .h4{font-size:1.5rem!important}.department-card{margin-bottom:1rem!important}.timesheet-container{padding-left:.5rem!important;padding-right:.5rem!important}.navbar-toggler{border:1px solid #e2e8f04d!important;padding:.25rem .5rem!important}.navbar-toggler:focus{box-shadow:0 0 0 .2rem #3b82f640!important}.navbar-collapse{background:var(--navbar-bg-light)!important;box-shadow:0 4px 12px var(--shadow-light)!important;border-radius:8px!important;margin-top:.5rem!important;padding:1rem!important}.nav-link{border-radius:6px!important;margin-bottom:.25rem!important;padding:.75rem 1rem!important}.nav-link:hover{background:var(--comment-btn-bg)!important}}.modal-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:var(--bg-card-light)!important;color:var(--text-primary-light)!important;border:1px solid var(--border-light-alpha)!important}.modal-header{border-bottom-color:var(--border-light-alpha)!important}.modal-footer{border-top-color:var(--border-light-alpha)!important}html.dark-mode .modal-content{background-color:var(--bg-card-dark)!important;color:var(--text-primary-dark)!important;border:1px solid var(--border-dark-alpha)!important}html.dark-mode .modal-header{border-bottom-color:var(--border-dark-alpha)!important}html.dark-mode .modal-footer{border-top-color:var(--border-dark-alpha)!important}html.dark-mode .btn-close{filter:invert()grayscale()brightness(200%)}html.dark-mode .form-text{color:var(--text-muted-dark)!important}.modal.show{background-color:var(--shadow-modal-light)}html.dark-mode .modal.show{background-color:var(--shadow-modal-dark)!important}.dark-mode .table{color:var(--text-primary-dark)!important;--bs-table-bg:transparent!important;--bs-table-border-color:var(--border-modal-dark)!important}.dark-mode .table th{border-color:var(--border-modal-dark)!important;color:var(--text-secondary-dark)!important;background:#3341554d!important}.dark-mode .table td{border-color:var(--border-modal-dark)!important;color:var(--text-primary-dark)!important;background:0 0!important}.dark-mode .table tbody tr{background:0 0!important}.dark-mode .table-hover tbody tr:hover,.dark-mode .table-hover tbody tr:hover td{color:var(--text-primary-dark)!important;background:#33415580!important}@media (max-width:992px) and (min-width:769px){.timesheet-header .row .col-12{margin-bottom:1rem}.timesheet-header .d-flex{justify-content:center!important}}.card{border:1px solid var(--border-light-alpha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s;background:var(--bg-card-light)!important;color:var(--text-primary-light)!important}.dark-mode .card{border:1px solid var(--border-dark-alpha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card-dark)!important;color:var(--text-primary-dark)!important}.dark-mode .card-text{color:var(--text-lead-dark)!important}@media (max-width:768px){.dark-mode .navbar-toggler{border-color:var(--border-dark-alpha)!important;color:var(--text-primary-dark)!important}.dark-mode .navbar-collapse{background:var(--navbar-bg-dark)!important;box-shadow:0 4px 12px var(--shadow-dark)!important}.dark-mode .nav-link{color:var(--text-primary-dark)!important}.dark-mode .nav-link:hover{background:var(--comment-btn-bg-hover-dark)!important;color:var(--bg-card-light)!important}.dark-mode .dropdown-divider{border-color:var(--border-dark-alpha)!important}.dark-mode .text-danger{color:var(--bs-danger)!important}.dark-mode .text-danger:hover{color:var(--bs-primary)!important}}.dark-mode .card-title{color:var(--text-primary-dark)!important}.dark-mode .bg-light{background:var(--bs-dark)!important}.footer-custom{border-top:1px solid #0000001a}.dark-mode .footer-custom{border-top:1px solid #ffffff1a;background:var(--bs-dark)!important}.dark-mode .footer-title{color:var(--text-primary-dark)!important}.dark-mode .footer-version{color:var(--text-muted-dark)!important}.navbar-custom{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--navbar-border-light);transition:all .3s;box-shadow:0 2px 20px #00000014;background:var(--navbar-bg-light)!important}.dark-mode .navbar-custom{border-bottom:1px solid var(--navbar-border-dark);box-shadow:0 2px 20px var(--shadow-dark);background:var(--navbar-bg-dark)!important}.card-enhanced{box-shadow:0 8px 25px var(--shadow-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;border-radius:3px;transition:all .3s;position:relative;overflow:hidden;background:var(--bg-card-light)!important}.card-enhanced:before{content:"";background:linear-gradient(135deg,var(--bs-grad-primary)0%,var(--bs-grad-secondary)85%,var(--bs-grad-success)100%);height:4px;position:absolute;top:0;left:0;right:0}.card-enhanced:hover{box-shadow:0 15px 40px var(--shadow-light-hover);transform:translateY(-8px)}.dark-mode .card-enhanced{box-shadow:0 8px 25px var(--shadow-dark);background:var(--bg-card-dark)!important}.dark-mode .card-enhanced:hover{box-shadow:0 15px 40px var(--shadow-dark-hover)}.form-control{background-color:var(--form-bg-light);color:var(--text-primary-light);border-color:var(--border-light-alpha);transition:all .3s}.form-control:focus{background-color:var(--form-bg-light-focus);color:var(--text-primary-light);border-color:var(--bs-primary);box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25)}.dark-mode .form-control{background-color:var(--form-bg-dark);color:var(--text-primary-dark);border-color:#334155cc}.dark-mode .form-control:focus{background-color:var(--form-bg-dark-focus);color:var(--text-primary-dark);border-color:var(--bs-primary);box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.5)}.btn{transition:all .3s}.btn-outline-primary{border-color:var(--btn-primary-bg)!important;color:var(--btn-primary-bg)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background-color:#ffffff1a!important}.btn-outline-primary:hover{background-color:var(--btn-primary-bg)!important;border-color:var(--btn-primary-bg)!important;color:#fff!important}.dark-mode .btn-outline-primary{background-color:var(--bg-card-dark-alpha)!important;border-color:var(--bs-primary)!important;color:var(--bs-primary)!important}.dark-mode .btn-outline-primary:hover{background-color:var(--bs-primary)!important;border-color:var(--bs-primary)!important;color:#fff!important}.btn-outline-secondary{border-color:var(--btn-secondary-bg)!important;color:var(--btn-secondary-bg)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background-color:#ffffff1a!important}.btn-outline-secondary:hover{background-color:var(--btn-secondary-bg)!important;border-color:var(--btn-secondary-bg)!important;color:#fff!important}.dark-mode .btn-outline-secondary{background-color:var(--bg-card-dark-alpha)!important;border-color:var(--bs-secondary)!important;color:var(--bs-secondary)!important}.dark-mode .btn-outline-secondary:hover{background-color:var(--bs-secondary)!important;border-color:var(--bs-secondary)!important;color:#fff!important}.btn-outline-success{border-color:var(--btn-success-bg)!important;color:var(--btn-success-bg)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background-color:#ffffff1a!important}.btn-outline-success:hover{background-color:var(--btn-success-bg)!important;border-color:var(--btn-success-bg)!important;color:#fff!important}.dark-mode .btn-outline-success{background-color:var(--bg-card-dark-alpha)!important;border-color:var(--bs-success)!important;color:var(--bs-success)!important}.dark-mode .btn-outline-success:hover{background-color:var(--bs-success)!important;border-color:var(--bs-success)!important;color:#fff!important}.btn-outline-danger{border-color:var(--btn-danger-bg)!important;color:var(--btn-danger-bg)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background-color:#ffffff1a!important}.btn-outline-danger:hover{background-color:var(--btn-danger-bg)!important;border-color:var(--btn-danger-bg)!important;color:#fff!important}.dark-mode .btn-outline-danger{background-color:var(--bg-card-dark-alpha)!important;border-color:var(--bs-danger)!important;color:var(--bs-danger)!important}.dark-mode .btn-outline-danger:hover{background-color:var(--bs-danger)!important;border-color:var(--bs-danger)!important;color:#fff!important}.btn-outline-warning{border-color:var(--btn-warning-bg)!important;color:var(--btn-warning-bg)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background-color:#ffffff1a!important}.btn-outline-warning:hover{background-color:var(--btn-warning-bg)!important;border-color:var(--btn-warning-bg)!important;color:#fff!important}.dark-mode .btn-outline-warning{background-color:var(--bg-card-dark-alpha)!important;border-color:var(--bs-warning)!important;color:var(--bs-warning)!important}.dark-mode .btn-outline-warning:hover{background-color:var(--bs-warning)!important;border-color:var(--bs-warning)!important;color:#fff!important}.btn-outline-info{border-color:var(--btn-info-bg)!important;color:var(--btn-info-bg)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background-color:#ffffff1a!important}.btn-outline-info:hover{background-color:var(--btn-info-bg)!important;border-color:var(--btn-info-bg)!important;color:#fff!important}.dark-mode .btn-outline-info{background-color:var(--bg-card-dark-alpha)!important;border-color:var(--bs-info)!important;color:var(--bs-info)!important}.dark-mode .btn-outline-info:hover{background-color:var(--bs-info)!important;border-color:var(--bs-info)!important;color:#fff!important}.btn-outline-light{border-color:var(--btn-light-bg)!important;color:var(--btn-light-color)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background-color:#ffffff1a!important}.btn-outline-light:hover{background-color:var(--btn-light-bg)!important;border-color:var(--btn-light-bg)!important;color:var(--btn-light-color)!important}.dark-mode .btn-outline-light{background-color:var(--bg-card-dark-alpha)!important;border-color:var(--bs-light)!important;color:var(--bs-light)!important}.dark-mode .btn-outline-light:hover{background-color:var(--bs-light)!important;border-color:var(--bs-light)!important;color:var(--text-primary-light)!important}.btn-outline-dark{border-color:var(--btn-dark-bg)!important;color:var(--btn-dark-bg)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background-color:#ffffff1a!important}.btn-outline-dark:hover{background-color:var(--btn-dark-bg)!important;border-color:var(--btn-dark-bg)!important;color:#fff!important}.dark-mode .btn-outline-dark{background-color:var(--bg-card-dark-alpha)!important;border-color:var(--bs-dark)!important;color:var(--bs-dark)!important}.dark-mode .btn-outline-dark:hover{background-color:var(--bs-dark)!important;border-color:var(--bs-dark)!important;color:#fff!important}.calendar-day{border:1px solid var(--border-light-alpha);background:var(--bg-card-light);min-height:80px;color:var(--text-primary-light);border-radius:3px;padding:4px;transition:all .2s;position:relative}.dark-mode .calendar-day{background:var(--bg-card-dark)!important;border-color:var(--border-dark-alpha)!important;color:var(--text-primary-dark)!important}.calendar-day.weekend{opacity:.9;color:var(--text-muted-light)!important;background:#00000026!important}.dark-mode .calendar-day.weekend{opacity:1;color:var(--text-muted-dark)!important;background:#00000080!important}.calendar-day.selected{border-color:var(--bs-primary);box-shadow:0 0 0 2px rgba(var(--bs-primary-rgb),.25)}.calendar-day .day-number{color:var(--text-muted-light);margin-bottom:2px;font-size:.75rem;font-weight:500}.dark-mode .calendar-day .day-number{color:var(--text-muted-dark)}.calendar-day .value-btn{cursor:pointer;border:none;border-radius:3px;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:4px;font-size:.9rem;font-weight:700;transition:all .2s;display:flex}.calendar-day .value-btn:hover:not(.readonly){transform:scale(1.1)}.calendar-day .value-btn.readonly{cursor:not-allowed;opacity:.7}.calendar-day .project-select{border:1px solid var(--border-light-alpha);background:var(--form-bg-light);width:100%;color:var(--text-primary-light);border-radius:3px;padding:1px 2px;font-size:.7rem}.dark-mode .calendar-day .project-select{background:var(--form-bg-dark);color:var(--text-primary-dark);border-color:var(--border-dark-alpha)}.calendar-day .comment-indicator{color:var(--bs-info);cursor:pointer;font-size:.7rem;position:absolute;top:2px;right:2px}.calendar-day .comment-indicator:hover{color:var(--bs-primary)}.dropdown-menu{background-color:var(--dropdown-bg-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-light-alpha)}.dark-mode .dropdown-menu{background-color:var(--dropdown-bg-dark);border:1px solid #334155cc}.dark-mode .dropdown-item{color:var(--text-secondary-dark)}.dark-mode .dropdown-item:hover{background-color:var(--dropdown-item-hover-dark);color:var(--text-primary-dark)}.navbar-nav .dropdown-item:hover{background-color:var(--navbar-dropdown-item-hover-light)!important;color:var(--navbar-text-hover-light)!important}.dark-mode .navbar-nav .dropdown-item:hover{background-color:var(--navbar-dropdown-item-hover-dark)!important;color:var(--navbar-text-hover-dark)!important}code,.code-text{border-radius:.25rem;padding:.125rem .375rem;font-family:Courier New,Courier,monospace;color:var(--code-text-light)!important;background-color:var(--code-bg-light)!important}.dark-mode code,.dark-mode .code-text{color:var(--code-text-dark)!important;background-color:var(--code-bg-dark)!important}.btn-group .btn.active,.btn-check:checked+.btn{background-color:var(--toggle-active-bg-light)!important;color:var(--toggle-active-text-light)!important;border-color:var(--toggle-active-bg-light)!important}.dark-mode .btn-group .btn.active,.dark-mode .btn-check:checked+.btn{background-color:var(--toggle-active-bg-dark)!important;color:var(--toggle-active-text-dark)!important;border-color:var(--toggle-active-bg-dark)!important}.alert{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none}.badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.spinner-border{color:var(--bs-primary)}html.dark-mode .spinner-border{color:#f87171}.timesheet-container,html.dark-mode .timesheet-container{background:inherit;color:inherit}.comment-btn{background:var(--comment-btn-bg);border:1px solid var(--comment-btn-border);color:var(--comment-btn-color);cursor:pointer;z-index:10;border-radius:4px;padding:2px 4px;font-size:.75rem;transition:all .2s;position:absolute;top:2px;right:2px}.comment-btn:hover{background:var(--comment-btn-bg-hover);border-color:var(--comment-btn-border-hover);transform:scale(1.1)}.comment-btn.has-comment{background:var(--comment-btn-success-bg);border-color:var(--comment-btn-success-border);color:var(--comment-btn-success-color)}.comment-btn.has-comment:hover{background:var(--comment-btn-success-bg-hover);border-color:var(--comment-btn-success-border-hover)}.dark-mode .comment-btn{background:var(--comment-btn-bg-dark);border-color:var(--comment-btn-border-dark);color:var(--comment-btn-color-dark)}.dark-mode .comment-btn:hover{background:var(--comment-btn-bg-hover-dark);border-color:var(--comment-btn-border-hover-dark)}.dark-mode .comment-btn.has-comment{background:var(--comment-btn-success-bg-dark);border-color:var(--comment-btn-success-border-dark);color:var(--comment-btn-success-color-dark)}.dark-mode .comment-btn.has-comment:hover{background:var(--comment-btn-success-bg-hover-dark);border-color:var(--comment-btn-success-border-hover-dark)}.refresh-btn{background:var(--comment-btn-bg);border:1px solid var(--comment-btn-border);color:var(--comment-btn-color);cursor:pointer;z-index:10;border-radius:4px;padding:2px 4px;font-size:.75rem;transition:all .2s;position:absolute;top:2px;right:28px}.refresh-btn:hover{background:var(--comment-btn-bg-hover);border-color:var(--comment-btn-border-hover);transform:scale(1.1)}.dark-mode .refresh-btn{background:var(--comment-btn-bg-dark);border-color:var(--comment-btn-border-dark);color:var(--comment-btn-color-dark)}.dark-mode .refresh-btn:hover{background:var(--comment-btn-bg-hover-dark);border-color:var(--comment-btn-border-hover-dark)}@media (max-width:768px){.comment-btn{margin-top:.25rem;padding:.25rem .5rem;font-size:.875rem;position:static}.refresh-btn{margin-top:.25rem;margin-right:.5rem;padding:.25rem .5rem;font-size:.875rem;position:static}}.save-dot{border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;margin-left:.5rem;font-size:.875rem;transition:all .3s;display:inline-flex}.save-dot.ready{color:var(--save-dot-ready-light)}.save-dot.saving{color:var(--save-dot-saving-light)}.save-dot.error{color:var(--save-dot-error-light)}html.dark-mode .save-dot.ready{color:var(--save-dot-ready-dark)}html.dark-mode .save-dot.saving{color:var(--save-dot-saving-dark)}html.dark-mode .save-dot.error{color:var(--save-dot-error-dark)}@media (max-width:768px){.save-dot{margin-top:.5rem;margin-left:0}}.status-item{background:var(--status-item-bg-light);transition:all .3s}.status-item:hover{background:var(--bg-dept-card-light-hover);transform:translateY(-1px)}.dark-mode .status-item{background:var(--status-item-bg-dark)}.dark-mode .status-item:hover{background:var(--bg-dept-card-dark-hover)}.month-nav-btn{border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.month-nav-btn:hover:not(.disabled){transform:scale(1.05)}.month-nav-btn.disabled{opacity:.4;cursor:not-allowed}.dark-mode .month-nav-btn{border-color:var(--border-dark-alpha);color:var(--text-secondary-dark)}.dark-mode .month-nav-btn:hover:not(.disabled){border-color:var(--border-dark);color:var(--text-primary-dark)}.view-timesheet-btn{font-weight:500;transition:all .3s}.view-timesheet-btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.dark-mode .view-timesheet-btn:hover{box-shadow:0 4px 8px #0000004d}.hover-scale{transition:all .2s;text-decoration:none!important}.hover-scale:hover{transform:scale(1.1);color:var(--bs-primary)!important}.dark-mode .hover-scale:hover{color:var(--bs-info)!important}.team-avatar{width:40px;height:40px}.avatar-circle{background:linear-gradient(135deg,var(--bs-grad-primary)0%,var(--bs-grad-secondary)65%,var(--bs-grad-success)100%);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.2rem;display:flex}.sidebar-nav-link{border:none;border-radius:0;align-items:center;gap:.875rem;padding:.875rem 1.25rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex;color:var(--sidebar-link-light)!important}.sidebar-nav-link:hover{background:#e713360d;text-decoration:none;color:var(--sidebar-link-hover-light)!important}.sidebar-nav-link.active{background:var(--sidebar-link-active-bg-light);border-right:3px solid var(--sidebar-link-active-border-light);color:var(--sidebar-link-active-light)!important}.dark-mode .sidebar-nav-link{color:var(--sidebar-link-dark)!important}.dark-mode .sidebar-nav-link:hover{background:#dc262626;color:var(--sidebar-link-hover-dark)!important}.dark-mode .sidebar-nav-link.active{background:var(--sidebar-link-active-bg-dark);border-right:3px solid var(--sidebar-link-active-border-dark);color:var(--sidebar-link-active-dark)!important}.nav-icon{text-align:center;justify-content:center;align-items:center;width:1.5rem;font-size:1.1rem;display:inline-flex}.nav-text{font-size:.95rem}.bg-card-light{background:var(--sidebar-bg-light)!important}.dark-mode .bg-card-light{background:var(--sidebar-bg-dark)!important}.border-end{border-right:1px solid var(--sidebar-border-light)!important}.dark-mode .border-end{border-right:1px solid var(--sidebar-border-dark)!important}.nav-tabs .nav-link{transition:all .3s;color:var(--text-secondary-light)!important;background:0 0!important;border:none!important;border-bottom:2px solid #0000!important}.nav-tabs .nav-link:hover{border-bottom-color:rgba(var(--bs-primary-rgb),.3)!important;color:var(--bs-primary)!important;background:0 0!important}.nav-tabs .nav-link.active{color:var(--bs-primary)!important;border-bottom-color:var(--bs-primary)!important;background:0 0!important}.dark-mode .nav-tabs .nav-link{color:var(--text-secondary-dark)!important}.dark-mode .nav-tabs .nav-link:hover{border-bottom-color:rgba(var(--bs-primary-rgb),.5)!important;color:var(--bs-primary)!important}.dark-mode .nav-tabs .nav-link.active{color:var(--bs-primary)!important;border-bottom-color:var(--bs-primary)!important}.nav-tabs{border-bottom:1px solid var(--border-light-alpha)!important}.dark-mode .nav-tabs{border-bottom:1px solid var(--border-dark-alpha)!important}
:root,:host{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 6 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 6 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 6 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 6 Sharp Duotone"}svg.svg-inline--fa:not(:root),svg.svg-inline--fa:not(:host){box-sizing:content-box;overflow:visible}.svg-inline--fa{display:var(--fa-display,inline-block);vertical-align:-.125em;height:1em;overflow:visible}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.07143em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left{margin-right:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-pull-right{margin-left:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);top:.25em}.svg-inline--fa.fa-fw{width:var(--fa-fw-width,1.25em)}.fa-layers svg.svg-inline--fa{margin:auto;position:absolute;inset:0}.fa-layers-counter,.fa-layers-text{text-align:center;display:inline-block;position:absolute}.fa-layers{text-align:center;vertical-align:-.125em;width:1em;height:1em;display:inline-block;position:relative}.fa-layers svg.svg-inline--fa{transform-origin:50%}.fa-layers-text{transform-origin:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:100% 0;overflow:hidden}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 100%;top:auto}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 100%;top:auto;right:auto}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 0}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 0}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{vertical-align:.225em;font-size:.625em;line-height:.1em}.fa-xs{vertical-align:.125em;font-size:.75em;line-height:.08333em}.fa-sm{vertical-align:.05357em;font-size:.875em;line-height:.07143em}.fa-lg{vertical-align:-.075em;font-size:1.25em;line-height:.05em}.fa-xl{vertical-align:-.125em;font-size:1.5em;line-height:.04167em}.fa-2xl{vertical-align:-.1875em;font-size:2em;line-height:.03125em}.fa-fw{text-align:center;width:1.25em}.fa-ul{margin-left:var(--fa-li-margin,2.5em);padding-left:0;list-style-type:none}.fa-ul>li{position:relative}.fa-li{left:calc(-1*var(--fa-li-width,2em));text-align:center;width:var(--fa-li-width,2em);line-height:inherit;position:absolute}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.08em);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{transition-duration:0s;transition-delay:0s;animation-duration:1ms;animation-iteration-count:1;animation-delay:-1ms}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1)translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9))translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1))translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95))translateY(0)}57%{transform:scale(1,1)translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1)translateY(0)}to{transform:scale(1)translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{vertical-align:middle;width:2.5em;height:2em;display:inline-block;position:relative}.fa-stack-1x,.fa-stack-2x{z-index:var(--fa-stack-z-index,auto);margin:auto;position:absolute;inset:0}.svg-inline--fa.fa-stack-1x{width:1.25em;height:1em}.svg-inline--fa.fa-stack-2x{width:2.5em;height:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.sr-only,.fa-sr-only,.sr-only-focusable:not(:focus),.fa-sr-only-focusable:not(:focus){clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}
