.app-container{display:flex;height:100vh;background:#f4f6f9}.sidebar{width:220px;background:#2c3e50;color:#fff;flex-shrink:0}.main-content{flex-grow:1;display:flex;flex-direction:column}.header{background:#3498db;color:#fff;padding:10px 20px}.page-content{flex-grow:1;padding:20px;overflow-y:auto;background:#fff}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#314128}.login-container{width:400px;background-color:#113113;padding:40px;border-radius:10px;box-shadow:0 4px 15px #00000080;text-align:center}.login-brand{display:flex;align-items:center;justify-content:center;margin-bottom:25px;color:#fff}.login-brand .icon_header{font-size:40px;margin-right:10px}.login-brand .brand-text{font-size:32px;font-weight:700;letter-spacing:2px;margin:0}.login-title{color:#fff;margin-bottom:30px;font-size:28px;font-weight:600}.login-form .form-group{margin-bottom:20px;text-align:left}.login-form label{display:block;font-size:14px;color:#9e9ea4;margin-bottom:8px;font-weight:500}.login-form input[type=text],.login-form input[type=password]{width:100%;padding:12px;border:1px solid #444;border-radius:5px;background-color:#222d25;color:#fff;font-size:16px;box-sizing:border-box;transition:border-color .3s ease}.login-form input[type=text]:focus,.login-form input[type=password]:focus{outline:none;border-color:#007bff}.login-btn{width:100%;padding:12px;background-color:#2e7d32;color:#fff;border:none;border-radius:5px;font-size:18px;font-weight:600;cursor:pointer;transition:background-color .3s ease}.login-btn:hover{background-color:#1b5e20}body{overflow:hidden;margin:0;padding:0;min-height:100vh;background-color:#fff;color:#9e9ea4;font-family:Franklin Gothic Medium,Arial Narrow,Arial,sans-serif;font-size:medium}.icon{color:"white";vertical-align:middle;line-height:1px;font-size:20px}.icon_header{vertical-align:middle;line-height:1px;font-size:26px}.icon,.icon_header{margin-right:5px}.close_icon{color:"white";margin-left:30px;margin-top:10px;cursor:pointer}.grid-container{display:grid;grid-template-columns:280px 1fr;grid-template-rows:.2fr 3fr;grid-template-areas:"sidebar header header header" "sidebar main main main";height:100vh;transition:grid-template-columns .3s ease}.grid-container.sidebar-collapsed{grid-template-columns:80px 1fr}.main-container{grid-area:main;overflow-y:auto;padding:20px;color:#fffffff2}.main-title{display:flex;justify-content:space-between}.main-cards{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:20px;margin:15px 0}.card{display:flex;flex-direction:column;justify-content:space-around;padding:8px 15px;border-radius:5px}.card:hover{transform:translateY(-3px);transition:.7s}.card-karyawan{background-color:#2962ff}.card-payroll{background-color:#ff6d00}.card-absensi{background-color:#2e7d32}.card-user{background-color:#d50000}.card-inner{display:flex;align-items:center;justify-content:space-between}.card-inner>.card_icon{font-size:25px}.charts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:60px;height:300px}@media screen and (max-width:992px){.grid-container{grid-template-columns:1fr;grid-template-rows:.2fr 3fr;grid-template-areas:"header" "main"}#sidebar{display:none}.menu-icon{display:inline}.sidebar-title>span{display:inline}}@media screen and (max-width:768px){.main-cards{grid-template-columns:1fr;gap:10px;margin-bottom:0}.charts{grid-template-columns:1fr;margin-top:30px}}@media screen and (max-width:576px){.hedaer-left{display:none}}.main-container{padding:20px;background-color:#f5f5f5}.main-title{display:flex;justify-content:flex-start;align-items:center;margin-bottom:20px;font-family:Montserrat,sans-serif;color:#333}.main-title h3{font-size:28px;font-weight:600;letter-spacing:1.5px}.data-karyawan-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;padding:25px;overflow-x:auto}.table-responsive table{width:100%;color:#131212;border-collapse:collapse;font-family:Poppins,sans-serif}.table-responsive th,.table-responsive td{text-align:left;padding:15px;border-bottom:1px solid #e0e0e0}.table-responsive th{background-color:#f8f8f8;color:#555;font-weight:600;text-transform:uppercase;font-size:14px}.table-responsive tbody tr:hover{background-color:#f9f9f9}.data-payroll-container,.data-absensi-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;padding:25px;overflow-x:auto}.setting-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;padding:25px;max-width:800px;margin:0 auto}.setting-section{border-bottom:1px solid #e0e0e0;padding-bottom:20px;margin-bottom:20px}.setting-section:last-child{border-bottom:none;margin-bottom:0}.setting-section h4{color:#333;margin-top:0;margin-bottom:15px;font-size:20px;font-weight:600}.setting-item{display:flex;flex-direction:column;margin-bottom:15px}.setting-item label{color:#555;font-weight:500;margin-bottom:5px}.setting-item input[type=text],.setting-item input[type=email],.setting-item select{padding:10px;border:1px solid #ccc;border-radius:4px;font-size:16px;width:100%}.setting-item input[type=text]:focus,.setting-item input[type=email]:focus,.setting-item select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.checkbox-item{flex-direction:row;align-items:center}.checkbox-item input[type=checkbox]{margin-right:10px}.sidebar-sub-menu{list-style-type:none;padding-left:0;background-color:#0000001a}.sidebar-sub-menu-item a{padding:8px 15px;font-size:14px;display:block}.sidebar-sub-menu-item a:hover{background-color:#ffffff1a}.sidebar-mini{width:80px}.sidebar-list-item a{display:flex;align-items:center;padding:10px 15px;color:#fff;text-decoration:none}.sidebar-list-item a:hover{background-color:#fff3;cursor:pointer}.sidebar-list-item a .icon{margin-right:10px}.sidebar-list-item>div{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:10px 15px;color:#fff}.sidebar-list-item>div:hover{background-color:#fff3}.sidebar-list-item .icon-arrow{font-size:15px;transition:transform .3s ease-in-out}.sidebar-sub-menu{list-style-type:none;padding-left:20px;background-color:#0000001a}.menu-item-with-arrow{display:flex;align-items:center;justify-content:space-between;padding:10px 15px;color:#fff;cursor:pointer}.menu-item-with-arrow:hover{background-color:#fff3}.menu-item-with-arrow span{display:flex;align-items:center}.menu-item-with-arrow .icon{margin-right:10px}.action-buttons{display:flex;gap:8px;justify-content:center}.action-btn{background-color:transparent;border:none;cursor:pointer;font-size:16px;color:#fff;transition:color .3s ease}.action-btn.edit{color:#ffc107}.action-btn.show{color:#007bff}.action-btn.delete{color:#dc3545}.action-btn:hover{filter:brightness(1.2)}.pagination{display:flex;justify-content:center;align-items:center;margin-top:20px;color:#333}.pagination button{background-color:#fff;border:1px solid #ddd;padding:8px 16px;margin:0 4px;cursor:pointer;border-radius:4px;transition:background-color .3s ease,color .3s ease}.pagination button:hover:not(.active){background-color:#eee}.pagination button.active{background-color:#007bff;color:#fff;border-color:#007bff}.pagination button:disabled{cursor:not-allowed;opacity:.5}.main-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-family:Montserrat,sans-serif;color:#333}.main-title h3{font-size:28px;font-weight:600;letter-spacing:1.5px;color:#111}.main-controls{display:flex;align-items:center;gap:15px}.main-controls input[type=text]{padding:8px 12px;border:1px solid #ccc;border-radius:5px;font-size:16px;width:200px}.add-btn{padding:8px 15px;background-color:#2e7d32;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:16px;display:flex;align-items:center;gap:5px;transition:background-color .3s ease}.add-btn:hover{background-color:#1b5e20}.card-link{text-decoration:none;color:inherit}.card-link:first-child{background-color:#2962ff}.card-link:nth-child(2){background-color:#ff6d00}.card-link:nth-child(3){background-color:#2e7d32}.card-link:nth-child(4){background-color:#d50000}.footer{grid-area:footer;height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;box-shadow:0 6px 7px -3px #00000059}.sidebar-footer{font-size:14px;color:#fff}.tabs-container{display:flex;gap:10px;border-bottom:2px solid #e5e7eb;padding-bottom:10px}.tab-button{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;background:#f3f4f6;color:#6b7280;border-radius:6px;cursor:pointer;transition:all .3s ease;font-weight:500}.tab-button:hover{background:#e5e7eb;color:#374151}.tab-button.active{background:#2d5016;color:#fff}.shift-badge{display:inline-block;padding:4px 12px;background:#dbeafe;color:#1e40af;border-radius:20px;font-size:12px;font-weight:500}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;text-transform:uppercase}.status-badge.hadir{background:#dcfce7;color:#166534}.status-badge.sakit{background:#fef3c7;color:#92400e}.status-badge.izin{background:#dbeafe;color:#1e40af}.filter-container input,.filter-container select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.filter-container input:focus,.filter-container select:focus{outline:none;border-color:#2d5016;box-shadow:0 0 0 3px #2d50161a}.delete-btn{padding:8px 15px;background-color:#d50000;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:16px;display:flex;align-items:center;gap:5px;transition:background-color .3s ease}.delete-btn:hover{background-color:#b71c1c}.form-label{margin-bottom:8px;display:block;color:#374151;font-weight:500}.form-input2{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;width:100%;box-sizing:border-box}.form-input2:focus{outline:none;border-color:#2d5016;box-shadow:0 0 0 3px #2d50161a}.form-group{margin-bottom:20px}.modal-content{padding:20px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0003;width:90%;max-width:1400px;max-height:90vh;overflow-y:auto;animation:fadeIn .3s ease-in-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;margin-bottom:20px}.modal-header h3{margin:0;font-size:1.5rem}.close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#aaa}.form-group label{display:block;margin-bottom:5px;font-weight:500;color:#555}.form-group input,.form-group select{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;font-size:1rem}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.save-btn,.cancel-btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-weight:600}.save-btn{background-color:#007bff;color:#fff}.cancel-btn{background-color:#e9ecef;color:#495057}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.btn-save{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-weight:600;background-color:#007bff;color:#fff}.form-container{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px}.form-container h4{margin-top:0;border-bottom:1px solid #eee;padding-bottom:10px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input,.form-group select{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px}.submit-btn{padding:10px 20px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.submit-btn:hover{background-color:#0056b3}.data-gaji-table{width:100%;border-collapse:collapse;margin-top:20px}.data-gaji-table th,.data-gaji-table td{padding:12px;border:1px solid #ddd;text-align:left}.data-gaji-table th{background-color:#f2f2f2;font-weight:700}.no-data-msg{text-align:center;color:#888;margin-top:20px}.form-container{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;max-width:600px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:1rem}.form-columns{display:flex;gap:20px}.form-column{flex:1;display:flex;flex-direction:column}.form-group-row{display:flex;gap:20px}.form-group{display:flex;flex-direction:column;margin-bottom:15px}.form-group label{margin-bottom:5px;font-weight:500;color:#555}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px}.submit-btn{margin-top:15px}#sidebar.sidebar-mini{width:70px;padding:0;transition:width .3s ease-in-out}#sidebar.sidebar-mini .sidebar-text,#sidebar.sidebar-mini .icon-arrow,#sidebar.sidebar-mini .sidebar-brand{display:none}#sidebar.sidebar-mini .icon{margin:0 auto;font-size:24px}#sidebar.sidebar-mini .sidebar-list-item a,#sidebar.sidebar-mini .sidebar-list-item div{padding:10px;justify-content:center}#sidebar{transition:width .3s ease-in-out}.laporan-container{background-color:#f3f4f6;min-height:100vh;padding:2rem;font-family:sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.laporan-box{max-width:72rem;margin-left:auto;margin-right:auto;background-color:#fff;border-radius:.75rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;padding:1.5rem 2.5rem}@media(min-width:768px){.laporan-box{padding:2.5rem}}.laporan-title{font-size:1.875rem;font-weight:700;color:#1f2937;margin-bottom:1.5rem;border-bottom:2px solid #e5e7eb;padding-bottom:.5rem}.laporan-description{color:#4b5563;margin-bottom:2rem}.laporan-table-wrapper{overflow-x:auto}.laporan-table{width:100%;text-align:left;color:#4b5563;border-collapse:collapse}.laporan-table thead{background-color:#f9fafb;text-transform:uppercase;font-size:.875rem}.laporan-table th{padding:.75rem 1.5rem}.laporan-table tbody tr{border-bottom:1px solid #e5e7eb}.laporan-table tbody tr:hover{background-color:#f9fafb}.laporan-table td{padding:1rem 1.5rem}.employee-name{font-weight:500;color:#111827;white-space:nowrap}.leave-taken-badge{background-color:#dbeafe;color:#1e40af;font-size:.75rem;font-weight:600;padding:.25rem .625rem;border-radius:9999px}.leave-details-list{list-style-type:disc;padding-left:1.25rem}.leave-details-list li{font-size:.875rem;color:#4b5563;margin-bottom:.25rem}.leave-details-list li .font-semibold{font-weight:600}.no-leave{font-size:.875rem;color:#6b7280;font-style:italic}.remaining-leave-badge{font-size:.875rem;font-weight:700}.text-green{color:#10b981}.text-red{color:#ef4444}.loading-text{text-align:center;color:#6b7280;font-style:italic}.tab-nav{display:flex;gap:20px;margin-top:15px}.tab-nav button{padding:10px;border:none;background:none;cursor:pointer;font-weight:700;color:#555}.tab-nav button.active{border-bottom:2px solid #007bff;color:#007bff}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:999}.modal-content.large{background:#fff;padding:20px;border-radius:8px;width:90%;max-width:1200px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center}.close-btn{font-size:22px;border:none;background:transparent;cursor:pointer}.header{grid-area:header;height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;box-shadow:0 6px 7px -3px #00000059}.menu-icon{display:none}#sidebar{grid-area:sidebar;height:100%;background-color:#263043;overflow-y:auto;transition:all 1s;-webkit-transition:all 2s}.sidebar-title{display:flex;justify-content:space-between;align-items:center;padding:15px 30px 0;margin-bottom:30px}.sidebar-title>span{display:none}.sidebar-brand{margin-top:15px;font-size:20px;font-weight:700}.sidebar-list{padding:0;list-style-type:none}.sidebar-list-item{padding:20px;font-size:18px}.sidebar-list-item:hover{cursor:pointer}.sidebar-list-item>a{text-decoration:none;color:#9e9ea4}.grid-container.sidebar-mini{grid-template-columns:80px 2fr}.sidebar-list-item a{display:flex;align-items:left;gap:0px;padding:10px 15px;color:#fff;text-decoration:none;white-space:nowrap}.sidebar-list-item a:hover{background-color:#fff3}.sidebar-list-item a .icon{flex-shrink:0}.grid-container.sidebar-mini #sidebar{width:80px}.grid-container.sidebar-mini .brand-text,.grid-container.sidebar-mini .link-text{display:none}.sidebar-responsive{display:inline!important;position:absolute;z-index:12!important}
