code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}body,html{scroll-behavior:smooth}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding:0}.download-button,.nav-item,.tab-button,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}body,html{height:100%;overflow-x:hidden;width:100%}#root{display:flex;flex-direction:column;height:100%}.content-area{-webkit-overflow-scrolling:touch}*{scroll-behavior:smooth}.scrollable-container{-webkit-overflow-scrolling:touch;overflow-x:hidden;overflow-y:auto}@media (max-width:768px){.nav-item,.tab-button,button{min-height:44px}body{line-height:1.5}body,input,select,textarea{font-size:16px}}@media (max-width:480px){.nav-item,.tab-button,button{min-height:40px}}.sidebar{background:linear-gradient(180deg,#2c3e50,#34495e);box-shadow:2px 0 10px #0000001a;color:#fff;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:all .3s ease;width:280px;z-index:1000}.sidebar.collapsed{width:70px}.sidebar.mobile{box-shadow:0 2px 10px #0000001a;height:auto;max-height:340px;opacity:1;overflow:visible;position:relative;transition:all .3s ease;width:100%}.sidebar.mobile.collapsed{margin:0;max-height:80px;opacity:1;overflow:hidden;padding:0;width:100%}.sidebar.collapsed .header-content,.sidebar.mobile.collapsed .sidebar-footer,.sidebar.mobile.collapsed .sidebar-nav{display:none}.sidebar.mobile .header-content{display:block;text-align:left}.sidebar.mobile .sidebar-header h3{font-size:18px;margin-bottom:5px}.sidebar-header p{color:#bdc3c7;font-size:14px;font-weight:500;margin:0}.sidebar.mobile .sidebar-header p{font-size:12px}.sidebar-toggle{border-radius:50%;font-size:14px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.sidebar.collapsed .sidebar-toggle{margin:0 auto;position:static;transform:none}.sidebar.mobile .sidebar-toggle{font-size:16px;height:35px;margin:0;position:static;transform:none;width:35px}.sidebar-toggle:hover,.sidebar.collapsed .sidebar-toggle:hover,.sidebar.mobile .sidebar-toggle:hover{transform:scale(1.1)}.sidebar.mobile .sidebar-nav{padding:10px 0}.nav-item{border-left:4px solid #0000;color:#ecf0f1;gap:12px;padding:15px 25px;white-space:nowrap}.sidebar.collapsed .nav-item{justify-content:center;padding:15px}.sidebar.mobile .nav-item{font-size:14px;justify-content:flex-start;padding:12px 20px}.nav-item.active,.nav-item:hover{border-left-color:#3498db;color:#fff}.nav-item.active{background:#3498db33}.nav-icon{flex-shrink:0;font-size:18px;width:24px}.sidebar.mobile .nav-icon{font-size:16px;width:20px}.nav-label{flex:1 1}.hidden{display:none!important}.sidebar.mobile .nav-label{display:block}.sidebar-footer{padding:10px}.sidebar.mobile .sidebar-footer{align-items:center;border-top:1px solid #ffffff1a;display:flex;justify-content:center;min-height:60px;padding:20px;text-align:center}.sidebar-footer p{color:#95a5a6;font-weight:500}.sidebar.mobile .sidebar-footer p{color:#95a5a6;display:block!important;flex-shrink:0;font-size:11px;margin:0;text-align:center}@media (max-width:1024px){.sidebar,.sidebar.collapsed{width:70px}.sidebar-header{padding:15px 10px}.sidebar-toggle{margin:0 auto;position:static;transform:none}.nav-item{justify-content:center;padding:15px}.nav-label,.sidebar:not(.mobile) .sidebar-footer p{display:none}}@media (max-width:768px){.sidebar{box-shadow:0 2px 10px #0000001a;height:auto;max-height:260px;opacity:1;overflow:visible;position:relative;transition:all .3s ease;width:100%}.sidebar.collapsed{margin:0;max-height:80px;opacity:1;overflow:hidden;padding:0;width:100%}.sidebar.collapsed .sidebar-footer,.sidebar.collapsed .sidebar-nav{display:none}.sidebar-header{flex-direction:row;padding:15px 20px}.header-content{text-align:left}.sidebar-header h3{font-size:18px;margin-bottom:5px}.sidebar-header p{font-size:12px}.sidebar-toggle{font-size:16px;height:35px;margin:0;position:static;transform:none;width:35px}.sidebar-nav{padding:10px 0}.nav-item{font-size:14px;justify-content:flex-start;padding:12px 20px}.nav-label{display:block}.nav-icon{font-size:16px;width:20px}.sidebar-footer{align-items:center;border-top:1px solid #ffffff1a;display:flex;justify-content:center;min-height:80px;padding:20px;text-align:center}.sidebar-footer p{color:#95a5a6;display:block!important;flex-shrink:0;font-size:11px;margin:0;text-align:center}}@media (max-width:480px){.sidebar{max-height:230px}.sidebar.collapsed{max-height:70px}.sidebar-header{padding:12px 15px}.sidebar-header h3{font-size:16px}.sidebar-header p{font-size:11px}.sidebar-toggle{font-size:14px;height:32px;width:32px}.nav-item{font-size:13px;padding:10px 15px}.nav-icon{font-size:15px;width:18px}}.main-header{align-items:center;background:#fff;border-bottom:1px solid #ecf0f1;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:20px 30px;position:sticky;top:0;z-index:1001}.main-header h1{background:none;border-radius:0;color:#2c3e50;display:block;font-size:24px;font-weight:700;margin:0;padding:0}.user-info{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:20px;display:flex;gap:10px;padding:8px 16px}.user-info span{color:#6c757d;font-size:14px;font-weight:500}.logout-button{font-size:12px;margin-left:10px;padding:6px 12px}@media (max-width:1024px){.main-header{padding:18px 25px}.main-header h1{font-size:22px}.user-info{padding:7px 14px}.user-info span{font-size:13px}.logout-button{font-size:11px;padding:5px 10px}}@media (max-width:768px){.main-header{align-items:center;flex-direction:row;gap:0;padding:15px 20px;position:sticky;top:0;z-index:1001}.main-header h1{font-size:20px;margin-bottom:0}.user-info{justify-content:flex-end;padding:8px 12px;width:auto}.user-info span{font-size:13px}.logout-button{font-size:11px;margin-left:0;padding:6px 10px}}@media (max-width:480px){.main-header{gap:0;padding:12px 15px}.main-header h1{font-size:18px}.user-info{align-items:center;flex-direction:row;gap:8px;padding:6px 10px}.user-info span{font-size:12px}.logout-button{align-self:auto;font-size:10px;padding:5px 8px}}@media (max-width:768px){.tab-container{margin:0;padding:0 10px;width:100%}.sub-tab-navigation{padding:10px 0}}@media (max-width:480px){.tab-container{margin:0;padding:0 5px;width:100%}.sub-tab-navigation{padding:8px 0}}.sub-tab-navigation{background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:6px 6px 0 0;display:flex;gap:0;margin-bottom:20px;padding:5px 10px 0}.sub-tab-button{background:none;border:none;border-bottom:2px solid #0000;border-radius:4px 4px 0 0;color:#6c757d;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease;white-space:nowrap}.sub-tab-button:hover{background:#3498db0d;color:#3498db}.sub-tab-button.active{background:#fff;border-bottom-color:#3498db;box-shadow:0 -2px 4px #0000001a;color:#3498db}.sub-tab-content{min-height:250px}.sub-tab-panel{animation:fadeIn .3s ease}.upload-area{border:2px dashed #dee2e6;border-radius:8px}.upload-placeholder{align-items:center;display:flex;flex-direction:column;gap:10px}.upload-placeholder span{font-size:48px;opacity:.7}.upload-placeholder p{color:#6c757d;font-size:14px;margin:0}.download-options{display:flex;flex-wrap:wrap;gap:15px}.download-button{align-items:center;background:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .3s ease}.download-button:hover{background:#2980b9;box-shadow:0 4px 8px #3498db4d;transform:translateY(-1px)}@media (max-width:768px){.main-content{box-sizing:border-box;margin:0;padding:10px;width:100%}.main-content.mobile-layout{box-sizing:border-box;margin:0;padding:5px;width:100%}.main-content h3{font-size:20px;margin-bottom:20px;padding-left:0;text-align:center}.tab-navigation{border-bottom:none;flex-direction:column;gap:5px}.tab-button{background:#f8f9fa;border-bottom:none;border-left:3px solid #0000;border-radius:6px;font-size:14px;padding:15px 20px;text-align:left}.tab-button.active{background:#3498db1a;border-left-color:#3498db}.sub-tab-navigation{background:#f8f9fa;border-bottom:none;border-radius:6px;flex-direction:column;gap:3px;padding:10px 5px}.sub-tab-button{background:#fff;border-bottom:none;border-left:3px solid #0000;border-radius:4px;font-size:13px;padding:12px 15px;text-align:left}.sub-tab-button.active{background:#3498db1a;border-left-color:#3498db;box-shadow:none}.tab-content{min-height:250px}.tab-panel h3{font-size:18px;margin-bottom:12px}.tab-panel p{font-size:14px;margin-bottom:15px}.upload-area{padding:30px 15px}.upload-placeholder span{font-size:36px}.upload-placeholder p{font-size:13px}.download-options{flex-direction:column;gap:10px}.download-button{font-size:14px;justify-content:center;padding:15px 20px;width:100%}}@media (max-width:480px){.main-content{box-sizing:border-box;margin:0;padding:5px;width:100%}.main-content.mobile-layout{box-sizing:border-box;margin:0;padding:2px;width:100%}.main-content h3{font-size:18px;margin-bottom:15px;padding-left:0;text-align:center}.tab-button{font-size:13px;padding:12px 15px}.tab-panel h3{font-size:16px}.tab-panel p{font-size:13px}.upload-area{padding:25px 10px}.upload-placeholder span{font-size:32px}.upload-placeholder p{font-size:12px}.download-button{font-size:13px;padding:12px 15px}}.data-upload-container{display:flex;justify-content:center;width:100%}.upload-layout{align-items:flex-start;display:flex;gap:30px;max-width:800px;width:100%}.left-panel{display:flex;flex:0 0 300px;flex-direction:column;gap:20px}.right-panel{display:flex;flex:0 0 400px;justify-content:center}.upload-section{margin-bottom:20px}.selectors-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 6px #0000000d;padding:25px}.selector-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.selector-group:last-child{margin-bottom:0}.selector-group label{color:#2c3e50;font-size:14px;font-weight:600}.bonus-period-display,.bonus-period-selector,.file-type-selector,.genba-display,.month-display,.month-selector,.year-display,.year-selector{background:#fff;border:2px solid #e9ecef;border-radius:8px;color:#2c3e50;font-size:16px;padding:12px 16px;transition:all .3s ease}.bonus-period-selector,.file-type-selector,.month-selector,.year-selector{cursor:pointer}.bonus-period-display,.genba-display,.month-display,.year-display{background-color:#f8f9fa;color:#6c757d;cursor:default;font-weight:500}.bonus-period-selector:focus,.file-type-selector:focus,.month-selector:focus,.year-selector:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.bonus-period-selector:hover,.file-type-selector:hover,.month-selector:hover,.year-selector:hover{border-color:#3498db}.bonus-period-display:hover,.genba-display:hover,.month-display:hover,.year-display:hover{border-color:#dee2e6}.data-exists-warning{align-items:flex-start;animation:slideIn .3s ease;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;display:flex;gap:12px;margin:15px 0;padding:15px}.warning-icon{flex-shrink:0;font-size:20px;margin-top:2px}.warning-message{color:#856404;font-size:14px;line-height:1.4}.warning-message strong{color:#856404}.construction-duplicate-warning{background:#fde8e8!important;border:1px solid #e57373!important}.construction-duplicate-warning .warning-message,.construction-duplicate-warning .warning-message strong{color:#c62828!important}.duplicate-warning-text{font-family:inherit;font-size:13px;line-height:1.5;margin:8px 0 0;white-space:pre-wrap}.construction-carousel-section{align-items:center;display:flex;gap:12px}.construction-carousel-section .carousel-fields{flex:1 1;min-width:0}.carousel-arrow{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;height:36px;justify-content:center;padding:0;width:36px}.carousel-arrow:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.carousel-arrow:disabled{cursor:not-allowed;opacity:.5}.file-carousel{align-items:center;display:flex;flex:1 1;gap:12px;min-height:0}.file-carousel .file-display-inner{flex:1 1;min-width:0}.upload-area-footer{align-items:stretch;border-top:1px solid #e9ecef;display:flex;flex-direction:column;flex-shrink:0;gap:6px;margin-top:12px;padding-top:12px}.upload-area-footer .multi-file-message{color:#2c3e50;font-size:14px;line-height:1.5;margin:0}.upload-area-footer .carousel-index{color:#6c757d;font-size:13px;margin:0;text-align:center}.data-check-loading{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;color:#6c757d;display:flex;font-size:14px;gap:10px;margin:15px 0;padding:12px 15px}.data-check-loading .loading-spinner{animation:spin 1s linear infinite;border:2px solid #e9ecef;border-radius:50%;border-top-color:#3498db;flex-shrink:0;height:16px;width:16px}.buttons-section{display:flex;flex-direction:column;gap:12px}.cancel-btn,.upload-btn{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:14px 24px;text-align:center;transition:all .3s ease}.upload-btn{background:#3498db;color:#fff}.upload-btn:hover:not(:disabled){background:#2980b9;box-shadow:0 4px 12px #3498db4d;transform:translateY(-2px)}.upload-btn:disabled{background:#bdc3c7;box-shadow:none;cursor:not-allowed;transform:none}.cancel-btn{background:#e74c3c;color:#fff}.cancel-btn:hover:not(:disabled){background:#c0392b;box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-2px)}.cancel-btn:disabled{background:#bdc3c7;box-shadow:none;cursor:not-allowed;transform:none}.upload-area{align-items:center;background:#f8f9fa;border:3px dashed #dee2e6;border-radius:12px;cursor:pointer;display:flex;justify-content:center;max-width:350px;min-height:200px;overflow:hidden;padding:40px 20px;position:relative;text-align:center;transition:all .3s ease;width:100%}.upload-area.has-file{align-items:stretch;cursor:default;flex-direction:column;justify-content:flex-start;padding:20px;text-align:left}.upload-area:hover{background:#3498db0d;border-color:#3498db;box-shadow:0 8px 25px #3498db26;transform:translateY(-2px)}.upload-area.drag-over{background:#3498db1a;border-color:#3498db;box-shadow:0 12px 30px #3498db33;transform:scale(1.02)}.upload-area.has-file.drag-over{box-shadow:0 4px 6px #0000000d;transform:none}.upload-content{position:relative;z-index:2}.upload-icon{font-size:48px;margin-bottom:15px;opacity:.7;transition:all .3s ease}.upload-area:hover .upload-icon{opacity:1;transform:scale(1.1)}.upload-area h4{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 8px}.upload-area p{color:#6c757d;font-size:14px;margin:0 0 15px}.supported-formats{display:flex;flex-direction:column;gap:3px;margin-top:15px}.supported-formats span{background:#fffc;border-radius:15px;color:#95a5a6;display:inline-block;font-size:12px;margin:0 auto;padding:6px 12px}.file-display{align-items:center;display:flex;gap:20px;justify-content:space-between;width:100%}.file-actions{flex-shrink:0}.files-section h4{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 20px;padding-bottom:10px}.file-info{flex:1 1;gap:15px}.file-icon,.file-info{align-items:center;display:flex}.file-icon{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;font-size:24px;height:40px;justify-content:center;width:40px}.file-details{flex:1 1}.file-name{color:#2c3e50;font-weight:600;margin-bottom:5px;word-break:break-word}.file-meta{color:#6c757d;font-size:14px;margin-bottom:5px}.file-error{color:#e74c3c;font-size:14px;font-weight:500}.file-actions{align-items:center;display:flex;gap:15px}.progress-bar{background:#e9ecef;border-radius:4px;height:8px;overflow:hidden;position:relative;width:120px}.progress-fill{background:linear-gradient(90deg,#3498db,#2980b9);border-radius:4px;height:100%;transition:width .3s ease}.progress-text{color:#fff;font-size:12px;font-weight:600;left:50%;position:absolute;text-shadow:0 1px 2px #0000004d;top:50%;transform:translate(-50%,-50%)}.success-message{color:#27ae60;font-size:14px;font-weight:600}.parsing-message{color:#f39c12;font-size:14px;font-weight:600}.preview-button{background:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-right:8px;padding:8px 12px;transition:all .3s ease}.preview-button:hover{background:#2980b9;transform:translateY(-1px)}.retry-button{background:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease}.retry-button:hover{background:#c0392b;transform:translateY(-1px)}.remove-button{background:none;border:none;border-radius:6px;cursor:pointer;font-size:18px;opacity:.7;padding:8px;transition:all .3s ease}.remove-button:hover{background:#e74c3c1a;opacity:1;transform:scale(1.1)}.upload-status{animation:slideIn .3s ease;background:#3498db;border-radius:8px;bottom:30px;box-shadow:0 4px 12px #3498db4d;color:#fff;padding:15px 20px;position:fixed;right:30px;z-index:1000}.status-indicator{align-items:center;display:flex;gap:10px}.spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}@media (max-width:768px){.upload-layout{flex-direction:column;gap:20px;max-width:100%}.left-panel,.right-panel{flex:none;width:100%}.right-panel{justify-content:center}.upload-area{max-width:100%}.selectors-section{padding:20px}.buttons-section{flex-direction:row;gap:15px}.cancel-btn,.upload-btn{flex:1 1;font-size:14px;padding:12px 20px}.upload-section{margin-bottom:20px}.upload-area{min-height:180px;padding:40px 15px}.upload-area.has-file{padding:15px}.file-display{flex-direction:column;gap:15px;text-align:center}.file-actions{justify-content:center}.upload-icon{font-size:48px}.upload-area h4{font-size:18px}.upload-area p{font-size:14px}.supported-formats{flex-direction:column;gap:8px}.supported-formats span{font-size:12px;padding:6px 12px}.files-section{margin-top:20px}.file-item{align-items:flex-start;flex-direction:column;gap:15px}.file-actions{justify-content:space-between;width:100%}.progress-bar{width:100px}.upload-status{bottom:20px;left:20px;right:20px;text-align:center}}@media (max-width:480px){.upload-layout{gap:15px;max-width:100%}.right-panel{justify-content:center}.upload-area{max-width:100%}.selectors-section{padding:15px}.selector-group{margin-bottom:15px}.bonus-period-selector,.file-type-selector,.month-selector,.year-selector{font-size:14px;padding:10px 12px}.buttons-section{gap:10px}.cancel-btn,.upload-btn{font-size:13px;padding:10px 16px}.upload-section{margin-bottom:15px}.upload-area{min-height:160px;padding:30px 10px}.upload-area.has-file{padding:12px}.file-display{gap:12px}.upload-icon{font-size:40px}.upload-area h4{font-size:16px}.upload-area p{font-size:13px}.files-section{margin-top:15px}.file-item{padding:15px}.file-icon{font-size:20px;height:35px;width:35px}.file-name{font-size:14px}.file-error,.file-meta,.retry-button{font-size:12px}.retry-button{padding:6px 12px}.remove-button{font-size:16px}}.data-display-container{background:#0000;border-radius:8px;padding:20px}.data-type-toggle{margin-bottom:25px}.toggle-btn{min-width:120px;padding:10px 20px}.controls-section{align-items:center;gap:20px;margin-bottom:25px;overflow-x:visible}.filter-section{flex:1 1;min-width:0}.filter-operations{align-items:flex-end;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;gap:15px;min-height:120px;padding:20px;position:relative}.delete-operations,.filter-operations{display:flex;justify-content:center;width:100%}.delete-operations{align-items:center;background:#0000;border:none;border-radius:0;gap:8px;height:fit-content;min-height:auto;padding:0}.filter-group{align-self:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:5px;white-space:nowrap}.filter-group label{color:#495057;font-size:12px;font-weight:500}.filter-group select{background:#fff;border:1px solid #dee2e6;border-radius:4px;font-size:14px;min-width:120px;padding:8px 12px}.filter-group select:focus{border-color:#6b7280;box-shadow:0 0 0 2px #6b72801a;outline:none}.employee-code-input{background:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:14px;min-width:150px;padding:8px 12px}.employee-code-input:focus{border-color:#6b7280;box-shadow:0 0 0 2px #6b72801a;outline:none}.employee-code-input::placeholder{color:#adb5bd;font-size:13px}.clear-filters{align-self:auto;background:#6b7280;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-right:0;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.clear-filters:hover{background:#4b5563}.delete-section{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:25px;padding:20px}.delete-section h4{color:#856404;font-size:16px;font-weight:600;margin:0 0 15px}.delete-buttons{flex-wrap:wrap;gap:8px;margin-bottom:0;width:100%}.delete-btn,.delete-buttons{align-items:center;display:flex;justify-content:center}.delete-btn{border:none;border-radius:4px;cursor:pointer;flex:0 0 auto;font-size:11px;font-weight:500;line-height:1.2;max-width:140px;min-height:40px;padding:8px 12px;text-align:center;transition:all .3s ease;white-space:normal}.delete-btn:disabled{cursor:not-allowed;opacity:.5}.delete-btn.delete-month{background:#991b1b;color:#fff}.delete-btn.delete-month:hover:not(:disabled){background:#7f1d1d}.delete-btn.delete-year{background:#92400e;color:#fff}.delete-btn.delete-year:hover:not(:disabled){background:#78350f}.delete-btn.delete-employee{background:#581c87;color:#fff}.delete-btn.delete-employee:hover:not(:disabled){background:#4c1d95}.delete-btn.delete-bonus-year{background:#dc2626;color:#fff}.delete-btn.delete-bonus-year:hover:not(:disabled){background:#b91c1c}.delete-error,.delete-success{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:12px 16px;transition:opacity .3s ease}.delete-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.delete-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.delete-error:hover,.delete-success:hover{opacity:.8}.close-message{font-size:16px;font-weight:700;margin-left:10px}.delete-row-btn{background:#991b1b;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:12px;padding:4px 8px;transition:all .3s ease}.delete-row-btn:hover:not(:disabled){background:#7f1d1d}.delete-row-btn:disabled{cursor:not-allowed;opacity:.5}.data-summary{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:25px}.summary-card{background:linear-gradient(135deg,#374151,#1f2937);border-radius:8px;box-shadow:0 4px 6px #3741511a;color:#fff;padding:20px;text-align:center}.summary-label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;opacity:.9}.summary-value{display:block;font-size:24px;font-weight:600}.data-table-container{border:1px solid #dee2e6;border-radius:8px;overflow-x:auto}.data-table{border-collapse:collapse;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:12px;width:100%}.data-table th{background:#f8f9fa;border-bottom:2px solid #e5e7eb;color:#374151;font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 8px;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{border-bottom:1px solid #e5e7eb;color:#4b5563;padding:10px 8px;vertical-align:middle}.data-table tbody tr:hover{background:#3741510d}.data-table tbody tr:last-child td{border-bottom:none}.net-salary{color:#059669;font-size:11px;font-weight:600}.data-loading-overlay{align-items:center;background:#ffffffb3;display:flex;inset:0;justify-content:center;position:absolute;z-index:10}.data-spinner{animation:data-spin 1s linear infinite;border:4px solid #00000014;border-radius:50%;border-top-color:#22c55e;height:44px;width:44px}@keyframes data-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{color:#dc3545;padding:40px 20px}.error-message p{font-size:16px;margin-bottom:15px}.error-message button{background:#991b1b;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background .3s ease}.error-message button:hover{background:#7f1d1d}.no-data{color:#6c757d;padding:60px 20px;text-align:center}.no-data p{font-size:16px;margin:0}@media (max-width:1024px){.data-display-container{padding:15px}.data-type-toggle{flex-direction:column;gap:8px;margin-bottom:20px}.toggle-btn{font-size:13px;min-width:100px;padding:8px 16px}.controls-section{align-items:stretch;flex-direction:column;gap:15px;overflow-x:visible}.filter-section{width:100%}.filter-operations{align-items:stretch;flex-direction:column;gap:15px;min-height:auto;padding:15px}.clear-filters{align-self:stretch;margin-top:10px}.delete-operations{margin-top:15px;padding:0;width:100%}.filter-group{align-items:stretch;flex-direction:column;gap:8px;width:100%}.filter-group label{font-size:14px;white-space:nowrap}.filter-group input,.filter-group select{min-width:auto;width:100%}.clear-filters{font-size:14px;margin-left:0;margin-right:0;margin-top:0;padding:12px 16px;width:100%}.delete-buttons{flex-direction:column;gap:10px;width:100%}.delete-btn{font-size:13px;max-width:none;min-height:45px;padding:10px 8px;width:100%}.data-summary{gap:10px;grid-template-columns:1fr}.summary-card{padding:15px}.summary-value{font-size:20px}.data-table{font-size:11px}.data-table td,.data-table th{padding:8px 4px}.data-table td:nth-child(10),.data-table td:nth-child(4),.data-table td:nth-child(9),.data-table th:nth-child(10),.data-table th:nth-child(4),.data-table th:nth-child(9){display:none}}@media (max-width:768px){.data-display-container{padding:10px}.data-type-toggle{flex-direction:column;gap:8px;margin-bottom:20px}.toggle-btn{font-size:13px;min-width:100px;padding:8px 16px}.controls-section{gap:10px}.filter-operations{gap:12px;padding:12px}.delete-operations{margin-top:12px;padding:0}.filter-group{gap:6px;width:100%}.filter-group label{font-size:13px}.filter-group input,.filter-group select{font-size:13px;padding:6px 8px;width:100%}.clear-filters{align-self:stretch;font-size:13px;margin-right:0;margin-top:10px;padding:10px 12px}.delete-buttons{gap:8px}.delete-btn{font-size:12px;min-height:40px;padding:8px 6px}.summary-card{padding:12px}.summary-label{font-size:13px}.summary-value{font-size:18px}.data-table{font-size:10px}.data-table td,.data-table th{padding:6px 2px}.data-table td:nth-child(10),.data-table td:nth-child(3),.data-table td:nth-child(4),.data-table td:nth-child(9),.data-table th:nth-child(10),.data-table th:nth-child(3),.data-table th:nth-child(4),.data-table th:nth-child(9){display:none}}.csv-download-container{align-items:center;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:flex-start;margin:0 auto;max-width:800px;min-height:auto;padding:15px}.download-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 6px 20px #667eea4d;color:#fff;margin-bottom:20px;padding:15px;text-align:center}.download-header h3{font-size:1.8em;font-weight:600;margin:0 0 8px}.download-header p{font-size:1em;margin:0;opacity:.9}.download-options{margin-bottom:20px}.option-card{background:#fff;border:1px solid #e1e8ed;border-radius:12px;box-shadow:0 6px 25px #0000001a;max-width:750px;padding:20px;transition:all .3s ease;width:100%}.option-card:hover{box-shadow:0 8px 30px #00000026;transform:translateY(-1px)}.option-header{align-items:center;border-bottom:2px solid #f0f4f8;display:flex;margin-bottom:15px;padding-bottom:12px}.option-icon{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:1.5em;margin-right:12px}.option-header h4{color:#2d3748;font-size:1.3em;font-weight:600;margin:0}.option-card p{color:#718096;font-size:1em;line-height:1.5;margin-bottom:18px}.selection-group{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:18px;width:100%}.selection-column{display:flex;flex-direction:column;gap:15px}.selection-column h4{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.1em;font-weight:600;margin:0 0 10px;padding-bottom:8px}.select-wrapper{display:flex;flex-direction:column}.select-wrapper label{color:#2d3748;font-size:.9em;font-weight:600;margin-bottom:6px}.select-wrapper select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#2d3748;cursor:pointer;font-size:.95em;padding:10px 12px;transition:all .3s ease}.select-wrapper select:focus{border-color:#2c3e50;box-shadow:0 0 0 3px #2c3e501a;outline:none}.select-wrapper select:disabled{background:#f7fafc;color:#a0aec0;cursor:not-allowed}.select-wrapper select:hover:not(:disabled){border-color:#cbd5e0}.download-btn{border:none;border-radius:10px;cursor:pointer;font-size:1em;font-weight:600;letter-spacing:.5px;margin-top:8px;padding:12px 24px;text-transform:uppercase;transition:all .3s ease;width:100%}.download-btn.primary{background:linear-gradient(135deg,#2c3e50,#34495e);box-shadow:0 4px 15px #2c3e5066;color:#fff}.download-btn.primary:hover:not(:disabled){box-shadow:0 6px 20px #2c3e5099;transform:translateY(-1px)}.download-btn:disabled{background:#cbd5e0;box-shadow:none;color:#a0aec0;cursor:not-allowed;opacity:.6;transform:none}.action-buttons{margin-bottom:20px}.clear-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#718096;cursor:pointer;font-size:.9em;font-weight:600;padding:10px 20px;transition:all .3s ease}.clear-btn:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0;color:#4a5568}.clear-btn:disabled{cursor:not-allowed;opacity:.5}.message{align-items:center;animation:slideIn .3s ease;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;font-size:.9em;font-weight:500;margin-bottom:20px;max-width:750px;padding:12px 16px;position:relative;width:100%}.message-text{flex:1 1;margin-right:10px}.message-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;font-size:1.2em;font-weight:700;height:20px;justify-content:center;opacity:.7;padding:0;transition:all .2s ease;width:20px}.message-close-btn:hover{background:#0000001a;opacity:1}.message.success .message-close-btn:hover{background:#22543d33}.message.error .message-close-btn:hover{background:#742a2a33}.message.success{background:#f0fff4;border:1px solid #9ae6b4;color:#22543d}.message.error{background:#fed7d7;border:1px solid #feb2b2;color:#742a2a}.message-icon{font-size:1.1em;margin-right:8px}.download-info{background:#f7fafc;border-left:4px solid #667eea;border-radius:15px;margin-bottom:30px;padding:25px}.download-info h4{color:#2d3748;font-size:1.3em;font-weight:600;margin:0 0 15px}.download-info ul{color:#4a5568;line-height:1.8;margin:0;padding-left:20px}.download-info li{margin-bottom:8px}.download-examples{background:#fff;border:1px solid #e1e8ed;border-radius:15px;box-shadow:0 5px 20px #00000014;padding:25px}.download-examples h4{color:#2d3748;font-size:1.3em;font-weight:600;margin:0 0 20px;text-align:center}.example-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.example-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .3s ease}.example-item:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.example-item h5{border-bottom:2px solid #e2e8f0;color:#667eea;font-size:1.1em;font-weight:600;margin:0 0 15px;padding-bottom:10px;text-align:center}.example-item ul{color:#4a5568;line-height:1.6;margin:0;padding-left:20px}.example-item li{font-size:.95em;margin-bottom:6px}@media (max-width:768px){.csv-download-container{max-width:100%;padding:12px}.download-header{padding:12px}.download-header h3{font-size:1.6em}.option-card{max-width:100%;padding:16px}.selection-group{gap:15px;grid-template-columns:1fr}.selection-column h4{margin-top:10px}.download-btn{font-size:.95em;padding:10px 18px}.message{font-size:.85em;padding:10px 14px}.message-close-btn{font-size:1.1em;height:18px;width:18px}}@media (max-width:480px){.csv-download-container{padding:10px}.download-header h3{font-size:1.4em}.option-header h4{font-size:1.2em}.option-card{padding:14px}.select-wrapper select{font-size:.9em;padding:8px 10px}.download-btn{font-size:.9em;padding:8px 16px}.clear-btn{font-size:.85em;padding:8px 16px}.message{font-size:.8em;padding:8px 12px}.message-close-btn{font-size:1em;height:16px;width:16px}}.download-btn:disabled{overflow:hidden;position:relative}.download-btn:disabled:after{animation:loading 1.5s infinite;background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes loading{0%{left:-100%}to{left:100%}}.clear-btn:focus-visible,.download-btn:focus-visible,.select-wrapper select:focus-visible{outline:2px solid #2c3e50;outline-offset:2px}@media (prefers-color-scheme:dark){.csv-download-container{background:#1a202c;color:#e2e8f0}.option-card,.select-wrapper select{background:#2d3748;border-color:#4a5568}.select-wrapper select{color:#e2e8f0}.download-info{background:#2d3748;border-color:#667eea}.example-item{background:#2d3748;border-color:#4a5568}}.user-management-container{margin:10px 20px}@media (max-width:768px){.user-management-container{margin:0;padding:0 10px;width:100%}.main-content.mobile-layout{box-sizing:border-box;margin:0;padding:5px;width:100%}}@media (max-width:480px){.user-management-container{margin:0;padding:0 5px;width:100%}.main-content.mobile-layout{box-sizing:border-box;margin:0;padding:2px;width:100%}}@media (max-width:768px){.tab-container{margin:0;padding:0 10px;width:100%}}@media (max-width:480px){.tab-container{margin:0;padding:0 5px;width:100%}}.tab-content{min-height:300px}.search-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:25px;padding:25px}.search-header{margin:0 0 20px}.header-content{align-items:flex-start;gap:20px}.header-text{flex:1 1;text-align:left}.header-text h4{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 8px;text-align:left}.header-text p{color:#6c757d;font-size:14px;margin:0;text-align:left}.search-controls{align-items:center;display:flex;flex-direction:column;gap:20px}.search-input-group{align-items:center;display:flex;gap:12px;justify-content:center;max-width:600px;width:100%}.search-input{background:#f8f9fa;border:2px solid #e9ecef;border-radius:6px;box-sizing:border-box;flex:0 1 300px;font-size:14px;height:33px;padding:0 16px;transition:all .3s ease}.search-input:focus{background:#fff;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.search-input::placeholder{color:#adb5bd}.search-button{background:#3498db;border:none;border-radius:6px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:14px;font-weight:500;height:33px;min-width:80px;padding:0 16px;transition:all .3s ease;white-space:nowrap}.search-button:hover:not(:disabled){background:#2980b9;box-shadow:0 4px 8px #3498db4d;transform:translateY(-1px)}.search-button:disabled{background:#bdc3c7;box-shadow:none;cursor:not-allowed;transform:none}.clear-button{background:#6c757d;border-radius:6px;box-sizing:border-box;font-size:13px;height:44px;min-width:70px;padding:12px 16px;transition:all .3s ease;white-space:nowrap}.clear-button:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.clear-button:disabled{background:#adb5bd;cursor:not-allowed;transform:none}.action-buttons{align-items:center;display:flex;gap:12px;justify-content:center}.add-new-button{-webkit-tap-highlight-color:transparent;background:#27ae60;border:none;border-radius:6px;box-shadow:0 2px 4px #27ae6033;color:#fff;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:500;padding:12px 20px;touch-action:manipulation;transition:all .3s ease;user-select:none;-webkit-user-select:none;white-space:nowrap}.add-new-button:hover{background:#229954;box-shadow:0 4px 8px #27ae604d;transform:translateY(-1px)}.results-section{min-height:300px}.results-content{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.results-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:20px 25px}.results-header h4{color:#2c3e50;font-size:16px;font-weight:600;margin:0}.results-table{overflow-x:auto}.results-table table{border-collapse:collapse;font-size:14px;width:100%}.results-table th{background:#f8f9fa;border-bottom:1px solid #e9ecef;color:#2c3e50;font-weight:600;padding:15px 20px;text-align:left;white-space:nowrap}.results-table td{border-bottom:1px solid #f1f3f4;color:#2c3e50;padding:15px 20px}.results-table tr:hover{background:#f8f9fa}.results-table tr{-webkit-touch-callout:none}.results-table td .action-buttons-small{pointer-events:auto;position:relative;z-index:10}.results-table td .action-buttons-small button{pointer-events:auto}.role-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;min-width:60px;padding:4px 8px;text-align:center}.role-badge.admin{background:#e74c3c;color:#fff}.role-badge.employee{background:#3498db;color:#fff}.role-badge.construction-worker{background:#f39c12;color:#fff}.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;min-width:70px;padding:4px 8px;text-align:center}.status-badge.active{background:#27ae60;color:#fff}.status-badge.inactive{background:#95a5a6;color:#fff}.action-buttons-small{display:flex;gap:8px}.delete-button,.edit-button{-webkit-tap-highlight-color:transparent;background:none;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px;touch-action:manipulation;transition:all .2s ease;user-select:none;-webkit-user-select:none}.edit-button:hover{background:#3498db;color:#fff}.delete-button:hover{background:#e74c3c;color:#fff}.loading-container{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;padding:60px 20px;text-align:center}.loading-spinner{font-size:48px;margin-bottom:15px}.no-results,.welcome-message{align-items:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.no-results-icon,.welcome-icon{font-size:48px;margin-bottom:15px;opacity:.7}.no-results p,.welcome-message p{color:#6c757d;font-size:16px;font-weight:500;margin:0 0 10px}.no-results-hint,.welcome-hint{color:#adb5bd!important;font-size:14px!important;font-weight:400!important}@media (max-width:768px){.main-content h3{font-size:20px;margin-bottom:20px;padding-left:0;text-align:center}.tab-container{margin:10px 15px}.tab-navigation{border-bottom:none;flex-direction:column;gap:5px}.tab-button{background:#f8f9fa;border-bottom:none;border-left:3px solid #0000;border-radius:6px;font-size:14px;padding:15px 20px;text-align:left}.tab-button.active{background:#3498db1a;border-left-color:#3498db}.user-management-container{margin:10px 15px}.search-section{margin-bottom:20px;padding:20px}.search-controls{align-items:center;gap:15px}.search-input-group{flex-direction:column;gap:10px;justify-content:center;max-width:100%}.search-input{flex:none}.clear-button,.search-button,.search-input{box-sizing:border-box;height:44px;width:100%}.clear-button,.search-button{padding:12px 16px}.action-buttons{flex-wrap:wrap;justify-content:center}.add-new-button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;box-sizing:border-box;font-size:13px;height:44px;min-height:44px;padding:12px 16px;position:relative;touch-action:manipulation;user-select:none;-webkit-user-select:none;width:100%;z-index:1}.results-header{padding:15px 20px}.results-table td,.results-table th{font-size:13px;padding:12px 15px}.results-table td{position:relative}.results-table tr{-webkit-touch-callout:none}.results-table td .action-buttons-small{pointer-events:auto;position:relative;touch-action:manipulation;z-index:10}.results-table td .action-buttons-small button{pointer-events:auto}.delete-button,.edit-button{-webkit-tap-highlight-color:transparent;align-items:center;display:flex;font-size:18px;justify-content:center;min-height:44px;min-width:44px;padding:10px;position:relative;touch-action:manipulation;user-select:none;-webkit-user-select:none;z-index:11}.action-buttons-small{gap:12px;position:relative;touch-action:manipulation;z-index:10}.role-badge,.status-badge{font-size:11px;padding:3px 6px}.no-results,.welcome-message{padding:40px 15px}.no-results-icon,.welcome-icon{font-size:36px;margin-bottom:12px}.no-results p,.welcome-message p{font-size:14px}}@media (max-width:480px){.main-content h3{font-size:18px;margin-bottom:15px}.search-section{padding:15px}.search-header h4{font-size:16px}.search-header p{font-size:13px}.header-content{align-items:stretch;flex-direction:column;gap:12px}.header-text{text-align:left}.add-new-button,.clear-button,.search-button{box-sizing:border-box;font-size:13px;height:44px;padding:10px 16px;width:100%}.search-input{box-sizing:border-box;height:44px}.results-header h4{font-size:14px}.results-table td,.results-table th{font-size:12px;padding:10px 12px}.no-results,.welcome-message{padding:30px 10px}.no-results-icon,.welcome-icon{font-size:32px;margin-bottom:10px}.no-results p,.welcome-message p{font-size:13px}}.modal-overlay{align-items:flex-start!important;background:#00000080!important;bottom:0!important;display:flex!important;justify-content:center!important;left:0!important;opacity:1!important;padding:20px!important;pointer-events:auto!important;position:fixed!important;right:0!important;top:64px!important;visibility:visible!important;z-index:10000!important}@media (max-width:768px){.modal-overlay{-webkit-overflow-scrolling:touch!important;align-items:center!important;bottom:0!important;justify-content:center!important;left:0!important;overflow-y:auto!important;padding:20px 10px!important;right:0!important;top:0!important;z-index:10000!important}}.modal-content{-webkit-overflow-scrolling:touch;animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;display:flex;flex-direction:column;margin-top:24px;max-height:calc(85vh - 64px);max-width:500px;overflow-y:auto;width:100%}@media (max-width:768px){.modal-content{border-radius:12px!important;box-shadow:0 20px 40px #0000004d!important;display:flex!important;flex-direction:column!important;height:auto!important;margin:0!important;max-height:calc(100vh - 40px)!important;max-width:500px!important;width:calc(100% - 40px)!important}}.modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0}.header-actions{align-items:center;display:flex;gap:12px}.settings-button{background:none;border:none;border-radius:6px;cursor:pointer;font-size:16px;padding:8px;transition:all .2s ease}.settings-button:hover{background:#e9ecef;transform:rotate(90deg)}.close-button{background:none;border:none;border-radius:6px;color:#6c757d;cursor:pointer;font-size:16px;padding:8px;transition:all .2s ease}.close-button:hover{background:#e9ecef;color:#2c3e50}.settings-panel{background:#fff;border:2px solid #3498db;border-radius:8px;box-shadow:0 4px 12px #3498db26;margin:0 24px 20px;padding:20px 24px;position:relative}.settings-panel:before{background:linear-gradient(135deg,#3498db,#2980b9);border-radius:10px;bottom:-2px;content:"";left:-2px;position:absolute;right:-2px;top:-2px;z-index:-1}.settings-panel h4{background:#2c3e50;border-radius:6px;box-shadow:0 2px 4px #2c3e5033;color:#fff;flex:1 1;font-size:14px;font-weight:600;margin:0;padding:8px 12px;text-align:center}.settings-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.shrink-settings-btn{align-items:center;background:#2c3e50;border:none;border-radius:6px;box-shadow:0 2px 4px #2c3e5033;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:36px;justify-content:center;min-width:40px;padding:8px 12px;transition:all .2s ease}.shrink-settings-btn:hover{background:#34495e;box-shadow:0 4px 8px #2c3e504d;transform:translateY(-1px)}.shrink-settings-btn:active{transform:translateY(0)}.branch-type-selector{background:#fff;border:1px solid #dee2e6;border-radius:6px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:12px}.branch-type-selector label{color:#2c3e50;display:block;font-size:10px;font-weight:500;margin-bottom:8px}.branch-type-selector select{background:#fff;border:2px solid #e9ecef;border-radius:6px;box-sizing:border-box;font-size:10px;height:36px;padding:8px 12px;width:100%}.branch-type-selector select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.current-branches{background:#fff;border:1px solid #dee2e6;border-radius:6px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:12px}.current-branches label{color:#2c3e50;display:block;font-size:10px;font-weight:500;margin-bottom:8px}.branches-list{background:#fff;border:2px solid #e9ecef;border-radius:6px;max-height:120px;overflow-y:auto;padding:8px}.branch-item{align-items:center;border-bottom:1px solid #f1f3f4;display:flex;justify-content:space-between;padding:6px 8px;transition:background-color .2s ease}.branch-item:last-child{border-bottom:none}.branch-item:hover{background-color:#f8f9fa}.branch-name{color:#2c3e50;flex:1 1;font-size:10px}.delete-branch-btn{background:none;border:none;border-radius:4px;color:#e74c3c;cursor:pointer;font-size:10px;font-weight:700;padding:4px 8px;transition:all .2s ease}.delete-branch-btn:hover{background-color:#fdf2f2;color:#c0392b}.add-branch-section{background:#fff;border:1px solid #dee2e6;border-radius:6px;box-shadow:0 2px 4px #0000000d;margin-bottom:0;padding:12px}.add-branch-section label{color:#2c3e50;display:block;font-size:10px;font-weight:500;margin-bottom:8px}.add-branch-input{display:flex;gap:8px}.add-branch-input input{border:2px solid #e9ecef;border-radius:6px;box-sizing:border-box;flex:1 1;font-size:10px;height:36px;padding:8px 12px}.add-branch-input input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.add-branch-btn{background:#27ae60;border:none;border-radius:6px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:10px;font-weight:500;height:36px;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.add-branch-btn:hover:not(:disabled){background:#229954;transform:translateY(-1px)}.add-branch-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.add-user-form{padding:24px}.form-group{margin-bottom:20px}.form-group:last-of-type{margin-bottom:0}.form-group label{color:#2c3e50;margin-bottom:8px}.form-group input,.form-group select{background:#fff;border:2px solid #e9ecef;border-radius:6px;box-sizing:border-box;font-size:14px;height:40px;padding:10px 14px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.form-group input.error,.form-group select.error{border-color:#e74c3c}.form-group input:disabled,.form-group select:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.error-message{color:#e74c3c;font-size:12px;font-weight:500;margin-top:4px}.loading-message{color:#007bff}.info-message,.loading-message{font-size:12px;font-style:italic;margin-top:4px}.info-message{color:#28a745}.disabled-input{border-color:#dee2e6!important}.form-actions{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:20px}.btn{border:none;border-radius:6px;box-sizing:border-box;cursor:pointer;font-size:14px;font-weight:500;height:40px;min-width:80px;padding:10px 20px;transition:all .3s ease}.btn-primary{background:#27ae60;box-shadow:0 2px 4px #27ae6033}.btn-primary:hover{background:#229954;box-shadow:0 4px 8px #27ae604d;transform:translateY(-1px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268;transform:translateY(-1px)}@media (max-width:768px){.modal-header{border-radius:0!important;flex-shrink:0;padding:16px 20px}.settings-panel{margin:0 20px 20px;padding:16px 20px}.add-user-form{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-y:auto;padding:20px}.form-actions{flex-direction:column;flex-shrink:0;gap:10px}.btn{min-height:44px;width:100%}.add-branch-input{flex-direction:column}.add-branch-btn{min-height:44px;width:100%}.close-button{min-height:44px;min-width:44px;touch-action:manipulation}}@media (max-width:480px){.modal-overlay{padding:15px 10px!important}.modal-content{border-radius:12px!important;height:auto!important;max-height:calc(100vh - 30px)!important;width:calc(100% - 20px)!important}.modal-header{border-radius:12px 12px 0 0!important;padding:14px 18px}.modal-header h3{font-size:16px}.settings-panel{margin:0 18px 18px;padding:14px 18px}.add-user-form{padding:18px}.form-group{margin-bottom:16px}.form-group input,.form-group select{padding:8px 12px}.btn,.form-group input,.form-group select{font-size:16px;height:44px;min-height:44px}.btn{padding:12px 16px}.add-branch-btn,.add-branch-input input,.branch-type-selector select{font-size:16px;height:44px;min-height:44px}.close-button{font-size:20px;min-height:44px;min-width:44px}}.tab-container{display:flex;flex-direction:column;margin:10px 20px;min-height:0}@media (max-width:768px){.tab-container{margin:0;padding:0 10px;width:100%}.main-content.mobile-layout{box-sizing:border-box;margin:0;padding:5px;width:100%}}@media (max-width:480px){.tab-container{margin:0;padding:0 5px;width:100%}.main-content.mobile-layout{box-sizing:border-box;margin:0;padding:2px;width:100%}}.main-content h3{border-bottom:2px solid #3498db;color:#2c3e50;font-size:24px;font-weight:600;margin:5px 0 25px;padding-bottom:10px;padding-left:20px;text-align:left}.tab-navigation{border-bottom:2px solid #e9ecef;display:flex;flex-shrink:0;gap:0;margin-bottom:20px}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:#6c757d;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.tab-button:hover{background:#3498db0d;color:#3498db}.tab-button.active{background:#3498db1a;border-bottom-color:#3498db;color:#3498db}.tab-content{flex:1 1;min-height:0;overflow:visible}.tab-panel{animation:fadeIn .3s ease;overflow:visible}.tab-panel h3{color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 15px}.tab-panel p{color:#6c757d;line-height:1.6;margin:0 0 20px}.placeholder-content{align-items:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;display:flex;flex-direction:column;height:100%;justify-content:center;padding:60px 20px;text-align:center}.placeholder-icon{font-size:48px;margin-bottom:15px;opacity:.7}.placeholder-content p{color:#6c757d;font-size:16px;font-weight:500;margin:0}@media (max-width:768px){.tab-container{height:auto}.main-content h3{font-size:20px;margin-bottom:20px;padding-left:0;text-align:center}.tab-navigation{border-bottom:none;flex-direction:column;gap:5px}.tab-button{background:#f8f9fa;border-bottom:none;border-left:3px solid #0000;border-radius:6px;font-size:14px;padding:15px 20px;text-align:left}.tab-button.active{background:#3498db1a;border-left-color:#3498db}.tab-content{min-height:auto}.tab-panel h3{font-size:18px;margin-bottom:12px}.tab-panel p{font-size:14px;margin-bottom:15px}.placeholder-content{padding:40px 15px}.placeholder-icon{font-size:36px;margin-bottom:12px}.placeholder-content p{font-size:14px}}@media (max-width:480px){.main-content h3{font-size:18px;margin-bottom:15px;padding-left:0;text-align:center}.tab-button{font-size:13px;padding:12px 15px}.tab-panel h3{font-size:16px}.tab-panel p{font-size:13px}.placeholder-content{padding:30px 10px}.placeholder-icon{font-size:32px;margin-bottom:10px}.placeholder-content p{font-size:13px}}.office-emp-preview{background-color:#f8f9fa;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:visible;padding:20px;position:relative}.settings-icon{align-items:center;background-color:#fff;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:35px;top:140px;transition:all .3s ease;width:40px;z-index:10}.settings-icon:hover{background-color:#f8f9fa;box-shadow:0 4px 12px #0003;color:#495057;transform:scale(1.05)}.settings-icon:active{transform:scale(.95)}.settings-modal-overlay{align-items:flex-start!important;-webkit-backdrop-filter:blur(3px)!important;backdrop-filter:blur(3px)!important;background-color:#0009!important;display:flex!important;height:calc(100vh - 80px)!important;justify-content:center!important;left:0!important;padding-top:20px!important;position:fixed!important;top:80px!important;width:100vw!important;z-index:1002!important}@media (max-height:800px){.settings-modal-overlay{height:calc(100vh - 60px)!important;top:60px!important}}@media (max-height:600px){.settings-modal-overlay{height:calc(100vh - 40px)!important;top:40px!important}.settings-modal{height:90vh!important}}@media (max-width:768px){.settings-modal-overlay{padding-left:20px!important;padding-right:20px!important}}.settings-modal{animation:modalSlideIn .3s ease-out;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 25px 50px #0006;display:flex;flex-direction:column;height:85vh;max-width:900px;overflow:hidden;width:95%}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-30px)}to{opacity:1;transform:scale(1) translateY(0)}}.settings-modal-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;min-height:60px;padding:16px 24px}.settings-modal-header h3{align-items:center;color:#1e293b;display:flex;font-size:20px;font-weight:600;gap:8px;margin:0}.settings-modal-header h3:before{content:"⚙️";font-size:18px}.settings-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;padding:8px;transition:all .2s ease;width:36px}.settings-modal-close:hover{background-color:#f1f5f9;color:#475569}.settings-modal-close:active{background-color:#e2e8f0}.settings-modal-content{display:flex;flex:1 1;overflow:hidden;padding:0}.settings-sidebar{background-color:#f8fafc;border-right:1px solid #e5e7eb;overflow-y:auto;padding:16px 0;width:200px}.settings-nav-item{background:none;border:none;border-left:3px solid #0000;color:#475569;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;text-align:left;transition:all .2s ease;width:100%}.settings-nav-item:hover{background-color:#f1f5f9;color:#1e293b}.settings-nav-item.active{background-color:#dbeafe;border-left-color:#1d4ed8;color:#1d4ed8}.settings-main-content{flex:1 1;overflow-y:auto;padding:24px}.settings-section{border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px;padding:24px}.settings-section:last-child{margin-bottom:0}.settings-section h4{align-items:center;border-bottom:2px solid #e2e8f0;color:#1e293b;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0 0 20px;padding-bottom:12px}.settings-section h4:before{content:"📋";font-size:16px}.setting-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:row;gap:16px;justify-content:space-between;margin-bottom:20px;padding:12px 0}.setting-item:last-child{border-bottom:none;margin-bottom:0}.setting-item label{color:#374151;flex:0 0 120px;font-size:14px;font-weight:500;white-space:nowrap}.setting-item input[type=checkbox]{accent-color:#1d4ed8;cursor:pointer;height:18px;width:18px}.setting-item input[type=color],.setting-item select{background-color:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;flex-shrink:0;font-size:13px;max-width:150px;min-width:120px;padding:6px 10px;width:130px}.settings-section .setting-item select{margin-left:auto;margin-right:100px;max-width:250px;min-width:250px;width:250px}.setting-item input[type=color]:focus,.setting-item select:focus{border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed81a;outline:none}.font-preview{background-color:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;margin-top:16px;padding:16px}.font-preview label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.font-preview-text{background-color:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:16px;justify-content:center;line-height:1.5;padding:12px;text-align:center}.font-preview-text,.settings-modal-footer{align-items:center;display:flex;min-height:60px}.settings-modal-footer{background-color:#f8fafc;border-top:1px solid #e5e7eb;gap:12px;justify-content:flex-end;padding:16px 24px}.settings-cancel-btn,.settings-reset-btn,.settings-save-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;min-width:80px;padding:10px 20px;transition:all .2s ease}.settings-save-btn{background-color:#1d4ed8;color:#fff}.settings-save-btn:hover{background-color:#1e40af;box-shadow:0 4px 8px #1d4ed84d;transform:translateY(-1px)}.settings-cancel-btn{background-color:#6b7280;color:#fff}.settings-cancel-btn:hover{background-color:#4b5563;transform:translateY(-1px)}.settings-reset-btn{background-color:#dc2626;color:#fff}.settings-reset-btn:hover{background-color:#b91c1c;transform:translateY(-1px)}.hidden-memo{background-color:initial!important;border-color:#0000!important;color:#0000!important}.controls-section{background-color:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;gap:15px;margin-bottom:20px;overflow:visible;padding:15px}.data-type-toggle{align-items:center;display:flex;gap:10px;justify-content:center;margin-bottom:15px;width:100%}.toggle-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;min-width:100px;padding:8px 16px;transition:all .3s ease}.toggle-btn:hover{background:#f9fafb;border-color:#9ca3af;color:#1f2937}.toggle-btn.active{background:#374151;border-color:#374151;color:#fff}.toggle-btn.active:hover{background:#1f2937;border-color:#1f2937}.input-row{justify-content:space-between}.input-group,.input-row{align-items:center;display:flex;flex-wrap:nowrap;gap:20px;overflow:visible}.date-field{align-items:center;display:flex;flex-direction:column;gap:4px;max-width:120px;min-width:120px}.date-field label{color:#2c3e50;font-size:14px;font-weight:600;text-align:center}.date-select{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;color:#2c3e50;cursor:pointer;font-size:14px;height:40px;padding:12px;width:100%}.date-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.emp-code-field,.emp-name-field{align-items:center;display:flex;flex-direction:column;gap:4px;max-width:180px;min-width:180px}.emp-code-field label,.emp-name-field label{color:#2c3e50;font-size:14px;font-weight:600;text-align:center}.emp-code-input,.emp-name-input{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;color:#2c3e50;font-size:14px;height:40px;padding:12px;transition:border-color .2s ease;width:100%}.site-field{align-items:center;display:flex;flex-direction:column;gap:4px;max-width:140px;min-width:140px}.site-field label{color:#2c3e50;font-size:14px;font-weight:600;text-align:center}.site-select{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;color:#2c3e50;cursor:pointer;font-size:14px;height:40px;padding:12px;width:100%}.site-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.disabled-input{background-color:#f8f9fa!important;border-color:#e9ecef!important;color:#6c757d!important;cursor:not-allowed!important}.disabled-input:focus{border-color:#e9ecef!important;box-shadow:none!important;outline:none!important}.emp-code-input:focus,.emp-name-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.emp-code-input::placeholder,.emp-name-input::placeholder{color:#adb5bd}.office-emp-preview .controls-section{text-align:center!important}.office-emp-preview .controls-section,.office-emp-preview .input-row{align-items:center!important;display:flex!important;flex-direction:column!important;justify-content:center!important}.office-emp-preview .input-row{gap:15px!important;width:100%!important}.office-emp-preview .input-group{align-items:flex-end!important;flex-direction:row!important}.office-emp-preview .form-fields-row,.office-emp-preview .input-group{display:flex!important;flex-wrap:wrap!important;gap:20px!important;justify-content:center!important;width:100%!important}.office-emp-preview .form-fields-row{align-items:center!important}.office-emp-preview .button-container{align-items:center!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important;justify-content:center!important;margin-top:10px!important;width:100%!important}.office-emp-preview .date-field{max-width:150px!important;min-width:120px!important}.office-emp-preview .date-field,.office-emp-preview .emp-name-field{align-items:center!important;display:flex!important;flex-direction:column!important;text-align:center!important}.office-emp-preview .emp-name-field{max-width:250px!important;min-width:200px!important}.office-emp-preview .site-field{max-width:200px!important;min-width:150px!important;text-align:center!important}.office-emp-preview .date-field label,.office-emp-preview .emp-name-field label,.office-emp-preview .site-field label{font-weight:500!important;margin-bottom:5px!important;text-align:center!important}@media (max-width:768px){.office-emp-preview .controls-section{box-sizing:border-box!important;margin:0!important;padding:5px!important;width:100%!important}.office-emp-preview .input-row{gap:15px!important}.office-emp-preview .form-fields-row,.office-emp-preview .input-group{flex-direction:column!important;gap:15px!important}.office-emp-preview .date-field,.office-emp-preview .emp-name-field,.office-emp-preview .site-field{max-width:100%!important;min-width:100%!important}.office-emp-preview .button-container{flex-direction:row!important;flex-wrap:wrap!important;gap:15px!important}}.office-emp-preview .emp-code-field,.office-emp-preview .emp-name-field{max-width:180px!important;min-width:180px!important}.office-emp-preview .emp-code-field,.office-emp-preview .emp-name-field,.office-emp-preview .site-field{align-items:center!important;display:flex!important;flex-direction:column!important;flex-shrink:0!important;gap:4px!important}.office-emp-preview .site-field{max-width:140px!important;min-width:140px!important}.office-emp-preview .date-field label,.office-emp-preview .emp-code-field label,.office-emp-preview .emp-name-field label,.office-emp-preview .site-field label{color:#333!important;display:block!important;font-size:14px!important;font-weight:500!important;margin-bottom:4px!important;text-align:center!important}.office-emp-preview .date-select,.office-emp-preview .emp-code-input,.office-emp-preview .emp-name-input,.office-emp-preview .site-select{background-color:#fff!important;border:1px solid #ccc!important;border-radius:4px!important;box-sizing:border-box!important;font-size:14px!important;height:40px!important;max-width:100%!important;padding:12px!important;width:100%!important}.button-container{align-items:center;display:flex;flex-wrap:nowrap;gap:10px;min-width:0}.clear-button{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;height:32px;padding:6px 16px;transition:background-color .2s ease}.clear-button:hover{background-color:#5a6268}.clear-button:active{background-color:#545b62}.generate-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;height:32px;margin-left:10px;padding:6px 16px;transition:background-color .2s ease}.generate-button:hover{background-color:#45a049}.generate-button:active{background-color:#3d8b40}.generate-button:disabled{background-color:#ccc;cursor:not-allowed}.pdf-button{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;height:32px;margin-left:10px;padding:6px 16px;transition:background-color .2s ease}.pdf-button:hover{background-color:#1976d2}.pdf-button:active{background-color:#1565c0}.pdf-button:disabled{cursor:not-allowed;opacity:.6}.pdf-button:disabled,.pdf-button:disabled:hover{background-color:#ccc}.table-area{background-color:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;display:block;max-width:none;min-height:100vh;min-width:100%;overflow-x:auto;overflow-y:visible;padding:10px;width:100%}.main-table .all-white-row td{background:#fff!important}.payslip-container{background:#fff;box-sizing:border-box;color:#333;display:block;font-family:Yu Gothic,Hiragino Sans,Noto Sans JP,Source Han Sans JP,MS Gothic,Meiryo,sans-serif;max-width:none;min-height:100vh;min-width:100%;overflow-x:auto;overflow-y:visible;padding:10px;width:100%}.title{background-color:#fff}.sub-title,.title{line-height:1;margin:0;padding:0}.title-cell{background:#fff!important;border:none!important;padding:0 5px!important;position:relative;text-align:center!important}.title-cell:after{border-bottom:3px double #4caf50;border-bottom:3px double var(--payslip-border-color,#4caf50);bottom:4px;content:"";display:block;height:0;left:16px;pointer-events:none;position:absolute;right:16px}.sub-title-cell{background:#fff!important;border:none!important;text-align:center!important}.header-table,.main-table{border-collapse:collapse;margin-bottom:20px;min-width:100%;table-layout:fixed;width:auto}.header-table td,.main-table td,.main-table th{border:1px solid #4caf50;border:1px solid var(--payslip-border-color,#4caf50);box-sizing:border-box;height:auto;max-height:none;min-height:16px;overflow:hidden;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.header-table td{background:#f6fff6;font-weight:700}.main-table th{background:#d6f5d6;font-size:13px}.main-table td,.main-table th{font-weight:700}.main-table tr:nth-child(-n+27):nth-child(odd) td{background:#eaffea;background:var(--payslip-background-color,#eaffea)}.main-table tr:nth-child(-n+33):nth-child(2n) td{background:#fff}.main-table .honsha-row td{border:none!important;text-align:right!important}.main-table tbody tr:nth-child(n+4):nth-child(-n+25):nth-child(2n) td:not(.vertical-text){background:#eaffea!important;background:var(--payslip-background-color,#eaffea)!important}.main-table tbody tr:nth-child(n+4):nth-child(-n+30):nth-child(odd) td:not(.vertical-text){background:#fff!important}.main-table td:first-child{background:#eaffea!important;background:var(--payslip-background-color,#eaffea)!important}.main-table .honsha-row td,.main-table .honsha-row td:first-child{background:#fff!important}.main-table td:not(:first-child),.main-table th:not(:first-child){max-width:50px;min-width:25px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:45px}.main-table tr:first-child td,.main-table tr:first-child th,.main-table tr:nth-child(2) td,.main-table tr:nth-child(2) th{height:26px!important;max-height:26px!important;min-height:26px!important}.memo{background:#eaffea;background:var(--payslip-background-color,#eaffea);border:1px solid #4caf50;border:1px solid var(--payslip-border-color,#4caf50);border-radius:4px;margin-top:10px;min-height:30px;padding:8px 12px;vertical-align:top}.memo,.memo-cell{text-align:left!important}.memo-cell{background:#eaffea!important;background:var(--payslip-background-color,#eaffea)!important;border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important;border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important;box-sizing:border-box!important;margin:0!important;min-height:30px!important;padding:8px 12px!important;vertical-align:top!important}.memo-top-border{border-bottom:none!important;border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.memo-bottom-border{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important;border-top:none!important;min-height:30px!important}.memo-row-first .memo,.memo-row-last .memo,.memo-row-middle .memo{background:#eaffea!important;background:var(--payslip-background-color,#eaffea)!important}.main-table,.memo-row-first td,.memo-row-last td,.memo-row-middle td{border-collapse:collapse!important;border-spacing:0!important}.memo-row-first td,.memo-row-last td,.memo-row-middle td{margin:0!important;padding:0!important}.memo-square-bottom,.memo-square-middle,.memo-square-top{border-collapse:collapse!important;border-spacing:0!important;outline:none!important;position:relative!important}.memo-row-first,.memo-row-last,.memo-row-middle{border-collapse:collapse!important;vertical-align:top!important}.payslip-preview-overlay{align-items:center;background:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.payslip-preview-modal{-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;box-shadow:0 4px 24px #0003;max-height:90vh;max-width:90vw;overflow:auto;padding:2rem;position:relative;scroll-behavior:smooth}.modal-close{background:none;border:none;cursor:pointer;font-size:2rem;position:absolute;right:1rem;top:1rem}.main-table tr:first-child .border-rect{border-top:1px solid #4caf50;border-top:1px solid var(--payslip-border-color,#4caf50)}.main-table tr:nth-child(2) .border-rect{border-bottom:1px solid #4caf50;border-bottom:1px solid var(--payslip-border-color,#4caf50)}.main-table tr:first-child .border-rect:first-child,.main-table tr:nth-child(2) .border-rect:first-child{border-left:1px solid #4caf50;border-left:1px solid var(--payslip-border-color,#4caf50)}.main-table tr:first-child .border-rect:last-child,.main-table tr:first-child .border-rect:nth-of-type(3),.main-table tr:nth-child(2) .border-rect:last-child,.main-table tr:nth-child(2) .border-rect:nth-of-type(3){border-right:1px solid #4caf50;border-right:1px solid var(--payslip-border-color,#4caf50)}.main-table tr:first-child .border-rect{border-bottom:none!important}.main-table tr:nth-child(2) .border-rect{border-top:none!important}.main-table .white-bg,.main-table tr:nth-child(2) td.white-bg:first-child{background:#fff!important}.main-table .no-border{border:none!important}.main-table tr:first-child .no-border,.no-border-uD{border-bottom:none!important}.no-border-uD{border-top:none!important}.vertical-text{border:1px solid #27ae60!important;border:1px solid var(--payslip-border-color,#27ae60)!important;font-weight:700;letter-spacing:.1em;padding:0 2px;text-align:center;text-orientation:upright;white-space:nowrap;writing-mode:vertical-rl}.main-table tbody tr.green-row td:not(:first-child),.vertical-text{background:#eaffea!important;background:var(--payslip-background-color,#eaffea)!important}.main-table tbody tr.white-row td:first-child,.main-table tbody tr.white-row td:not(:first-child),.vertical-text.kiji-border-left{background:#fff!important}.shikyuu-border-top td,.shikyuu-border-top th{border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.shikyuu-border-bottom td,.shikyuu-border-bottom th{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important}.shikyuu-border-left{border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important}.shikyuu-border-right{border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important}.koujo-border-top td,.koujo-border-top th{border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.koujo-border-bottom td,.koujo-border-bottom th{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important}.koujo-border-left{border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important}.koujo-border-right{border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important}.kintai-border-top td,.kintai-border-top th{border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.kintai-border-bottom td,.kintai-border-bottom th{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important}.kintai-border-left{border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important}.kintai-border-right{border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important}.kiji-border-top td,.kiji-border-top th{border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.kiji-border-bottom td,.kiji-border-bottom th{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important}.kiji-border-left{border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important}.kiji-border-right{border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important}.shikyuu-special-border{border:1px solid #4caf50!important;border:1px solid var(--payslip-border-color,#4caf50)!important}.shikyuu-special-border-top{border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.shikyuu-special-border-bottom{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important}.shikyuu-special-border-left{border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important}.shikyuu-special-border-right{border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important}.koujo-special-border-top{border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.koujo-special-border-bottom{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important}.koujo-special-border-left{border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important}.koujo-special-border-right{border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important}.kiji-special-border-top{border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.kiji-special-border-bottom{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important}.kiji-special-border-left{border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important}.kiji-special-border-right{border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important}.memo-border-top{border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.memo-border-bottom{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important}.memo-border-left{border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important}.memo-border-right{border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important}.all-white-row td,.company-name,.main-table tr.all-white-row td,.main-table tr.all-white-row td.company-name,.main-table tr.all-white-row td.company-name.no-border,.main-table tr.all-white-row.memo-row-middle .memo-cell,.main-table tr.all-white-row.memo-row-middle td,.main-table tr.all-white-row.memo-row-middle td.memo-cell,.main-table tr.all-white-row.memo-row-middle td.memo-cell:not(.vertical-text),.main-table tr:nth-child(n+32) td{background:#fff!important}.main-table tbody tr.all-white-row td,.main-table tbody tr.all-white-row td.company-name,.main-table tbody tr.all-white-row td.company-name.no-border,.main-table tbody tr.all-white-row td.company-name.no-border[colspan="10"],.main-table tbody tr.all-white-row.memo-row-middle td,.main-table tbody tr.all-white-row.memo-row-middle td.memo-cell,.main-table tbody tr.memo-row-first td,.main-table tbody tr.memo-row-first td.memo-cell,.main-table tbody tr.memo-row-last td,.main-table tbody tr.memo-row-last td.memo-cell,.main-table tbody tr.memo-row-middle td,.main-table tbody tr.memo-row-middle td.memo-cell{background:#fff!important;background-color:#fff!important}.main-table tr td.memo,.main-table tr td.memo-border-bottom,.main-table tr td.memo-border-left,.main-table tr td.memo-border-right,.main-table tr td.memo-border-top{background:#fff!important}.company-name{font-size:16px!important}.company-name,.title{font-weight:700!important;text-align:center!important}.title{font-size:18px!important}.sub-title{font-size:14px!important;font-weight:700!important;text-align:center!important}.main-table td.company-name,.main-table th.company-name{font-size:16px!important;font-weight:700!important;text-align:center!important}.main-table td .title,.main-table th .title{font-size:18px!important;font-weight:700!important;text-align:center!important}.main-table td .sub-title,.main-table th .sub-title{font-size:14px!important;font-weight:700!important;text-align:center!important}.main-table .all-white-row td:first-child{background:#fff!important}.remove-border{border-bottom-style:none!important;border-bottom-width:0!important}.main-table tbody tr:nth-child(n+4):nth-child(-n+12) td,.remove-bottom-border td{border-bottom:none!important}.main-table td:first-child,.main-table th:first-child{max-width:20px;min-width:8px;width:15px}.main-table{box-sizing:border-box;margin:0 auto;width:auto}.header-table,.main-table{font-size:7px}.header-table td,.main-table td,.main-table th{font-size:7px;height:16px;max-height:20px;max-width:60px;min-height:14px;min-width:35px;padding:1px;width:45px}.vertical-text{font-size:12px;padding:0 1px}.main-table tr:nth-child(n+3) td,.main-table tr:nth-child(n+3) th{overflow:hidden;padding:2px 4px!important}.main-table tr:nth-child(n+3) td,.main-table tr:nth-child(n+3) td.vertical-text,.main-table tr:nth-child(n+3) th{height:18px!important;line-height:18px!important;max-height:18px!important;min-height:18px!important;vertical-align:middle!important}.main-table tr:nth-child(n+3) td.vertical-text{padding:0 2px!important}@media print{.header-table,.main-table{font-size:18px!important}.header-table td,.main-table td,.main-table th{font-size:18px!important;height:32px!important;max-height:36px!important;max-width:200px!important;min-height:28px!important;min-width:80px!important;padding:6px 10px!important}.title{font-size:32px!important}.sub-title{font-size:26px!important}.company-name{font-size:28px!important;font-weight:700!important;text-align:center!important}body{margin:0!important;padding:0!important}}@media (max-width:768px){.controls-section,.office-emp-preview{box-sizing:border-box;margin:0;padding:5px;width:100%}.input-row{align-items:center;flex-direction:column;gap:15px}.input-group{align-items:stretch!important;flex-direction:column!important;gap:15px!important;width:100%!important}.date-field,.emp-code-field,.emp-name-field,.site-field{justify-content:center;max-width:100%!important;min-width:100%!important;width:100%!important}.office-emp-preview .emp-name-field,.office-emp-preview .site-field{justify-content:center!important;max-width:100%!important;min-width:100%!important;width:100%!important}.date-select,.emp-code-input,.emp-name-input,.office-emp-preview .emp-name-input,.office-emp-preview .site-select,.site-select{font-size:16px!important;height:45px!important;max-width:none!important;width:100%!important}.office-emp-preview .emp-name-input,.office-emp-preview .site-select{background-color:#fff!important;border:1px solid #ccc!important;border-radius:4px!important;box-sizing:border-box!important;color:#2c3e50!important;padding:12px!important}.button-container{align-items:stretch!important;display:flex!important;flex-direction:column!important;gap:10px!important;justify-content:center!important;width:100%!important}.button-container .settings-icon,.settings-icon{display:none!important}.clear-button,.generate-button,.pdf-button{align-items:center!important;box-sizing:border-box!important;display:flex!important;flex:1 1 100%!important;font-size:16px!important;height:45px!important;justify-content:center!important;margin:0!important;max-width:100%!important;min-width:100%!important;padding:12px 16px!important;text-align:center!important;width:100%!important}.office-emp-preview,.table-area{box-sizing:border-box!important;margin:0!important;padding:2px!important;width:100%!important}.table-area{min-height:auto!important;overflow-x:auto!important;overflow-y:visible!important}.controls-section{margin-bottom:20px!important}.data-type-toggle{flex-direction:column!important;gap:10px!important;width:100%!important}.toggle-btn{font-size:16px!important;height:45px!important;width:100%!important}.settings-section .setting-item select{margin-right:0!important;max-width:150px!important;min-width:150px!important;width:150px!important}.office-emp-preview .payslip-container{box-sizing:border-box!important;margin:0!important;min-height:auto!important;padding:2px!important}.office-emp-preview .payslip-container,.office-emp-preview .table-area{max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important;width:100%!important}.office-emp-preview .table-area{padding:0!important}.payslip-scale-wrapper{--scale:0.85;overflow-x:auto!important}.office-emp-preview .header-table,.office-emp-preview .main-table{font-size:7px}.office-emp-preview .header-table td,.office-emp-preview .main-table td,.office-emp-preview .main-table th{padding:4px 6px!important}.office-emp-preview .header-table td:first-child,.office-emp-preview .main-table td:first-child,.office-emp-preview .main-table th:first-child{max-width:40px!important;min-width:28px!important;width:32px!important}.office-emp-preview .header-table td:not(:first-child),.office-emp-preview .main-table td:not(:first-child),.office-emp-preview .main-table th:not(:first-child){max-width:130px!important;min-width:90px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;width:100px!important}.office-emp-preview .payslip-container .header-table td,.office-emp-preview .payslip-container .main-table td,.office-emp-preview .payslip-container .main-table th{font-size:7px}.office-emp-preview .payslip-container{-webkit-overflow-scrolling:touch!important;scroll-behavior:smooth!important}.office-emp-preview .payslip-container::-webkit-scrollbar{height:8px!important}.office-emp-preview .payslip-container::-webkit-scrollbar-track{background:#f1f1f1!important;border-radius:4px!important}.office-emp-preview .payslip-container::-webkit-scrollbar-thumb{background:#888!important;border-radius:4px!important}.office-emp-preview .payslip-container::-webkit-scrollbar-thumb:hover{background:#555!important}}@media (max-width:480px){.office-emp-preview{box-sizing:border-box;margin:0;padding:2px;width:100%}.table-area{box-sizing:border-box!important;margin:0!important;min-height:auto!important;overflow-x:auto!important;overflow-y:visible!important;padding:1px!important;width:100%!important}.payslip-scale-wrapper{--scale:0.75}.controls-section{margin-bottom:15px!important}.office-emp-preview .payslip-container{box-sizing:border-box!important;margin:0!important;max-width:100%!important;min-height:auto!important;overflow-x:auto!important;overflow-y:visible!important;padding:1px!important;width:100%!important}.office-emp-preview .emp-name-field,.office-emp-preview .site-field{justify-content:center!important;max-width:100%!important;min-width:100%!important;width:100%!important}.office-emp-preview .emp-name-input,.office-emp-preview .site-select{background-color:#fff!important;border:1px solid #ccc!important;border-radius:4px!important;box-sizing:border-box!important;color:#2c3e50!important;font-size:16px!important;height:45px!important;max-width:none!important;padding:12px!important;width:100%!important}.office-emp-preview .table-area{max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important;padding:0!important;width:100%!important}.office-emp-preview .header-table,.office-emp-preview .main-table{font-size:7px}.office-emp-preview .header-table td,.office-emp-preview .main-table td,.office-emp-preview .main-table th{padding:3px 5px!important}.office-emp-preview .header-table td:first-child,.office-emp-preview .main-table td:first-child,.office-emp-preview .main-table th:first-child{max-width:36px!important;min-width:24px!important;width:28px!important}.office-emp-preview .header-table td:not(:first-child),.office-emp-preview .main-table td:not(:first-child),.office-emp-preview .main-table th:not(:first-child){max-width:120px!important;min-width:80px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;width:88px!important}.office-emp-preview .payslip-container .header-table td,.office-emp-preview .payslip-container .main-table td,.office-emp-preview .payslip-container .main-table th{font-size:6px}.office-emp-preview .payslip-container{-webkit-overflow-scrolling:touch!important;scroll-behavior:smooth!important}.office-emp-preview .payslip-container::-webkit-scrollbar{height:6px!important}.office-emp-preview .payslip-container::-webkit-scrollbar-track{background:#f1f1f1!important;border-radius:3px!important}.office-emp-preview .payslip-container::-webkit-scrollbar-thumb{background:#888!important;border-radius:3px!important}.office-emp-preview .payslip-container::-webkit-scrollbar-thumb:hover{background:#555!important}.button-container{align-items:stretch!important;flex-direction:column!important;gap:10px!important}.button-container,.clear-button,.generate-button,.pdf-button{display:flex!important;justify-content:center!important;width:100%!important}.clear-button,.generate-button,.pdf-button{align-items:center!important;box-sizing:border-box!important;flex:1 1 100%!important;font-size:16px!important;height:45px!important;margin:0!important;max-width:100%!important;min-width:100%!important;padding:12px 16px!important;text-align:center!important}.office-emp-preview .header-table td:first-child,.office-emp-preview .main-table td:first-child,.office-emp-preview .main-table th:first-child{max-width:30px!important;min-width:20px!important;width:25px!important}}.payment-section-header{align-items:center;border-bottom:1px solid #d1d5db;display:flex;justify-content:space-between;margin-bottom:5px;padding:4px 0}.payment-section-header h5{color:#374151;font-size:13px;font-weight:600;margin:0}.payment-stats{color:#6b7280;display:flex;font-size:12px;gap:16px}.payment-stat{align-items:center;display:flex;gap:4px}.payment-stat-value{color:#374151;font-weight:600}.payment-controls{border-bottom:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin:8px 0;padding:8px 0}.payment-control-radio{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:12px;gap:6px;padding:4px 6px;-webkit-user-select:none;user-select:none}.payment-control-radio:hover{background-color:#f3f4f6}.payment-control-radio input[type=radio]{accent-color:#2c3e50;cursor:pointer;height:14px;margin:0;width:14px}.payment-control-radio span{font-size:12px;font-weight:500}.payment-items-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin:16px 0;max-height:280px;overflow-y:auto;padding:8px}.payment-items-grid::-webkit-scrollbar{width:6px}.payment-items-grid::-webkit-scrollbar-track{background:#f3f4f6}.payment-items-grid::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.payment-items-grid::-webkit-scrollbar-thumb:hover{background:#9ca3af}.payment-item-checkbox{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:12px;gap:6px;padding:4px 6px;-webkit-user-select:none;user-select:none}.payment-item-checkbox:hover{background-color:#f3f4f6}.payment-item-checkbox input[type=checkbox]{accent-color:#2c3e50;cursor:pointer;height:12px;margin:0;width:12px}.payment-item-checkbox span{flex:1 1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hidden-cell{background-color:initial!important;border-color:#0000!important;color:#0000!important}.field-selection-tabs{border-bottom:1px solid #d1d5db;display:flex;gap:2px;margin-bottom:16px}.field-tab-btn{background-color:#f3f4f6;border:1px solid #d1d5db;border-bottom:none;border-radius:4px 4px 0 0;color:#374151;cursor:pointer;font-size:12px;padding:8px 16px;transition:all .2s ease}.field-tab-btn:hover{background-color:#e5e7eb}.field-tab-btn.active{background-color:#fff;border-color:#2c3e50;border-bottom:1px solid #fff;color:#2c3e50;font-weight:500;margin-bottom:-1px}.attendance-placeholder{align-items:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;height:200px;justify-content:center}.attendance-placeholder p{color:#6b7280;font-size:14px;margin:0}.main-table tr:not(.shikyuu-border-bottom):not(.koujo-border-bottom):not(.kintai-border-bottom):not(.kiji-border-bottom):not(.memo-border-bottom){border-bottom:#0000!important}.main-table tr.green-row,.main-table tr.white-row{border-bottom:1px solid var(--payslip-border-color)!important}.pdf-generation-office{display:block!important;margin:0 auto!important;max-width:1080px!important;overflow:hidden!important;transform:none!important;transform-origin:top left!important;width:1080px!important}.pdf-generation .office-emp-preview,.pdf-generation .payslip-container,.pdf-generation .payslip-scale-inner,.pdf-generation .payslip-scale-wrapper,.pdf-generation .table-area{--scale:1!important;margin:0!important;max-width:none!important;min-height:auto!important;overflow-x:visible!important;overflow-y:visible!important;padding:0!important;transform:scale(1)!important;width:100%!important}.pdf-generation{--scale:1!important}.pdf-generation .payslip-scale-inner{transform:scale(1)!important;transform-origin:top left!important}.pdf-compact .header-table td,.pdf-compact .main-table td,.pdf-compact .main-table th{height:14px!important;max-height:16px!important;max-width:48px!important;min-height:14px!important;min-width:26px!important;padding:1px 2px!important;width:36px!important}.pdf-compact .header-table td:first-child,.pdf-compact .main-table td:first-child,.pdf-compact .main-table th:first-child{max-width:20px!important;min-width:10px!important;width:16px!important}.pdf-generation-office .payslip-container,.pdf-generation-office .table-area{margin:0!important;min-height:auto!important;padding:0!important}.pdf-generation-office .main-table{margin-bottom:6px!important}.pdf-generation-office .header-table td,.pdf-generation-office .main-table td,.pdf-generation-office .main-table th{font-size:8px!important;height:14px!important;line-height:1.2!important;max-height:14px!important;min-height:14px!important;padding:1px 2px!important}.pdf-generation-office .main-table tr:first-child td,.pdf-generation-office .main-table tr:first-child th,.pdf-generation-office .main-table tr:nth-child(2) td,.pdf-generation-office .main-table tr:nth-child(2) th{font-size:9px!important;height:20px!important;max-height:20px!important;min-height:20px!important}.pdf-generation-office .vertical-text{background:#eaffea!important;background:var(--payslip-background-color,#eaffea)!important;border:1px solid #4caf50!important;border:1px solid var(--payslip-border-color,#4caf50)!important;box-sizing:border-box!important;color:#333!important;font-family:Yu Gothic,Meiryo,sans-serif!important;font-size:8px!important;font-weight:700!important;line-height:1.2!important;overflow:hidden!important;padding:1px 2px!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;text-align:center!important;text-orientation:upright!important;text-overflow:ellipsis!important;vertical-align:middle!important;white-space:nowrap!important;writing-mode:vertical-rl!important}.pdf-generation-office .vertical-text,.pdf-generation-office .vertical-text[colspan],.pdf-generation-office .vertical-text[rowspan]{height:auto!important;max-height:none!important;min-height:auto!important}.pdf-generation-office .vertical-text[rowspan]{border:1px solid #4caf50!important;border:1px solid var(--payslip-border-color,#4caf50)!important;border-block:none!important;border-inline:none!important}.pdf-generation-office .vertical-text.shikyuu-border-left[rowspan]{border:1px solid #4caf50!important;border:1px solid var(--payslip-border-color,#4caf50)!important;border-collapse:initial!important;border-spacing:0!important}.pdf-generation-office .main-table tr td:first-child+td,.pdf-generation-office .main-table tr th:first-child+th{border-left:none!important}.pdf-generation-office .main-table .vertical-text[rowspan]{border:#4caf50!important;border-collapse:initial!important;border-spacing:0!important;border-style:solid!important;border-width:1px!important;border-block:none!important;border-image:none!important;border-inline:none!important;border:1px solid var(--payslip-border-color,#4caf50)!important;box-shadow:none!important;outline:none!important}.pdf-generation-office .main-table tr{border-bottom:none!important;border-top:none!important}.pdf-generation-office .main-table tr td:not(.vertical-text){border-left:none!important;border-right:none!important}.pdf-generation-office .main-table tr.green-row,.pdf-generation-office .main-table tr.white-row{border-bottom:none!important;border-top:none!important}.pdf-generation-office .main-table td.vertical-text[rowspan]{background-clip:padding-box!important;border-collapse:initial!important;border-spacing:0!important;position:relative!important;z-index:10!important}.pdf-generation-office .title{font-size:11px!important}.pdf-generation-office .sub-title{font-size:9px!important}.pdf-generation-office .company-name{font-size:11px!important}.pdf-generation-office .header-table td,.pdf-generation-office .main-table td,.pdf-generation-office .main-table th{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;border-style:solid!important;border-width:1px!important;image-rendering:-webkit-optimize-contrast!important;image-rendering:crisp-edges!important;text-rendering:optimizeLegibility!important}.pdf-generation-office .kiji-border-bottom,.pdf-generation-office .kiji-border-top,.pdf-generation-office .kintai-border-bottom,.pdf-generation-office .kintai-border-top,.pdf-generation-office .koujo-border-bottom,.pdf-generation-office .koujo-border-top,.pdf-generation-office .memo-border-bottom,.pdf-generation-office .memo-border-left,.pdf-generation-office .memo-border-right,.pdf-generation-office .memo-border-top,.pdf-generation-office .shikyuu-border-bottom,.pdf-generation-office .shikyuu-border-left,.pdf-generation-office .shikyuu-border-right,.pdf-generation-office .shikyuu-border-top{border-style:solid!important;border-width:1px!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.pdf-generation-office .main-table td,.pdf-generation-office .main-table th{border-style:solid!important;border-width:1px!important}.pdf-generation-office .memo-row-first .memo,.pdf-generation-office .memo-row-last .memo,.pdf-generation-office .memo-row-middle .memo,.pdf-generation-office .memo-square-bottom,.pdf-generation-office .memo-square-middle,.pdf-generation-office .memo-square-top{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;border:1px solid #4caf50!important;border-color:var(--payslip-border-color,#4caf50)!important;image-rendering:-webkit-optimize-contrast!important;image-rendering:crisp-edges!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;text-rendering:optimizeLegibility!important}.pdf-generation-office .memo-cell{background:#eaffea!important;background:var(--payslip-background-color,#eaffea)!important;border-left:1px solid #4caf50!important;border-left:1px solid var(--payslip-border-color,#4caf50)!important;border-right:1px solid #4caf50!important;border-right:1px solid var(--payslip-border-color,#4caf50)!important;box-sizing:border-box!important;font-size:10px!important;margin:0!important;min-height:20px!important;padding:4px 6px!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;text-align:left!important;vertical-align:top!important}.pdf-generation-office .memo-top-border{border-bottom:none!important;border-top:1px solid #4caf50!important;border-top:1px solid var(--payslip-border-color,#4caf50)!important}.pdf-generation-office .memo-bottom-border{border-bottom:1px solid #4caf50!important;border-bottom:1px solid var(--payslip-border-color,#4caf50)!important;border-top:none!important;min-height:20px!important}.pdf-generation-office .main-table{border-collapse:collapse!important;border-spacing:0!important}.pdf-generation-office .memo-row-first td,.pdf-generation-office .memo-row-last td,.pdf-generation-office .memo-row-middle td{border-collapse:collapse!important;border-spacing:0!important;margin:0!important;padding:0!important;vertical-align:top!important}.pdf-generation-office .memo-row-first .vertical-text,.pdf-generation-office .memo-row-last .vertical-text,.pdf-generation-office .memo-row-middle .vertical-text{border:1px solid #4caf50!important;border:1px solid var(--payslip-border-color,#4caf50)!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.main-table tr.all-white-row td.company-name,.main-table tr.memo-row-first td.memo-cell,.main-table tr.memo-row-last td.memo-cell,.main-table tr.memo-row-middle td.memo-cell,table.main-table tbody tr.all-white-row td.company-name.no-border[colspan="10"],table.main-table tbody tr.all-white-row.memo-row-last td.memo-cell.memo-bottom-border,table.main-table tbody tr.all-white-row.memo-row-middle td.memo-cell,table.main-table tbody tr.memo-row-first td.memo-cell.memo-top-border{background:#fff!important;background-color:#fff!important}.main-table tr.all-white-row td.company-name,.main-table tr.all-white-row.memo-row-middle td.no-border,.main-table tr.memo-row-first td.memo-cell,.main-table tr.memo-row-last td.memo-cell,.main-table tr.memo-row-middle td.memo-cell,.main-table tr.memo-row-middle td.no-border,.main-table tr.memo-row-middle td[id=d_v13],.main-table tr.memo-row-middle td[id=d_v14],.main-table tr.memo-row-middle td[id=p_v32]{--payslip-background-color:#fff!important;background:#fff!important;background-color:#fff!important}table.main-table tbody tr.all-white-row.memo-row-middle td.no-border[id=d_v13],table.main-table tbody tr.all-white-row.memo-row-middle td.no-border[id=d_v14],table.main-table tbody tr.all-white-row.memo-row-middle td.no-border[id=p_v32]{background:#fff!important;background-color:#fff!important}.emp-code-input{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;color:#2c3e50;font-size:14px;height:40px;outline:none;padding:12px;transition:border-color .2s ease;width:100%}.emp-code-input:focus{border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033}.emp-code-input.disabled-input{background-color:#f5f5f5;color:#666;cursor:not-allowed}.suggestion-content{align-items:center;display:flex;gap:8px}.emp-code{color:#1976d2;font-weight:600;min-width:60px}.separator{color:#999;font-weight:300}.emp-name{color:#2c3e50;flex:1 1}.construction-settings-modal-overlay{align-items:flex-start!important;animation:fadeIn .3s ease-out!important;background-color:#00000080!important;bottom:0!important;display:flex!important;justify-content:center!important;left:0!important;padding-top:20px!important;position:fixed!important;right:0!important;top:80px!important;z-index:1002!important}@media (max-height:800px){.construction-settings-modal-overlay{height:calc(100vh - 60px)!important;top:60px!important}}@media (max-height:600px){.construction-settings-modal-overlay{height:calc(100vh - 40px)!important;top:40px!important}.construction-settings-modal{height:90vh!important}}@media (max-width:768px){.construction-settings-modal-overlay{padding-left:20px!important;padding-right:20px!important}}.construction-settings-modal{animation:slideIn .3s ease-out;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 25px 50px #0006;display:flex;flex-direction:column;height:85vh;max-width:900px;overflow:hidden;width:95%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.construction-settings-modal-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;min-height:60px;padding:16px 24px}.construction-settings-modal-header h3{align-items:center;color:#1e293b;display:flex;font-size:20px;font-weight:600;gap:8px;margin:0}.construction-settings-modal-header h3:before{content:"⚙️"}.construction-settings-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:20px;height:36px;justify-content:center;padding:8px;transition:all .2s;width:36px}.construction-settings-modal-close:hover{background-color:#f3f4f6;color:#374151}.construction-settings-modal-close:active{background-color:#e5e7eb}.construction-settings-modal-content{display:flex;flex:1 1;overflow:hidden}.construction-settings-sidebar{background-color:#f8fafc;border-right:1px solid #e5e7eb;overflow-y:auto;padding:0;width:220px}.construction-settings-nav-item{background:none;border:none;border-left:3px solid #0000;color:#6b7280;cursor:pointer;display:block;font-size:14px;padding:16px 20px;text-align:left;transition:all .2s;width:100%}.construction-settings-nav-item:hover{background-color:#f1f5f9;color:#374151}.construction-settings-nav-item.active{background-color:#eff6ff;border-left-color:#1d4ed8;color:#1d4ed8;font-weight:500}.construction-settings-main-content{flex:1 1;overflow-y:auto;padding:20px}.construction-settings-section{margin-bottom:24px}.construction-settings-section:last-child{margin-bottom:0}.construction-settings-section h4{align-items:center;color:#1e293b;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 16px}.construction-settings-section h4:before{content:"📋"}.construction-setting-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:row;gap:16px;justify-content:space-between;margin-bottom:20px;padding:12px 0}.construction-setting-item:last-child{border-bottom:none;margin-bottom:0}.construction-setting-item label{color:#374151;flex:0 0 200px;font-size:14px;font-weight:500;white-space:nowrap}.construction-setting-item input[type=checkbox]{accent-color:#1d4ed8;cursor:pointer;height:18px;width:18px}.construction-setting-note{color:#6b7280;font-size:12px;font-style:italic;margin-left:8px}.construction-setting-item input[type=color],.construction-setting-item select{background-color:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;flex-shrink:0;font-size:13px;max-width:220px;min-width:180px;padding:6px 10px;width:200px}.construction-settings-section .construction-setting-item select{margin-left:auto;margin-right:100px;max-width:250px;min-width:250px;width:250px}.construction-setting-item input[type=color]:focus,.construction-setting-item select:focus{border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed81a;outline:none}.construction-font-preview{background-color:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;margin-top:16px;padding:16px}.construction-font-preview label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.construction-font-preview-text{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;display:flex;font-size:16px;justify-content:center;line-height:1.5;min-height:60px;padding:12px;text-align:center}.construction-settings-modal-footer{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;min-height:60px;padding:16px 24px}.construction-settings-cancel-btn,.construction-settings-reset-btn,.construction-settings-save-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;min-width:100px;padding:12px 24px;transition:all .2s}.construction-settings-save-btn{background-color:#1d4ed8;color:#fff}.construction-settings-save-btn:hover{background-color:#1e40af}.construction-settings-cancel-btn{background-color:#6b7280;color:#fff}.construction-settings-cancel-btn:hover{background-color:#4b5563}.construction-settings-reset-btn{background-color:#dc2626;color:#fff}.construction-settings-reset-btn:hover{background-color:#b91c1c}.construction-field-selection-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px;padding:16px}.construction-field-selection-tabs{border-bottom:1px solid #d1d5db;display:flex;gap:2px;margin-bottom:16px}.construction-field-tab-btn{background-color:#f3f4f6;border:1px solid #d1d5db;border-bottom:none;border-radius:4px 4px 0 0;color:#374151;cursor:pointer;font-size:12px;padding:8px 16px;transition:all .2s ease}.construction-field-tab-btn:hover{background-color:#e5e7eb}.construction-field-tab-btn.active{background-color:#fff;border-color:#2c3e50;border-bottom:1px solid #fff;color:#2c3e50;font-weight:500;margin-bottom:-1px}.construction-payment-section-header{align-items:center;border-bottom:1px solid #d1d5db;display:flex;justify-content:space-between;margin-bottom:5px;padding:4px 0}.construction-payment-section-header h5{color:#374151;font-size:13px;font-weight:600;margin:0}.construction-payment-stats{color:#6b7280;display:flex;font-size:12px;gap:16px}.construction-payment-stat{align-items:center;display:flex;gap:4px}.construction-payment-stat-value{color:#374151;font-weight:600}.construction-payment-controls{border-bottom:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin:8px 0;padding:8px 0}.construction-payment-control-radio{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:12px;gap:6px;padding:4px 6px;-webkit-user-select:none;user-select:none}.construction-payment-control-radio:hover{background-color:#f3f4f6}.construction-payment-control-radio input[type=radio]{accent-color:#2c3e50;cursor:pointer;height:14px;margin:0;width:14px}.construction-payment-control-radio span{font-size:12px;font-weight:500}.construction-payment-items-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin:16px 0;max-height:280px;overflow-y:auto;padding:8px}.construction-payment-items-grid::-webkit-scrollbar{width:6px}.construction-payment-items-grid::-webkit-scrollbar-track{background:#f3f4f6}.construction-payment-items-grid::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.construction-payment-items-grid::-webkit-scrollbar-thumb:hover{background:#9ca3af}.construction-payment-item-checkbox{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:12px;gap:6px;padding:4px 6px;-webkit-user-select:none;user-select:none}.construction-payment-item-checkbox:hover{background-color:#f3f4f6}.construction-payment-item-checkbox input[type=checkbox]{accent-color:#2c3e50;cursor:pointer;height:12px;margin:0;width:12px}.construction-payment-item-checkbox span{flex:1 1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.office-emp-preview .button-container .settings-icon{flex-shrink:0;height:32px;margin-left:15px;position:relative;right:auto;top:auto;width:32px}@media (max-width:768px){.settings-icon{display:none!important}.office-emp-preview{padding:15px!important}.table-area{margin-top:15px!important}.controls-section{margin-bottom:20px!important}.construction-settings-modal{max-height:95vh;width:95%}.construction-settings-modal-content{flex-direction:row;height:auto}.construction-settings-sidebar{border-bottom:none;border-right:1px solid #e5e7eb;width:200px}.construction-settings-nav-item{font-size:14px;padding:12px 20px}.construction-setting-item{align-items:center;flex-direction:row;gap:16px}.construction-setting-item label{flex:0 0 120px;font-size:14px;width:auto}.construction-setting-item input[type=color],.construction-setting-item select{margin-left:auto;margin-right:100px;max-width:150px;width:150px}.construction-field-selection-tabs{gap:2px}.construction-field-tab-btn{font-size:12px;padding:8px 16px}.construction-payment-section-header{align-items:center;flex-direction:row;gap:0}.construction-payment-stats{gap:16px}.construction-payment-controls{flex-direction:row;gap:12px}.construction-payment-items-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));max-height:280px}}@media (max-width:480px){.construction-setting-item select{margin-right:0!important;max-width:150px!important;min-width:150px!important;width:150px!important}.office-emp-preview{padding:10px!important}.table-area{margin-top:10px!important}.controls-section{margin-bottom:15px!important}}.pdf-compact-scale{transform:scale(.9)!important;transform-origin:top left!important}.construction-table-area{background-color:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;display:block;overflow-x:auto;padding:10px;width:100%}.payslip-scale-wrapper{--scale:1;overflow-x:auto;overflow-y:visible;width:100%}.payslip-scale-inner{transform:scale(var(--scale));transform-origin:top left;width:calc(100%/var(--scale))}.construction-payslip-container{background:#fff;box-sizing:border-box;color:#333;display:block;overflow-x:auto;overflow-y:visible;padding:10px;width:100%}.construction-main-table,.construction-payslip-container{font-family:Yu Gothic,Hiragino Sans,Noto Sans JP,Source Han Sans JP,MS Gothic,Meiryo,sans-serif;font-family:var(--payslip-font-family,"Yu Gothic","Hiragino Sans","Noto Sans JP","Source Han Sans JP","MS Gothic","Meiryo",sans-serif);font-size:10px;font-size:var(--payslip-font-size,10px)}.construction-main-table{border-collapse:collapse;margin:0 auto 20px;min-width:100%;table-layout:fixed;width:auto}.construction-main-table td,.construction-main-table th{background-color:#eaffea;background-color:var(--payslip-background-color,#eaffea);border:1px solid #4caf50;border:1px solid var(--payslip-border-color,#4caf50);box-sizing:border-box;font-family:Yu Gothic,Hiragino Sans,Noto Sans JP,Source Han Sans JP,MS Gothic,Meiryo,sans-serif;font-family:var(--payslip-font-family,"Yu Gothic","Hiragino Sans","Noto Sans JP","Source Han Sans JP","MS Gothic","Meiryo",sans-serif);font-size:11px;font-size:var(--payslip-font-size,11px);font-weight:700;height:18px;max-height:22px;max-width:45px;min-height:16px;min-width:25px;overflow:hidden;padding:2px 4px;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:35px}.construction-main-table td:first-child,.construction-main-table th:first-child{max-width:20px;min-width:8px;width:15px}.construction-main-table td:not(:first-child),.construction-main-table th:not(:first-child){max-width:60px;min-width:40px;width:50px}.construction-main-table tr:first-child td,.construction-main-table tr:first-child th,.construction-main-table tr:nth-child(2) td,.construction-main-table tr:nth-child(2) th{height:26px!important;max-height:26px!important;min-height:26px!important}.construction-main-table tr:first-child .construction-border-rect{border-bottom:none!important;border-top:2px solid #4caf50;border-top:2px solid var(--payslip-border-color,#4caf50)}.construction-main-table tr:nth-child(2) .construction-border-rect{border-bottom:2px solid #4caf50;border-bottom:2px solid var(--payslip-border-color,#4caf50);border-top:none!important}.construction-main-table tr:first-child .construction-border-rect:first-child,.construction-main-table tr:nth-child(2) .construction-border-rect:first-child{border-left:2px solid #4caf50;border-left:2px solid var(--payslip-border-color,#4caf50)}.construction-main-table tr:first-child .construction-border-rect:nth-of-type(3),.construction-main-table tr:nth-child(2) .construction-border-rect:last-child,.construction-main-table tr:nth-child(2) .construction-border-rect:nth-of-type(3){border-right:2px solid #4caf50;border-right:2px solid var(--payslip-border-color,#4caf50)}.construction-main-table thead tr:first-child td.construction-border-rect,.construction-main-table tr:first-child .construction-border-rect,.construction-main-table tr:first-child td,.construction-main-table tr:first-child td.construction-border-rect,.construction-main-table tr:first-child td.construction-white-bg,.construction-main-table tr:nth-child(2) .construction-border-rect,.construction-main-table tr:nth-child(2) td,.construction-main-table tr:nth-child(2) td.construction-border-rect,.construction-main-table tr:nth-child(2) td.construction-white-bg{background-color:#eaffea!important;background-color:var(--payslip-background-color,#eaffea)!important}.construction-main-table thead tr:first-child td.construction-border-rect{font-weight:700!important}.construction-main-table tbody tr.white-row td:first-child,.construction-main-table tbody tr.white-row td:not(:first-child){background:#fff!important}.construction-title{background-color:#fff;font-size:15px;font-size:calc(var(--payslip-font-size, 10px)*1.5);font-weight:700}.construction-sub-title,.construction-title{font-family:Yu Gothic,Hiragino Sans,Noto Sans JP,Source Han Sans JP,MS Gothic,Meiryo,sans-serif;font-family:var(--payslip-font-family,"Yu Gothic","Hiragino Sans","Noto Sans JP","Source Han Sans JP","MS Gothic","Meiryo",sans-serif);line-height:1;margin:0;padding:0;text-align:center!important}.construction-sub-title{font-size:12.5px;font-size:calc(var(--payslip-font-size, 10px)*1.25)}.construction-border-rect{border:1px solid #4caf50;border:1px solid var(--payslip-border-color,#4caf50)}.construction-no-border{border:none}.construction-white-bg{background-color:#fff}.construction-thick-border-left{border-left:2px solid #4caf50!important;border-left:2px solid var(--payslip-border-color,#4caf50)!important}.construction-thick-border-right{border-right:2px solid #4caf50!important;border-right:2px solid var(--payslip-border-color,#4caf50)!important}.construction-thick-border-top{border-top:2px solid #4caf50!important;border-top:2px solid var(--payslip-border-color,#4caf50)!important}.construction-thick-border-bottom{border-bottom:2px solid #4caf50!important;border-bottom:2px solid var(--payslip-border-color,#4caf50)!important}.construction-border-left{border-left:1px solid #4caf50;border-left:1px solid var(--payslip-border-color,#4caf50)}.construction-border-right{border-right:1px solid #4caf50;border-right:1px solid var(--payslip-border-color,#4caf50)}.construction-border-top{border-top:1px solid #4caf50;border-top:1px solid var(--payslip-border-color,#4caf50)}.construction-border-bottom{border-bottom:1px solid #4caf50;border-bottom:1px solid var(--payslip-border-color,#4caf50)}.construction-kintai-section .construction-border-top{border-top:1px dashed #4caf50;border-top:1px dashed var(--payslip-border-color,#4caf50)}.construction-kintai-section .construction-border-bottom{border-bottom:2px solid #4caf50;border-bottom:2px solid var(--payslip-border-color,#4caf50)}.construction-shikyu-section .construction-border-top{border-top:1px dashed #4caf50;border-top:1px dashed var(--payslip-border-color,#4caf50)}.construction-shikyu-section .construction-border-bottom{border-bottom:1px dashed #4caf50;border-bottom:1px dashed var(--payslip-border-color,#4caf50)}.construction-koujo-section .construction-border-top{border-top:1px dashed #4caf50;border-top:1px dashed var(--payslip-border-color,#4caf50)}.construction-koujo-section .construction-border-bottom{border-bottom:1px dashed #4caf50;border-bottom:1px dashed var(--payslip-border-color,#4caf50)}.construction-sonota-section .construction-border-top{border-top:1px dashed #4caf50;border-top:1px dashed var(--payslip-border-color,#4caf50)}.construction-sonota-section .construction-border-bottom{border-bottom:1px dashed #4caf50;border-bottom:1px dashed var(--payslip-border-color,#4caf50)}.construction-main-table tbody tr.construction-kintai-section:not(.green-row) td,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td,.construction-main-table tbody tr.construction-sonota-section:not(.green-row) td{box-sizing:border-box!important;display:table-cell!important;height:18px!important;line-height:18px!important;max-height:18px!important;min-height:18px!important;padding:2px 4px!important;vertical-align:middle!important}.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td.construction-border-top.construction-border-bottom,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td.construction-thick-border-bottom.construction-no-top-border{box-sizing:border-box!important;height:18px!important;line-height:18px!important;max-height:18px!important;min-height:18px!important;padding:2px 4px!important}@media (max-width:768px){.construction-main-table tbody tr.construction-kintai-section:not(.green-row) td,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td.construction-border-top.construction-border-bottom,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td.construction-thick-border-bottom.construction-no-top-border,.construction-main-table tbody tr.construction-sonota-section:not(.green-row) td{box-sizing:border-box!important;height:24px!important;line-height:24px!important;max-height:24px!important;min-height:24px!important;padding:5px 6px!important}}@media (max-width:480px){.construction-main-table tbody tr.construction-kintai-section:not(.green-row) td,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td.construction-border-top.construction-border-bottom,.construction-main-table tbody tr.construction-shikyu-section:not(.green-row) td.construction-thick-border-bottom.construction-no-top-border,.construction-main-table tbody tr.construction-sonota-section:not(.green-row) td{box-sizing:border-box!important;height:22px!important;line-height:22px!important;max-height:22px!important;min-height:22px!important;padding:4px 5px!important}}.construction-furikomi-section .construction-border-top{border-top:1px dashed #4caf50;border-top:1px dashed var(--payslip-border-color,#4caf50)}.construction-furikomi-section .construction-border-bottom{border-bottom:1px dashed #4caf50;border-bottom:1px dashed var(--payslip-border-color,#4caf50)}.construction-roumuhi-section .construction-border-top{border-top:1px dashed #4caf50;border-top:1px dashed var(--payslip-border-color,#4caf50)}.construction-roumuhi-section .construction-border-bottom{border-bottom:1px dashed #4caf50;border-bottom:1px dashed var(--payslip-border-color,#4caf50)}.construction-roumuhi-section .construction-thick-border-bottom,.construction-roumuhi-section .construction-thick-border-left,.construction-roumuhi-section .construction-thick-border-right,.construction-roumuhi-section .construction-thick-border-top,.construction-roumuhi-section td{border-color:orange!important;border-color:var(--payslip-roumuhi-border-color,orange)!important}.construction-roumuhi-table-container{margin:0 auto;overflow-x:auto;width:100%}.construction-roumuhi-table{border-collapse:collapse;font-size:10px;font-size:var(--payslip-font-size,10px);margin:0 auto;min-width:100%;table-layout:fixed;width:auto}.construction-roumuhi-table,.construction-roumuhi-table td{font-family:Yu Gothic,Hiragino Sans,Noto Sans JP,Source Han Sans JP,MS Gothic,Meiryo,sans-serif;font-family:var(--payslip-font-family,"Yu Gothic","Hiragino Sans","Noto Sans JP","Source Han Sans JP","MS Gothic","Meiryo",sans-serif)}.construction-roumuhi-table td{background-color:#ffd4a3;background-color:var(--payslip-roumuhi-background-color,#ffd4a3);border:1px solid orange;border:1px solid var(--payslip-roumuhi-border-color,orange);box-sizing:border-box;font-size:11px;font-size:var(--payslip-font-size,11px);font-weight:700;height:18px;max-height:22px;max-width:45px;min-height:16px;min-width:25px;overflow:hidden;padding:2px 4px;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:35px}.construction-roumuhi-table td:first-child{max-width:20px;min-width:8px;width:15px}.construction-roumuhi-table td:not(:first-child){max-width:60px;min-width:40px;width:50px}.construction-roumuhi-table .construction-thick-border-bottom,.construction-roumuhi-table .construction-thick-border-left,.construction-roumuhi-table .construction-thick-border-right,.construction-roumuhi-table .construction-thick-border-top{border-color:orange!important;border-color:var(--payslip-roumuhi-border-color,orange)!important;border-width:2px!important}.construction-roumuhi-table .construction-border-bottom,.construction-roumuhi-table .construction-border-left,.construction-roumuhi-table .construction-border-right,.construction-roumuhi-table .construction-border-top{border-color:orange!important;border-color:var(--payslip-roumuhi-border-color,orange)!important;border-width:1px!important}.construction-roumuhi-table tbody tr.green-row td{background-color:#ffd4a3!important;background-color:var(--payslip-roumuhi-background-color,#ffd4a3)!important}.construction-roumuhi-table tbody tr:not(.green-row) td{background-color:#fff!important}.construction-roumuhi-table tbody tr td.construction-vertical-text{background-color:#ffd4a3!important;background-color:var(--payslip-roumuhi-background-color,#ffd4a3)!important}.construction-roumuhi-table tbody tr:first-child td{border-top:2px solid orange!important;border-top:2px solid var(--payslip-roumuhi-border-color,orange)!important}.construction-roumuhi-table tbody tr:last-child td{border-bottom:2px solid orange!important;border-bottom:2px solid var(--payslip-roumuhi-border-color,orange)!important}.construction-roumuhi-table tbody tr td:first-child{border-left:2px solid orange!important;border-left:2px solid var(--payslip-roumuhi-border-color,orange)!important}.construction-roumuhi-table tbody tr td:last-child{border-right:2px solid orange!important;border-right:2px solid var(--payslip-roumuhi-border-color,orange)!important}.construction-roumuhi-table tbody tr:nth-child(5) td{background-color:#ffd4a3!important;background-color:var(--payslip-roumuhi-background-color,#ffd4a3)!important}.construction-no-name-section td{border-color:#4caf50!important;border-color:var(--payslip-border-color,#4caf50)!important}.construction-no-name-section .construction-thick-border-bottom,.construction-no-name-section .construction-thick-border-left,.construction-no-name-section .construction-thick-border-right,.construction-no-name-section .construction-thick-border-top{border-color:#4caf50!important;border-color:var(--payslip-border-color,#4caf50)!important;border-width:2px!important}.construction-vertical-text{background-color:#fff;font-family:Yu Gothic,Hiragino Sans,Noto Sans JP,Source Han Sans JP,MS Gothic,Meiryo,sans-serif;font-family:var(--payslip-font-family,"Yu Gothic","Hiragino Sans","Noto Sans JP","Source Han Sans JP","MS Gothic","Meiryo",sans-serif);font-size:10px;font-size:var(--payslip-font-size,10px);font-weight:700;letter-spacing:.1em;text-align:center;text-orientation:upright;vertical-align:middle;white-space:nowrap;writing-mode:vertical-rl}.construction-title-cell{background:#fff!important;border:none!important;padding:0 5px!important;position:relative;text-align:center!important}.construction-title-cell:after{border-bottom:3px double #4caf50;border-bottom:3px double var(--payslip-border-color,#4caf50);bottom:4px;content:"";display:block;height:0;left:16px;pointer-events:none;position:absolute;right:16px}.construction-sub-title-cell{background:#fff!important;border:none!important;text-align:center!important}.construction-furikomi-section,.construction-kintai-section,.construction-koujo-section,.construction-no-name-section,.construction-roumuhi-section,.construction-shikyu-section,.construction-sonota-section{background-color:#fff}.construction-no-name-section-value{text-align:left!important}.construction-memo-spacer-row td.construction-memo-spacer-cell{background-color:#fff!important;border:none!important;height:8px!important;line-height:0!important;min-height:8px!important;padding:0!important}.construction-company-memo-table tr.construction-memo-section+tr.construction-memo-section td{border-top-width:0!important}.construction-memo-between-table{width:100%}.construction-memo-between-table tr.construction-memo-between-section td{box-sizing:border-box;min-height:2.5em;vertical-align:top}.construction-memo-between-table .construction-memo-label-cell{width:18%}.construction-memo-between-table .construction-memo-value-cell{width:82%}.construction-memo-between-table tr.construction-memo-section+tr.construction-memo-section td{border-top-width:0!important}.construction-separator-row,.construction-separator-row td{background-color:#fff!important}.construction-separator-row td{border:none!important}.construction-honsha-row{background-color:#fff}.construction-honsha-row td{background-color:#fff;border:none!important;text-align:right!important}.construction-no-bottom-border{border-bottom:none!important}.construction-no-top-border{border-top:none!important}.construction-no-right-border{border-right:none!important}.construction-main-table .construction-furikomi-section td,.construction-main-table .construction-kintai-section td,.construction-main-table tr td,.construction-main-table tr.construction-furikomi-section td,.construction-main-table tr.construction-kintai-section td,.construction-main-table tr:nth-child(-n+27):nth-child(odd) td,.construction-main-table tr:nth-child(-n+33):nth-child(2n) td{background-color:#fff!important}@media (max-width:768px){.construction-table-area{overflow-x:auto;overflow-y:visible;padding:5px}.payslip-scale-wrapper{--scale:1}.construction-payslip-container{max-width:100%!important;min-width:1000px!important;overflow-x:auto;overflow-y:visible;padding:5px}.construction-main-table{max-width:none!important;min-width:1000px!important;width:auto!important}.construction-main-table td,.construction-main-table th{font-size:13px!important;height:auto!important;max-height:none!important;max-width:60px!important;min-height:24px!important;min-width:45px!important;padding:5px 6px!important;width:45px!important}.construction-main-table td:first-child,.construction-main-table th:first-child{max-width:20px!important;min-width:16px!important;width:20px!important}.office-emp-preview .form-fields-row,.office-emp-preview .input-group{flex-direction:column!important;gap:15px!important}.office-emp-preview .form-fields-row{width:100%!important}.office-emp-preview .buttons-row{justify-content:center!important;width:100%!important}.office-emp-preview .date-field,.office-emp-preview .emp-code-field,.office-emp-preview .site-field{max-width:100%!important;min-width:100%!important}.office-emp-preview .date-select,.office-emp-preview .emp-code-input,.office-emp-preview .site-select{font-size:16px!important;height:45px!important}.office-emp-preview .button-container{flex-direction:column!important;gap:10px!important;width:100%!important}.office-emp-preview .clear-button,.office-emp-preview .generate-button,.office-emp-preview .pdf-button{font-size:16px!important;height:45px!important;width:100%!important}.construction-settings-icon,.office-emp-preview .construction-settings-icon{display:none!important}.construction-roumuhi-table-container{max-width:100%!important;min-width:1000px!important;overflow-x:auto;overflow-y:visible}.construction-roumuhi-table{max-width:none!important;min-width:1000px!important;width:auto!important}.construction-roumuhi-table td{font-size:11px!important;height:auto!important;max-height:none!important;max-width:70px!important;min-height:22px!important;min-width:50px!important;padding:4px 6px!important;width:50px!important}.construction-roumuhi-table td:first-child{max-width:40px!important;min-width:28px!important;width:32px!important}}@media (max-width:480px){.construction-table-area{overflow-x:auto;overflow-y:visible;padding:3px}.payslip-scale-wrapper{--scale:1}.construction-payslip-container{max-width:100%!important;min-width:800px!important;overflow-x:auto;overflow-y:visible;padding:3px}.construction-main-table{max-width:none!important;min-width:800px!important;width:auto!important}.construction-main-table td,.construction-main-table th{font-size:11px!important;height:auto!important;max-height:none!important;max-width:55px!important;min-height:22px!important;min-width:40px!important;padding:4px 5px!important;width:40px!important}.construction-main-table td:first-child,.construction-main-table th:first-child{max-width:32px!important;min-width:24px!important;width:28px!important}.construction-roumuhi-table-container{max-width:100%!important;min-width:800px!important;overflow-x:auto;overflow-y:visible}.construction-roumuhi-table{max-width:none!important;min-width:800px!important;width:auto!important}.construction-roumuhi-table td{font-size:10px!important;height:auto!important;max-height:none!important;max-width:65px!important;min-height:20px!important;min-width:45px!important;padding:3px 5px!important;width:45px!important}.construction-roumuhi-table td:first-child{max-width:32px!important;min-width:24px!important;width:28px!important}}.construction-main-table tbody tr.construction-furikomi-section.green-row td,.construction-main-table tbody tr.construction-kintai-section.green-row td,.construction-main-table tbody tr.construction-koujo-section.green-row td,.construction-main-table tbody tr.construction-no-name-section.green-row td,.construction-main-table tbody tr.construction-roumuhi-section.green-row td,.construction-main-table tbody tr.construction-shikyu-section.green-row td,.construction-main-table tbody tr.construction-sonota-section.green-row td,.construction-main-table tbody tr.green-row td,.construction-main-table tbody tr.green-row td.construction-vertical-text{background:#eaffea!important;background:var(--payslip-background-color,#eaffea)!important}.construction-main-table tbody tr.construction-roumuhi-section td.construction-vertical-text,.construction-main-table tbody tr.construction-roumuhi-section.green-row td{background:#ffd4a3!important;background:var(--payslip-roumuhi-background-color,#ffd4a3)!important}.construction-main-table tbody tr.construction-no-name-section.green-row td{background:#fff!important}.pdf-generation{display:block!important;margin:0 auto!important;max-width:1080px!important;overflow:hidden!important;transform:none!important;transform-origin:top left!important;width:1080px!important}.pdf-generation .construction-main-table td,.pdf-generation .construction-main-table th,.pdf-generation .construction-roumuhi-table td,.pdf-generation .construction-roumuhi-table th{box-sizing:border-box!important;display:table-cell!important;font-size:10px!important;height:19px!important;line-height:13px!important;max-height:19px!important;min-height:19px!important;padding:3px 4px!important;vertical-align:middle!important}.pdf-generation .construction-furikomi-section,.pdf-generation .construction-koujo-section,.pdf-generation .construction-roumuhi-section{display:table-row!important;height:19px!important;max-height:19px!important;min-height:19px!important}.pdf-generation .construction-furikomi-section td,.pdf-generation .construction-furikomi-section th,.pdf-generation .construction-koujo-section td,.pdf-generation .construction-koujo-section th,.pdf-generation .construction-roumuhi-section td,.pdf-generation .construction-roumuhi-section th{box-sizing:border-box!important;display:table-cell!important;height:19px!important;line-height:13px!important;max-height:19px!important;min-height:19px!important;padding:3px 4px!important;vertical-align:middle!important}.pdf-compact .construction-main-table td,.pdf-compact .construction-main-table th{height:14px!important;max-height:16px!important;max-width:48px!important;min-height:14px!important;min-width:26px!important;padding:1px 2px!important;width:36px!important}.pdf-compact .construction-main-table td:first-child,.pdf-compact .construction-main-table th:first-child{max-width:20px!important;min-width:10px!important;width:16px!important}.pdf-generation .construction-main-table{margin-bottom:5px!important}.pdf-generation .construction-roumuhi-table-container{margin-top:5px!important}.pdf-generation .construction-main-table tr:first-child td,.pdf-generation .construction-main-table tr:first-child th,.pdf-generation .construction-main-table tr:nth-child(2) td,.pdf-generation .construction-main-table tr:nth-child(2) th{font-size:11px!important;height:26px!important;max-height:26px!important;min-height:26px!important}.pdf-generation .construction-vertical-text{font-size:9px!important;height:17px!important;max-height:17px!important;min-height:17px!important}.pdf-generation .construction-separator-row td{height:11px!important;max-height:11px!important;min-height:11px!important;padding:0!important}.construction-settings-icon{align-items:center;background-color:#fff;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;height:40px;justify-content:center;margin-left:15px;transition:all .3s ease;width:40px}.construction-settings-icon:hover{background-color:#f8f9fa;box-shadow:0 4px 12px #0003;color:#495057;transform:scale(1.05)}.construction-settings-icon:active{transform:scale(.95)}.office-emp-preview .form-fields-row{align-items:center;display:flex;flex-wrap:wrap;gap:100px}.office-emp-preview .buttons-row{align-items:center;display:flex;gap:15px;justify-content:flex-end;width:100%}.office-emp-preview .input-group{display:flex;flex-direction:column;gap:15px;width:100%}.office-emp-preview .date-field{flex-shrink:0;max-width:120px;min-height:70px;min-width:120px}.office-emp-preview .emp-code-field{flex-shrink:0;max-width:180px;min-height:50px;min-width:180px}.office-emp-preview .site-field{flex-shrink:0;max-width:140px;min-height:50px;min-width:140px}.office-emp-preview .date-select,.office-emp-preview .emp-code-input,.office-emp-preview .site-select,.office-emp-preview input[type=text],.office-emp-preview select{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:12px!important;height:40px;max-width:100%;padding:12px;width:100%}.office-emp-preview .date-field .date-select,.office-emp-preview .date-field select,.office-emp-preview .emp-code-field .emp-code-input,.office-emp-preview .emp-code-field input,.office-emp-preview .site-field .site-select,.office-emp-preview .site-field select{font-size:12px!important}.office-emp-preview .date-field label,.office-emp-preview .emp-code-field label,.office-emp-preview .site-field label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:4px;position:relative;text-align:center;z-index:1}.office-emp-preview .date-field,.office-emp-preview .emp-code-field,.office-emp-preview .site-field{display:flex;flex-direction:column;position:relative}.pdf-generation .construction-payslip-container,.pdf-generation .construction-table-area,.pdf-generation .payslip-scale-wrapper{max-width:none!important;min-width:auto!important;overflow-x:visible!important;overflow-y:visible!important;padding:10px!important;width:auto!important}.pdf-generation .payslip-scale-wrapper{--scale:1!important}.pdf-generation .construction-main-table,.pdf-generation .construction-roumuhi-table{max-width:none!important;min-width:auto!important;width:auto!important}.pdf-generation .construction-main-table{font-size:11px!important;max-width:1100px!important;min-width:1000px!important;table-layout:auto!important;width:auto!important}.pdf-generation .construction-main-table td,.pdf-generation .construction-main-table th{box-sizing:border-box!important;font-size:11px!important;height:auto!important;max-height:none!important;max-width:60px!important;min-height:auto!important;min-width:40px!important;padding:4px 6px!important;white-space:nowrap!important;width:50px!important}.pdf-generation .construction-main-table td:first-child,.pdf-generation .construction-main-table th:first-child{max-width:20px!important;min-width:8px!important;width:15px!important}.pdf-generation .construction-main-table td:not(:first-child),.pdf-generation .construction-main-table th:not(:first-child){max-width:60px!important;min-width:40px!important;width:50px!important}.pdf-generation .construction-main-table tr:first-child td,.pdf-generation .construction-main-table tr:first-child th,.pdf-generation .construction-main-table tr:nth-child(2) td,.pdf-generation .construction-main-table tr:nth-child(2) th{font-size:12px!important;height:auto!important;max-height:none!important;min-height:auto!important;min-width:60px!important;padding:6px 8px!important}.pdf-generation .construction-roumuhi-table{font-size:11px!important;max-width:1100px!important;min-width:1000px!important;table-layout:auto!important;width:auto!important}.pdf-generation .construction-roumuhi-table td{box-sizing:border-box!important;display:table-cell!important;font-size:11px!important;height:19px!important;line-height:13px!important;max-height:19px!important;max-width:60px!important;min-height:19px!important;min-width:40px!important;padding:4px 6px!important;vertical-align:middle!important;white-space:nowrap!important;width:50px!important}.pdf-generation .construction-roumuhi-table td:first-child{max-width:20px!important;min-width:8px!important;width:15px!important}.pdf-generation .construction-roumuhi-table td:not(:first-child){max-width:60px!important;min-width:40px!important;width:50px!important}.pdf-generation .construction-main-table,.pdf-generation .construction-roumuhi-table{margin-bottom:3px!important}.pdf-generation .construction-vertical-text{font-size:7px!important;overflow:hidden!important;text-orientation:mixed!important;text-overflow:ellipsis!important;transform:rotate(0deg)!important;white-space:nowrap!important;writing-mode:vertical-rl!important}.construction-table-area .construction-payslip-container .construction-main-table td:first-child,.construction-table-area .construction-payslip-container .construction-main-table th:first-child{max-width:15px!important;min-width:15px!important;width:15px!important}.construction-table-area .construction-payslip-container .construction-main-table td:not(:first-child),.construction-table-area .construction-payslip-container .construction-main-table th:not(:first-child){max-width:50px!important;min-width:50px!important;width:50px!important}.construction-table-area .construction-payslip-container .construction-roumuhi-table td:first-child{max-width:15px!important;min-width:15px!important;width:15px!important}.construction-table-area .construction-payslip-container .construction-roumuhi-table td:not(:first-child){max-width:50px!important;min-width:50px!important;width:50px!important}.pdf-generation .construction-table-area .construction-payslip-container .construction-main-table td:first-child,.pdf-generation .construction-table-area .construction-payslip-container .construction-main-table th:first-child{max-width:15px!important;min-width:15px!important;width:15px!important}.pdf-generation .construction-table-area .construction-payslip-container .construction-main-table td:not(:first-child),.pdf-generation .construction-table-area .construction-payslip-container .construction-main-table th:not(:first-child){max-width:50px!important;min-width:50px!important;width:50px!important}.pdf-generation .construction-table-area .construction-payslip-container .construction-roumuhi-table td:first-child{max-width:15px!important;min-width:15px!important;width:15px!important}.pdf-generation .construction-table-area .construction-payslip-container .construction-roumuhi-table td:not(:first-child){max-width:50px!important;min-width:50px!important;width:50px!important}.pdf-generation .construction-main-table td.construction-white-bg.construction-no-border{font-size:18px!important;font-weight:700!important}.autocomplete-container{position:relative;width:100%}.emp-name-input{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;color:#2c3e50;font-size:14px;height:40px;outline:none;padding:12px;transition:border-color .2s ease;width:100%}.emp-name-input:focus{border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033}.emp-name-input.disabled-input{background-color:#f5f5f5;color:#666;cursor:not-allowed}.suggestions-dropdown{background:#fff;border:1px solid #ddd;border-radius:0 0 4px 4px;border-top:none;box-shadow:0 4px 6px #0000001a;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.suggestion-item{border-bottom:1px solid #f0f0f0;cursor:pointer;font-size:14px;padding:10px 12px;transition:background-color .2s ease}.suggestion-item:last-child{border-bottom:none}.suggestion-item.selected,.suggestion-item:hover{background-color:#f0f8ff;color:#1976d2}.suggestion-item.loading{color:#666;cursor:default;font-style:italic}.suggestion-item.loading:hover{background-color:initial}.suggestion-item.no-results{color:#999;cursor:default;font-style:italic}.suggestion-item.no-results:hover{background-color:initial}.suggestions-dropdown::-webkit-scrollbar{width:6px}.suggestions-dropdown::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.suggestions-dropdown::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.suggestions-dropdown::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.login-container{align-items:center;background:#fff;display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{animation:fadeInUp .6s ease-out;background:#fff;border-radius:12px;box-shadow:0 12px 32px #0000001a,0 8px 24px #22c55e2e;max-width:400px;padding:40px;width:100%}.login-header{margin-bottom:30px;text-align:center}.login-title{color:#000;font-size:25px;font-weight:700;margin:0 0 6px}.login-subtitle{color:#22c55e;font-size:16px;font-weight:600;margin:0}.login-header h2{color:#333;font-size:24px;font-weight:600;margin-bottom:10px}.login-header p{color:#666;font-size:14px;margin:0}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#333;font-size:14px;font-weight:500}.form-group input{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:8px;font-size:16px;padding:12px 16px;transition:border-color .3s ease}.form-group input:focus{background:#fff;border-color:#667eea;outline:none}.form-group input:disabled{background:#f1f3f4;color:#666;cursor:not-allowed}.login-button{background:#6b7280;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:14px 24px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.login-button:hover:not(:disabled){background:#4b5563;box-shadow:0 8px 22px #22c55e59;transform:translateY(-2px)}.login-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.error-message{background:#fee;border:1px solid #feb2b2;border-radius:8px;color:#c53030;font-size:14px;padding:12px 16px;text-align:center}.login-footer{border-top:1px solid #ecf0f1;margin-top:20px;padding-top:14px;text-align:center}.copyright{color:#95a5a6;font-size:11px;margin:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.login-card{margin:20px;padding:30px 20px}.login-header h2{font-size:20px}}.employee-layout{background:#f8f9fa;display:flex;min-height:100vh}.employee-layout.mobile-layout{flex-direction:column}.main-container{display:flex;flex:1 1;flex-direction:column;min-height:100vh}.content-area,.mobile-content-area{background:#f8f9fa;flex:1 1;padding:20px}.employee-view-container{background:#f5f7fa;min-height:100vh}.employee-header{background:#fff;border-bottom:1px solid #ecf0f1;box-shadow:0 2px 4px #0000001a;color:#2c3e50;padding:20px 30px;position:sticky;top:0;z-index:1001}.header-content{align-items:center;display:flex;justify-content:space-between}.employee-info h2{color:#2c3e50;font-size:24px;font-weight:700;margin:0 0 8px}.employee-info p{color:#6c757d;font-size:16px;margin:4px 0}.employee-code{background:#f8f9fa;border:1px solid #e9ecef;border-radius:20px;color:#6c757d;display:inline-block;font-family:Courier New,monospace;font-size:14px;padding:4px 12px}.logout-button{background:#e74c3c;border:none;border-radius:6px;box-shadow:0 2px 4px #e74c3c4d;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease}.logout-button:hover{background:#c0392b;box-shadow:0 4px 8px #e74c3c66;transform:translateY(-1px)}.main-content{margin:0 auto;max-width:1200px;padding:30px 20px}.tab-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden}.tab-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:25px 30px}.tab-header h3{color:#333;font-size:20px;font-weight:600;margin:0 0 8px}.tab-header p{color:#666;font-size:14px;margin:0}.tab-content{padding:30px}.loading-container{align-items:center;background:#f5f7fa;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e9ecef;border-radius:50%;border-top-color:#667eea;height:40px;margin-bottom:20px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-container{align-items:center;background:#f5f7fa;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px;text-align:center}.error-container h2{color:#dc3545;margin-bottom:16px}.error-container p{color:#666;margin-bottom:24px;max-width:400px}@media (max-width:768px){.header-content{flex-direction:column;gap:20px;text-align:center}.employee-info h2{font-size:20px}.main-content{padding:20px 15px}.tab-content,.tab-header{padding:20px}.employee-header{padding:15px 20px}.content-area,.mobile-content-area{padding:15px}}.employee-sidebar{background:linear-gradient(180deg,#2c3e50,#34495e);box-shadow:2px 0 10px #0000001a;color:#fff;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:all .3s ease;width:280px;z-index:1000}.employee-sidebar.collapsed{width:70px}.employee-sidebar.mobile{box-shadow:0 2px 10px #0000001a;display:block;height:auto;max-height:340px;opacity:1;overflow:visible;position:relative;transition:all .3s ease;width:100%}.employee-sidebar.mobile.collapsed{display:block;margin:0;max-height:100px;min-height:80px;opacity:1;overflow:hidden;padding:0;width:100%}.employee-sidebar.mobile.collapsed .sidebar-footer,.employee-sidebar.mobile.collapsed .sidebar-nav{display:none}.employee-sidebar.mobile.collapsed .sidebar-header{align-items:center;display:flex;justify-content:space-between;padding:15px 20px}.employee-sidebar.mobile.collapsed .sidebar-toggle{margin:0;position:static}.sidebar-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:20px;position:relative}.header-content{flex:1 1;text-align:center}.employee-sidebar.collapsed .header-content{display:none}.employee-sidebar.mobile.collapsed .header-content{display:block;flex:1 1}.employee-sidebar.mobile .header-content{display:block;text-align:left}.sidebar-header h3{color:#ecf0f1;font-size:20px;font-weight:700;margin:0 0 8px}.employee-sidebar.mobile .sidebar-header h3{font-size:18px;margin-bottom:5px}.sidebar-toggle{align-items:center;background:#ffffff1a;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;height:30px;justify-content:center;transition:all .3s ease;width:30px}.sidebar-toggle:hover{background:#fff3;transform:scale(1.05)}.sidebar-nav{flex:1 1;padding:20px 0}.sidebar-nav ul{list-style:none}.sidebar-nav li,.sidebar-nav ul{margin:0;padding:0}.nav-item{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:15px;padding:15px 20px;text-align:left;transition:all .3s ease;width:100%}.nav-item:hover{background:#ffffff1a}.nav-item.active{background:#fff3;border-left:4px solid #3498db}.nav-icon{font-size:20px;min-width:24px;text-align:center}.nav-label{font-weight:500;transition:opacity .3s ease}.employee-sidebar.collapsed .nav-label{opacity:0;overflow:hidden;width:0}.employee-sidebar.mobile .nav-label{opacity:1;width:auto}.sidebar-footer{border-top:1px solid #ffffff1a;padding:20px;text-align:center}.sidebar-footer p{color:#bdc3c7;font-size:12px;font-weight:400;margin:0}.employee-sidebar.collapsed .sidebar-footer p{height:0;opacity:0;overflow:hidden}.employee-sidebar.mobile .sidebar-footer p{height:auto;opacity:1}.hidden{height:0;opacity:0;overflow:hidden;pointer-events:none;width:0}@media (max-width:768px){.employee-sidebar.mobile{max-height:300px}.employee-sidebar.mobile.collapsed{max-height:90px;min-height:70px}.sidebar-header{padding:15px}.nav-item{font-size:15px;padding:12px 15px}.nav-icon{font-size:18px}}.employee-settings{margin:0 auto;max-width:800px;padding:30px}.settings-header{border-bottom:2px solid #ecf0f1;margin-bottom:40px;padding-bottom:20px;text-align:center}.settings-header h2{color:#2c3e50;font-size:28px;font-weight:700;margin:0 0 10px}.settings-header p{color:#7f8c8d;font-size:16px;margin:0}.settings-content{display:flex;flex-direction:column;gap:30px}.settings-section{background:#fff;border:1px solid #ecf0f1;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:25px}.settings-section h3{align-items:center;color:#2c3e50;display:flex;font-size:20px;font-weight:600;gap:10px;margin:0 0 20px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-item{display:flex;flex-direction:column;gap:8px}.info-item label{color:#7f8c8d;font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.info-item span{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;font-size:16px;font-weight:600;padding:10px}.security-info{display:flex;flex-direction:column;gap:15px}.security-info p{color:#7f8c8d;font-size:14px;line-height:1.5;margin:0}.change-password-btn{align-self:flex-start;background:#374151;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:background .2s ease,transform .1s ease}.change-password-btn:hover{background:#1f2937}.pwd-modal-overlay{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;position:fixed;z-index:1200}.pwd-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0003;max-width:520px;overflow:hidden;width:100%}.pwd-modal-header{align-items:center;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:16px 20px}.pwd-modal-header h3{color:#2c3e50;font-size:18px;font-weight:700;margin:0}.pwd-modal-close{background:#0000;border:none;color:#6b7280;cursor:pointer;font-size:18px}.pwd-modal-body{padding:20px}.info-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:16px}.readonly-pill{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;color:#374151;display:inline-block;font-size:13px;font-weight:600;padding:8px 12px}.pwd-form .form-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.form-error{background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b;margin-bottom:12px;padding:10px 12px}.form-error,.pwd-form label{font-size:13px;font-weight:600}.pwd-form label{color:#6b7280}.pwd-form input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 12px}.pwd-form input.input-error{background:#fef2f2;border-color:#ef4444}.field-error{color:#b91c1c;font-size:12px}.pwd-form input:focus{border-color:#6b7280;box-shadow:0 0 0 2px #6b728026;outline:none}.pwd-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.btn-secondary{background:#e5e7eb;color:#374151}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 14px}.btn-primary{background:#22c55e;color:#fff}@media (max-width:480px){.info-row{grid-template-columns:1fr}}.system-info{display:flex;flex-direction:column;gap:10px}.system-info p{color:#7f8c8d;font-size:14px;margin:0;padding:8px 0}@media (max-width:768px){.employee-settings{padding:20px}.settings-header h2{font-size:24px}.info-grid{grid-template-columns:1fr}.settings-section{padding:20px}}
/*# sourceMappingURL=main.a23aeee9.css.map*/