.permission-editor{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.permission-editor-header{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.permission-editor-header h3{margin:0 0 8px;color:#147886;font-size:1.25rem;font-weight:600}.permission-hint{margin:0;color:#6b7280;font-size:.9rem}.permission-modules{display:flex;flex-direction:column;gap:12px}.permission-module-group{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;background:#f9fafb}.expand-icon{color:#6b7280;font-size:.9rem;transition:transform .2s}.module-name{font-weight:600;color:#1f2937;font-size:1rem}.module-header-right{display:flex;align-items:center}.permission-module-content{padding:12px;background:#fff;display:flex;flex-direction:column;gap:16px}.permission-item{border:1px solid #e5e7eb;border-radius:6px;padding:12px;background:#f9fafb}.permission-item-header{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.permission-item-label{font-weight:500;color:#374151;margin-left:8px}.permission-actions{display:flex;flex-wrap:wrap;gap:12px;padding-left:24px}.checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.9rem;color:#4b5563}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#147886}.checkbox-label:hover{color:#147886}.action-checkbox{padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:4px;transition:all .2s}.action-checkbox:hover{background:#f0f9ff;border-color:#147886}.action-checkbox input[type=checkbox]:checked+span{color:#147886;font-weight:500}.action-checkbox input[type=checkbox]:checked~span{color:#147886}.module-header-right .checkbox-label{padding:4px 12px;background:#f0f9ff;border:1px solid #147886;border-radius:4px;font-weight:500;color:#147886}.module-header-right .checkbox-label:hover{background:#e0f2fe}.module-header-right .checkbox-label input[type=checkbox]:checked+span{color:#147886}.notification-bell-container{position:relative}.notification-bell-btn{position:relative;background:var(--main-blue-light);color:var(--main-blue);width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-size:1.2em;box-shadow:0 2px 8px #18454c1a}.notification-bell-btn:hover{background:var(--main-blue);color:#fff;transform:scale(1.05);box-shadow:0 4px 12px #18454c33}.bell-icon{display:flex;align-items:center;justify-content:center}.notification-badge{position:absolute;top:-4px;right:-4px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:.7em;font-weight:700;padding:3px 7px;border-radius:12px;min-width:20px;text-align:center;line-height:1.2;box-shadow:0 2px 8px #ef444466;border:2px solid white}.notification-dropdown{position:absolute;top:calc(100% + 12px);right:0;width:380px;max-height:500px;background:#fff;border-radius:16px;box-shadow:0 12px 40px #18454c26;border:1px solid var(--gray-border);z-index:1000;overflow:hidden;display:flex;flex-direction:column}.user-actions .notification-bell-container .notification-dropdown{right:auto;left:0;top:calc(100% + 4px)}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:2px solid var(--gray-border);background:linear-gradient(135deg,var(--main-blue-light) 0%,rgba(255,248,240,.5) 100%)}.notification-title{font-size:1.1em;font-weight:800;color:var(--main-blue);margin:0}.notification-mark-all{background:transparent;border:none;color:var(--main-blue);font-size:.85em;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .3s ease}.notification-mark-all:hover{background:var(--main-blue-light)}.notification-list{max-height:400px;overflow-y:auto;padding:8px 0}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:#f1f1f1}.notification-list::-webkit-scrollbar-thumb{background:var(--main-blue-light);border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:var(--main-blue)}.notification-item{display:flex;gap:12px;padding:14px 20px;cursor:pointer;transition:all .2s ease;border-bottom:1px solid #f3f4f6;position:relative}.notification-item:hover{background:var(--main-blue-light)}.notification-item:last-child{border-bottom:none}.notification-icon{font-size:1.3em;flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--main-blue-light);border-radius:8px}.notification-content{flex:1;min-width:0}.notification-title-text{font-weight:700;color:var(--main-blue);font-size:.95em;margin-bottom:6px;line-height:1.3}.notification-preview{color:#6b7280;font-size:.85em;line-height:1.5;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notification-time{color:#9ca3af;font-size:.75em;font-weight:500}.notification-pinned{position:absolute;top:10px;right:10px;background:var(--main-accent);color:#fff;font-size:.7em;font-weight:700;padding:2px 8px;border-radius:8px}.notification-loading,.notification-empty{padding:40px 20px;text-align:center;color:#6b7280}.notification-empty .empty-icon{font-size:2.5em;margin-bottom:10px}.notification-empty p{font-size:.9em;margin:0}.notification-footer{padding:12px 20px;border-top:2px solid var(--gray-border);background:#f9fafb;text-align:center}.notification-view-all{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:8px 20px;border-radius:20px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 10px #ff812b4d}.notification-view-all:hover{transform:translateY(-1px);box-shadow:0 4px 15px #ff812b66}@media (max-width: 768px){.notification-dropdown{width:320px;right:-10px}}.login-notification-popup{position:fixed;z-index:10000;width:360px;max-width:calc(100vw - 48px);max-height:70vh;background:#fff;border-radius:12px;box-shadow:0 12px 40px #0000002e,0 0 1px #0000001a;display:flex;flex-direction:column;overflow:hidden}.login-notif-header{display:flex;align-items:center;-webkit-user-select:none;user-select:none;cursor:move;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;flex-shrink:0}.login-notif-header:active{cursor:grabbing}.login-notif-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:1rem}.login-notif-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:#fff3;color:#fff;border-radius:6px;cursor:pointer;transition:background .2s}.login-notif-close:hover{background:#ffffff59}.login-notif-body{flex:1;overflow-y:auto;padding:8px 0}.login-notif-loading{padding:32px 16px;text-align:center;color:#6b7280}.login-notif-list{display:flex;flex-direction:column}.login-notif-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;cursor:pointer;transition:background .15s;border-left:3px solid transparent;position:relative}.login-notif-item:hover{background:#f3f4f6}.login-notif-item.read{opacity:.85}.login-notif-icon{width:36px;height:36px;min-width:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem}.login-notif-content{flex:1;min-width:0}.login-notif-title-text{font-weight:500;font-size:.9rem;color:#1f2937;margin-bottom:2px;line-height:1.35}.login-notif-time{font-size:.75rem;color:#6b7280}.login-notif-type{margin-left:2px}.login-notif-unread-dot{position:absolute;top:14px;right:16px;width:8px;height:8px;background:#3b82f6;border-radius:50%;flex-shrink:0}.login-notif-footer{padding:8px 16px 12px;border-top:1px solid #e5e7eb;flex-shrink:0}.login-notif-view-all{width:100%;padding:8px;border:none;background:#f3f4f6;color:#374151;border-radius:8px;font-size:.9rem;cursor:pointer;transition:background .2s}.login-notif-view-all:hover{background:#e5e7eb}.language-switcher{position:relative;display:inline-block}.language-switcher-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:var(--main-blue-light);color:var(--main-blue);border:2px solid var(--main-blue);border-radius:50%;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1.3em}.language-switcher-btn:hover{background:var(--main-blue);transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #18454c4d}.language-flag{font-size:1.4em;line-height:1}.language-label{font-size:.9em}.language-dropdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999;background:transparent}.language-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:12px;box-shadow:0 8px 24px #18454c26;border:1px solid var(--gray-border);z-index:1000;min-width:180px;overflow:hidden;animation:slideDown .2s ease;margin-top:4px}.user-actions .language-switcher .language-dropdown{right:auto;left:0;top:calc(100% + 4px)}.language-option{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:#fff;border:none;text-align:left;cursor:pointer;transition:all .2s ease;font-size:.95em;color:var(--main-blue)}.language-option:hover{background:var(--main-blue-light)}.language-option.active{background:var(--main-blue-light);font-weight:700;color:var(--main-blue)}.language-option .check-mark{margin-left:auto;color:var(--main-accent);font-weight:700}.modal-content{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease;overflow:hidden}.modal-small{width:100%;max-width:500px}.modal-medium{width:100%;max-width:700px}.modal-large{width:100%;max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:2px solid var(--gray-border);background:var(--main-blue)}.modal-title{font-size:1.5em;font-weight:700;color:#fff;margin:0}.modal-close{background:transparent;border:none;color:#fff;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease;width:36px;height:36px}.modal-close svg{width:20px;height:20px}@media (max-width: 768px){.modal-content{max-height:95vh;margin:10px}.modal-header{padding:15px 20px}.modal-title{font-size:1.2em}.modal-body{padding:20px}}.signature-pad-container{background:#fff;border-radius:16px;box-shadow:0 8px 32px #18454c26;padding:0;max-width:800px;width:100%;overflow:hidden;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.signature-pad-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;background:linear-gradient(135deg,#18454c,#2a6b75);color:#fff}.signature-pad-title{display:flex;align-items:center;gap:12px}.signature-icon{font-size:1.5em;color:#fff}.signature-pad-header h3{margin:0;font-size:1.4em;font-weight:700;letter-spacing:.5px}.btn-close{background:#ffffff1a;border:none;color:#fff;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;width:36px;height:36px}.btn-close:hover{background:#fff3;transform:rotate(90deg)}.signature-pad-toolbar{padding:16px 28px;background:#f8f9fa;border-bottom:1px solid var(--gray-border)}.brush-size-control{display:flex;align-items:center;gap:12px}.brush-size-control label{display:flex;align-items:center;gap:8px;color:var(--main-blue);font-weight:600;font-size:.95em}.brush-size-control label svg{width:18px;height:18px}.brush-slider{flex:1;max-width:200px;height:6px;border-radius:3px;background:#e5e7eb;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.brush-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);cursor:pointer;box-shadow:0 2px 6px #18454c4d;transition:all .2s ease}.brush-slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 3px 8px #18454c66}.brush-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);cursor:pointer;border:none;box-shadow:0 2px 6px #18454c4d;transition:all .2s ease}.brush-slider::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 3px 8px #18454c66}.brush-size-value{min-width:40px;text-align:right;color:#6b7280;font-weight:600;font-size:.9em}.signature-pad-content{padding:24px 28px;background:#fff}.signature-canvas-wrapper{position:relative;width:100%;height:300px;border:3px dashed #d1d5db;border-radius:12px;background:#fafafa;overflow:hidden;transition:all .3s ease}.signature-canvas-wrapper:hover{border-color:var(--main-blue);background:#f9fafb}.signature-canvas{width:100%;height:100%;cursor:crosshair;touch-action:none;display:block}.signature-canvas:active{cursor:grabbing}.signature-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;color:#9ca3af;z-index:1}.placeholder-icon{font-size:3em;margin-bottom:12px;opacity:.5;display:block}.signature-placeholder p{margin:0 0 8px;font-size:1.1em;font-weight:600;color:#6b7280}.signature-placeholder span{font-size:.9em;color:#9ca3af}.signature-pad-actions{display:flex;gap:12px;justify-content:flex-end;padding:20px 28px;background:#f8f9fa;border-top:1px solid var(--gray-border)}.btn-clear,.btn-cancel,.btn-save{padding:12px 24px;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;border:none;font-size:.95em;min-width:120px;justify-content:center}.btn-clear{background:#f3f4f6;color:#374151;border:2px solid #e5e7eb}.btn-clear:hover:not(:disabled){background:#e5e7eb;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.btn-clear:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-cancel{background:#fff;color:#6b7280;border:2px solid var(--gray-border)}.btn-cancel:hover{background:#f9fafb;border-color:#9ca3af;color:#374151;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.btn-save{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;box-shadow:0 2px 8px #18454c33}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #18454c4d}.btn-save:active:not(:disabled){transform:translateY(0)}.btn-save:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.signature-pad-container{max-width:100%;border-radius:0}.signature-pad-header{padding:20px}.signature-pad-header h3{font-size:1.2em}.signature-pad-toolbar{padding:12px 20px}.brush-size-control{flex-wrap:wrap}.brush-slider{max-width:100%}.signature-pad-content{padding:16px 20px}.signature-canvas-wrapper{height:250px}.signature-pad-actions{padding:16px 20px;flex-wrap:wrap}.btn-clear,.btn-cancel,.btn-save{flex:1;min-width:100px}}@media (hover: none) and (pointer: coarse){.signature-canvas-wrapper{height:350px}.btn-clear,.btn-cancel,.btn-save{padding:14px 24px;font-size:1em}}.auto-logout-warning-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease}.auto-logout-warning-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%;animation:slideUp .3s ease;overflow:hidden}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.auto-logout-warning-header{background:linear-gradient(135deg,#f59e0b,#d97706);padding:30px;text-align:center;color:#fff}.warning-icon{margin-bottom:15px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.warning-title{font-size:1.5em;font-weight:700;margin:0;color:#fff}.auto-logout-warning-body{padding:30px}.warning-message{font-size:1.1em;color:var(--text-primary);text-align:center;margin:0 0 25px;line-height:1.6}.countdown-progress-container{position:relative;margin:25px 0}.countdown-progress-bar{width:100%;height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden;position:relative}.countdown-progress-fill{height:100%;background:linear-gradient(90deg,#f59e0b,#ef4444);border-radius:6px;transition:width 1s linear;position:relative}.countdown-progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 1.5s infinite}.countdown-number{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2em;font-weight:700;color:var(--text-primary);text-shadow:0 2px 4px rgba(0,0,0,.1);font-variant-numeric:tabular-nums;animation:countdownPulse 1s infinite}@keyframes countdownPulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}}.auto-logout-warning-actions{display:flex;gap:15px;padding:20px 30px 30px;border-top:1px solid var(--border-color)}.btn-stay-logged-in,.btn-logout-now{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border:none;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .2s}.btn-stay-logged-in{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-stay-logged-in:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-logout-now{background:#f3f4f6;color:var(--text-primary);border:2px solid var(--border-color)}.btn-logout-now:hover{background:#e5e7eb;border-color:var(--text-secondary)}@media (max-width: 768px){.auto-logout-warning-modal{width:95%}.auto-logout-warning-header{padding:20px}.warning-title{font-size:1.2em}.auto-logout-warning-body{padding:20px}.countdown-number{font-size:1.5em}.auto-logout-warning-actions{flex-direction:column;padding:15px 20px 20px}.btn-stay-logged-in,.btn-logout-now{width:100%}}.pagination-container{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;padding:20px 0;flex-wrap:wrap}.pagination-controls{display:flex;align-items:center;border:2px solid var(--gray-border, #dee2e6);border-radius:8px;overflow:hidden;background:#fff}.pagination-btn{background:#fff;color:var(--main-blue, #18454c);border:none;padding:8px 12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;font-size:1em}.pagination-btn:hover:not(:disabled){background:var(--main-blue, #18454c);color:#fff}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-btn:not(:last-child){border-right:1px solid var(--gray-border, #dee2e6)}.page-input-wrapper{display:flex;align-items:center;padding:0 8px;border-right:1px solid var(--gray-border, #dee2e6)}.page-input{width:50px;padding:4px 8px;border:1px solid transparent;text-align:center;font-size:1em;font-weight:600;color:var(--main-blue, #18454c);background:#fff;outline:none;transition:border-color .2s ease}.page-input:focus{border-color:var(--main-blue, #18454c);border-radius:4px}.page-input::-webkit-inner-spin-button,.page-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.page-input[type=number]{-moz-appearance:textfield}.page-separator{color:var(--gray-600, #6b7280);font-size:.9em;font-weight:500;padding:0 2px}.page-total{color:var(--gray-600, #6b7280);font-size:.9em;font-weight:500;min-width:30px;text-align:center}.page-current{padding:8px 12px;color:var(--main-blue, #18454c);font-size:1em;font-weight:600;white-space:nowrap;text-align:center;min-width:40px;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--gray-border, #dee2e6)}.pagination-total{color:var(--gray-600, #6b7280);font-size:.9em;font-weight:500;white-space:nowrap}.pagination-total-items{color:var(--gray-600, #6b7280);font-size:.9em;font-weight:500}.pagination-page-size{display:flex;align-items:center;gap:12px}.page-size-label{color:var(--gray-600, #6b7280);font-size:.9em;font-weight:500;white-space:nowrap}.page-size-options{display:flex;gap:8px;align-items:center}.page-size-btn{background:#fff;color:var(--main-blue, #18454c);border:2px solid var(--gray-border, #dee2e6);padding:6px 16px;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:50px;text-align:center}.page-size-btn:hover{background:var(--main-blue, #18454c);color:#fff;border-color:var(--main-blue, #18454c)}.page-size-btn.active{background:#f3f4f6;color:var(--main-blue, #18454c);border-color:var(--main-blue, #18454c);font-weight:700}@media (max-width: 768px){.pagination-container{flex-direction:column;align-items:stretch;gap:16px}.pagination-controls{justify-content:center}.pagination-total,.pagination-total-items{text-align:center}.pagination-page-size{justify-content:center;flex-wrap:wrap}}.login-page{min-height:100vh;background:linear-gradient(135deg,#147886,#20b2aa,#147886,#0d5a65,#147886);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:20px}.bg-animation{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:1}.floating-shape{position:absolute;border-radius:50%;background:linear-gradient(135deg,#ff812b26,#14788626);animation:float 6s ease-in-out infinite}.shape-1{width:300px;height:300px;top:10%;left:10%;animation-delay:0s}.shape-2{width:200px;height:200px;top:60%;right:15%;animation-delay:2s}.shape-3{width:150px;height:150px;bottom:20%;left:20%;animation-delay:4s}.shape-4{width:100px;height:100px;top:30%;right:30%;animation-delay:1s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(5deg)}66%{transform:translateY(10px) rotate(-5deg)}}.login-container{position:relative;z-index:10;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:50px 40px;box-shadow:0 25px 80px #0000004d;border:1px solid rgba(255,255,255,.2);width:100%;max-width:450px;animation:slideUp .8s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:40px}.login-logo{width:80px;height:80px;margin:0 auto 20px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);border-radius:20px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:2em;letter-spacing:2px;box-shadow:0 8px 30px #ff812b66;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 8px 30px #ff812b66}50%{transform:scale(1.05);box-shadow:0 12px 40px #ff812b99}}.login-title{font-size:1.8em;font-weight:800;color:var(--main-blue);margin:0 0 8px;letter-spacing:2px}.login-subtitle{color:#6b7280;font-size:1em;letter-spacing:1px;margin:0 0 10px}.login-version{color:#9ca3af;font-size:.85em;background:var(--main-blue-light);padding:4px 12px;border-radius:12px;display:inline-block;margin-top:8px}.login-form{margin-bottom:30px}.form-group{margin-bottom:25px;position:relative}.form-label{display:flex;align-items:center;gap:8px;color:var(--main-blue);font-weight:600;margin-bottom:8px;font-size:.95em;letter-spacing:.5px}.label-icon{color:var(--main-blue);font-size:1em;width:16px;height:16px}.form-input{width:100%;padding:15px 20px;border:2px solid var(--gray-border);border-radius:12px;font-size:1em;background:var(--input-bg);transition:all .3s ease;color:var(--main-blue);font-family:inherit;box-sizing:border-box}.form-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a;background:#fff}.form-input:disabled{opacity:.6;cursor:not-allowed}.login-type-selector{position:relative;margin-bottom:0}.login-type-select{width:100%;padding:15px 45px 15px 20px;border:2px solid var(--gray-border);border-radius:12px;font-size:.95em;font-weight:600;background:#fff;color:var(--main-blue);cursor:pointer;transition:all .3s ease;font-family:inherit;appearance:none;-webkit-appearance:none;-moz-appearance:none;box-sizing:border-box}.login-type-select:hover:not(:disabled){border-color:var(--main-accent);background:#ff812b0d}.login-type-select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a;background:#fff}.login-type-select:disabled{opacity:.6;cursor:not-allowed}.login-type-select option{padding:12px;background:#fff;color:var(--main-blue)}.login-type-select-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--main-blue);pointer-events:none}.domain-prefix{color:var(--main-accent);font-weight:700;margin-left:8px;font-family:monospace}.login-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;font-size:.9em}.remember-me{display:flex;align-items:center;gap:8px;cursor:pointer}.remember-me input[type=checkbox]{width:18px;height:18px;accent-color:var(--main-accent);cursor:pointer}.forgot-password{color:var(--main-accent);text-decoration:none;font-weight:600;transition:color .3s}.forgot-password:hover{color:var(--main-accent-hover);text-decoration:underline}.login-btn{width:100%;padding:16px;border:none;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;font-size:1.1em;font-weight:700;border-radius:12px;cursor:pointer;transition:all .3s ease;letter-spacing:1px;box-shadow:0 4px 20px #ff812b4d;position:relative;overflow:hidden;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:10px}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px #ff812b66}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.ad-info{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:12px;padding:20px;margin-bottom:25px}.ad-title{color:var(--main-blue);font-weight:700;font-size:.95em;margin:0 0 12px;display:flex;align-items:center;gap:8px}.ad-title svg{width:1em;height:1em}.ad-desc{color:#374151;font-size:.9em;line-height:1.6;margin:0 0 15px}.ad-examples{background:#fff;border-radius:8px;padding:15px;border:1px solid #e0f2fe}.ad-example{display:flex;justify-content:space-between;align-items:center;margin:8px 0;font-size:.85em}.example-label{color:#6b7280;font-weight:600}.example-value{color:var(--main-blue);font-family:monospace;background:#f1f5f9;padding:2px 8px;border-radius:4px}.error-message{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.9em}.system-status{display:flex;justify-content:center;gap:20px;margin-bottom:25px;font-size:.85em}.status-item{display:flex;align-items:center;gap:6px;color:#6b7280}.status-dot{width:8px;height:8px;border-radius:50%}.status-online{background:var(--success-color)}.login-footer{text-align:center;color:#9ca3af;font-size:.85em;line-height:1.6}.footer-links{display:flex;justify-content:center;gap:20px;margin:15px 0;flex-wrap:wrap}.footer-link{color:#6b7280;text-decoration:none;transition:color .3s}.footer-link:hover{color:var(--main-accent)}@media (max-width: 768px){.login-container{margin:20px;padding:40px 30px;max-width:calc(100% - 40px)}.login-title{font-size:1.5em}.form-input{padding:12px 16px}.label-icon{width:14px;height:14px}.login-options{flex-direction:column;gap:15px}.footer-links{flex-direction:column;gap:10px}}@media (max-width: 480px){.login-container{padding:30px 20px}.ad-info{padding:15px}.ad-examples{padding:12px}}.change-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#147886,#0d5d68);padding:2rem}.change-password-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;padding:3rem;width:100%;max-width:500px}.change-password-header{text-align:center;margin-bottom:2rem}.change-password-header h1{color:#147886;margin:1rem 0;font-size:1.75rem}.warning-text{color:#ff6b35;font-weight:500;margin-top:.5rem;padding:.75rem;background:#fff3e0;border-radius:6px;border-left:4px solid #ff6b35}.change-password-form{display:flex;flex-direction:column;gap:1.5rem}.form-group label{display:flex;align-items:center;gap:.5rem;color:#333;font-weight:500;font-size:.95rem}.form-group input{padding:.75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#147886}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.form-hint{color:#666;font-size:.85rem;margin-top:-.25rem}.error-message{padding:.75rem;background:#ffebee;color:#c62828;border-radius:6px;border-left:4px solid #c62828;font-size:.9rem}.form-actions{display:flex;gap:1rem;margin-top:1rem}.btn-submit,.btn-cancel{flex:1;padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s}.btn-submit{background:#147886;color:#fff}.btn-submit:hover:not(:disabled){background:#0d5d68;transform:translateY(-2px);box-shadow:0 4px 12px #1478864d}.btn-submit:disabled{background:#ccc;cursor:not-allowed}.btn-cancel{background:#f5f5f5;color:#666}.btn-cancel:hover:not(:disabled){background:#e0e0e0}@media (max-width: 600px){.change-password-container{padding:2rem 1.5rem}}.main-navbar{position:sticky;top:0;z-index:300;display:flex;align-items:center;justify-content:space-between;background:#fff;box-shadow:0 2px 8px #00000014;min-height:70px;height:auto;padding:15px 50px;border-bottom:1px solid #e2e7ed}.navbar-left{display:flex;align-items:center;gap:20px}.navbar-logo{width:45px;height:45px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:1.2em;letter-spacing:1px;box-shadow:0 4px 16px #ff812b4d}.navbar-title-container{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;padding:0;margin:0}.navbar-title{font-weight:900;color:var(--main-blue);font-size:1.3em;letter-spacing:0;margin:0;padding:0;line-height:1.2;text-align:left;text-indent:0;width:100%;box-sizing:border-box}.navbar-subtitle{color:#6b7280;font-size:.9em;margin:2px 0 0;padding:0;letter-spacing:0;line-height:1.2;text-align:left;text-indent:0;width:100%;box-sizing:border-box;transform:translate(0)}.back-btn{background:var(--main-blue-light);color:var(--main-blue);padding:10px 20px;border:none;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s;margin-left:20px}.back-btn:hover{background:var(--main-blue);color:#fff}.navbar-right{display:flex;align-items:center;gap:15px}.user-name-display{display:flex;align-items:center;gap:6px;flex-direction:column;align-items:flex-start}.language-menu,.notification-menu{position:relative}.bell-icon-menu{font-size:1.2em;flex-shrink:0;color:#f59e0b;display:flex;align-items:center;justify-content:center}.language-submenu-item .check-mark{margin-left:auto;color:var(--main-accent);font-weight:700}.notification-empty-menu p{font-size:.85em;margin:0}.notification-footer-menu{padding:12px 20px;border-top:1px solid var(--gray-border);background:#fff}.notification-view-all-menu{width:100%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease}.notification-view-all-menu:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ff812b4d}.user-menu-item .user-icon-menu{font-size:1.2em;flex-shrink:0;color:var(--main-accent)}.user-menu-admin{width:100%;display:flex;align-items:center;gap:12px;padding:12px 20px;background:transparent;border:none;text-align:left;cursor:pointer;transition:all .2s ease;color:var(--main-blue);font-size:.95em;font-weight:600}.user-menu-admin:hover{background:var(--main-blue-light)}.admin-icon-menu{font-size:1.2em;flex-shrink:0;color:#6b7280;display:flex;align-items:center;justify-content:center}.user-menu-logout{width:100%;background:var(--danger-color);color:#fff;border:none;padding:12px 20px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95em}@media (max-width: 768px){.main-navbar{padding:0 20px}.navbar-title{font-size:1em}.user-menu-dropdown{right:-10px;min-width:260px}.user-name-only{display:none}.user-menu-btn{padding:8px 12px}}.main-footer{background:linear-gradient(135deg,var(--main-blue) 0%,#0f2d32 100%);color:#fff;margin-top:auto;padding:30px 0;border-top:2px solid rgba(255,129,43,.3);width:100%;flex-shrink:0}.footer-container{max-width:1400px;margin:0 auto;padding:0 50px;text-align:center}.footer-copyright{display:flex;flex-direction:column;gap:8px;align-items:center}.footer-copyright p{margin:0;font-size:.9em;color:#ffffffd9}.footer-version{font-size:.85em!important;color:#fff9!important;font-weight:500}@media (max-width: 768px){.footer-container{padding:0 20px}.footer-copyright p{font-size:.85em}.footer-version{font-size:.8em!important}}.dashboard-page{min-height:100vh;background:#fff}.hero-section{max-width:1400px;margin:25px auto;padding:0 50px}.hero-content{background:linear-gradient(135deg,#ffffffe6,#e7effacc);border-radius:20px;padding:35px 40px;box-shadow:0 8px 30px #18454c1a;border:1px solid rgba(231,239,250,.8);text-align:center;position:relative;overflow:hidden}.hero-content:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,129,43,.05) 0%,transparent 70%);animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-title{font-size:1.8em;font-weight:800;color:var(--main-blue);margin:0 0 12px;letter-spacing:1px;position:relative;z-index:2}.hero-subtitle{font-size:1em;color:#6b7280;margin-bottom:25px;letter-spacing:.5px;position:relative;z-index:2}.hero-stats{display:flex;justify-content:center;gap:35px;margin-top:25px;position:relative;z-index:2}.stat-item{text-align:center}.stat-number{font-size:1.8em;font-weight:800;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:6px}.stat-label{color:#6b7280;font-size:1em;font-weight:600}.modules-section{max-width:1400px;margin:40px auto 50px;padding:0 50px}.section-header{text-align:center;margin-bottom:50px}.section-title{font-size:2em;font-weight:800;color:var(--main-blue);margin:0 0 15px;letter-spacing:1.5px}.section-subtitle{color:#6b7280;font-size:1.1em;letter-spacing:.5px}.modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-bottom:40px}.module-card{background:#fff;border-radius:20px;padding:35px 25px;box-shadow:0 8px 30px #18454c14;border:1px solid var(--gray-border);transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden}.module-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--main-blue) 0%,var(--main-accent) 100%);transform:scaleX(0);transition:transform .3s ease}.module-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 50px #18454c26;border-color:var(--main-blue-light)}.module-card:hover:before{transform:scaleX(1)}.module-icon{width:70px;height:70px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:2.2em;margin-bottom:20px;box-shadow:0 4px 20px #0000001a;transition:transform .3s ease}.module-card:hover .module-icon{transform:scale(1.1) rotate(5deg)}.module-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0 0 12px;letter-spacing:1px}.module-desc{color:#6b7280;font-size:1em;line-height:1.6;margin-bottom:20px}.module-features{display:flex;flex-wrap:wrap;gap:8px}.feature-tag{background:var(--main-blue-light);color:var(--main-blue);padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600;letter-spacing:.5px}.quick-actions-section{max-width:1400px;margin:25px auto;padding:0 50px}.quick-actions{background:#fff;border-radius:18px;padding:28px 35px;box-shadow:0 6px 25px #18454c14;border:1px solid var(--gray-border)}.quick-title{font-size:1.2em;font-weight:700;color:var(--main-blue);margin:0 0 20px;text-align:center;letter-spacing:.5px}.quick-buttons{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.quick-btn{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:20px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;font-size:.95em;box-shadow:0 3px 12px #ff812b40}.quick-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ff812b66}.quick-icon{font-size:1.2em}.announcements-section-top{max-width:1400px;margin:25px auto 0;padding:0 50px}.announcements-container{background:linear-gradient(135deg,#fffffff2,#fff8f0f2);border-radius:20px;padding:25px 30px;box-shadow:0 6px 30px #18454c1a;border:2px solid rgba(255,129,43,.2);margin-bottom:30px}.section-header-inline{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.section-title-large{font-size:1.4em;font-weight:800;color:var(--main-blue);margin:0 0 6px;letter-spacing:.5px;display:flex;align-items:center;gap:10px}.title-icon{font-size:1.2em}.section-subtitle-small{color:#6b7280;font-size:.95em;margin:0}.btn-view-all{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:10px 20px;border-radius:18px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9em;box-shadow:0 3px 12px #ff812b40;white-space:nowrap}.btn-view-all:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.dashboard-announcements-list-section{max-width:1400px;margin:0 auto 20px;padding:0 50px}.dashboard-announcements-list-section--compact{margin-bottom:20px}.dashboard-announcements-list-container{border-radius:14px}.dashboard-announcements-list-container--compact{padding:14px 18px}.dashboard-announcements-list-container--compact{background:#fff;padding:14px 18px;box-shadow:0 4px 16px #18454c0f;border:1px solid var(--gray-border)}.section-header-inline--compact{margin-bottom:12px}.section-title-compact{font-size:1.05em;font-weight:700;color:var(--main-blue);margin:0;display:flex;align-items:center;gap:8px}.section-title-compact .title-icon{font-size:1em}.btn-view-all--compact{padding:6px 14px;font-size:.85em;border-radius:12px}.dashboard-announcements-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.dashboard-announcement-grid-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:#fafbfc;border-radius:8px;border-left:3px solid var(--main-accent);cursor:pointer;transition:background .2s ease;min-width:0}.dashboard-announcement-grid-item:hover{background:#f3f4f6}.dashboard-announcement-grid-title{font-size:.9em;font-weight:600;color:var(--main-blue);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-announcement-grid-date{font-size:.75em;color:#9ca3af}@media (max-width: 1200px){.dashboard-announcements-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.dashboard-announcements-grid{grid-template-columns:1fr}}.announcements-carousel{position:relative;overflow:hidden;border-radius:14px;margin:0}.carousel-container{display:flex;width:100%;will-change:transform}.announcement-slide{min-width:100%;width:100%;background:#fff;border-radius:14px;padding:24px 28px;box-shadow:0 3px 15px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;position:relative;border-left:4px solid var(--main-accent);display:flex;flex-direction:column;gap:16px}.announcement-slide:hover{transform:translateY(-2px);box-shadow:0 8px 30px #18454c26;border-left-color:var(--main-blue)}.carousel-nav-btn{display:none}.carousel-indicators{display:flex;justify-content:center;gap:8px;margin-top:20px;position:relative;z-index:10}.carousel-indicator{width:10px;height:10px;border-radius:50%;background:#d1d5db;border:none;cursor:pointer;transition:all .3s ease;padding:0}.carousel-indicator:hover{background:var(--main-blue);transform:scale(1.2)}.carousel-indicator.active{background:var(--main-blue);width:24px;border-radius:5px;box-shadow:0 2px 8px #3b82f666}.announcements-list-horizontal{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.announcement-card-featured{background:#fff;border-radius:14px;padding:18px 20px;box-shadow:0 3px 15px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;position:relative;border-left:3px solid var(--main-accent)}.announcement-card-featured:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c26;border-left-color:var(--main-blue)}.slide-top-badges{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;width:100%}.badges-left-featured{display:flex;gap:8px;align-items:center;flex-wrap:wrap;flex:1}.pinned-badge-large{background:linear-gradient(135deg,var(--main-accent) 0%,#ff9540 100%);color:#fff;padding:6px 14px;border-radius:12px;font-size:.8em;font-weight:700;box-shadow:0 2px 10px #ff812b4d;display:flex;align-items:center;gap:4px;flex-shrink:0;white-space:nowrap}.card-header-featured{display:flex;justify-content:flex-start;align-items:flex-start;margin-bottom:12px;gap:12px}.announcement-title-featured{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0;flex:1;line-height:1.4}.priority-badge-featured{padding:5px 12px;border-radius:12px;font-size:.75em;font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;flex-shrink:0}.priority-badge-featured.urgent{background:#fee2e2;color:#991b1b}.priority-badge-featured.high{background:#fef3c7;color:#92400e}.priority-badge-featured.normal{background:var(--main-blue-light);color:var(--main-blue)}.priority-badge-featured.low{background:#f3f4f6;color:#6b7280}.announcement-content-featured{color:#6b7280;font-size:.95em;line-height:1.6;margin:0;flex:1}font-size: .9em; line-height: 1.6; margin: 0 0 12px 0; min-height: 50px; } .card-footer-featured{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid var(--gray-border)}.category-badge-featured{background:var(--main-blue-light);color:var(--main-blue);padding:5px 12px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;flex-shrink:0}.announcement-date-featured{color:#9ca3af;font-size:.85em;font-weight:500}.job-postings-section-top{max-width:1400px;margin:50px auto 0;padding:0 50px}.job-postings-container{width:100%}.job-postings-carousel{position:relative;overflow:hidden;border-radius:14px;margin:0}.job-posting-slide{min-width:100%;width:100%;background:#fff;border-radius:14px;padding:24px 28px;box-shadow:0 3px 15px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;position:relative;border-left:4px solid var(--main-blue);display:flex;flex-direction:column;gap:16px}.job-posting-slide:hover{transform:translateY(-2px);box-shadow:0 8px 30px #18454c26;border-left-color:var(--main-accent)}.job-posting-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.job-posting-title-featured{font-size:1.4em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.department-badge-featured{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;padding:6px 14px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap;box-shadow:0 2px 8px #3b82f64d}.job-posting-content-featured{display:flex;flex-direction:column;gap:10px;margin-top:8px}.job-info-row{display:flex;align-items:center;gap:8px;color:#6b7280;font-size:.95em}.job-info-row svg{color:var(--main-accent);flex-shrink:0}.job-posting-description-featured{color:#6b7280;font-size:.95em;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.job-posting-footer-featured{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid var(--gray-border);margin-top:4px}.job-type-badge-featured{background:var(--main-blue-light);color:var(--main-blue);padding:5px 12px;border-radius:12px;font-size:.85em;font-weight:600}.job-posting-date-featured{color:#9ca3af;font-size:.85em;font-weight:500}.announcements-section{max-width:1400px;margin:50px auto;padding:0 50px}.section-header-inline{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.btn-view-all{background:var(--main-blue-light);color:var(--main-blue);border:none;padding:10px 20px;border-radius:20px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-view-all:hover{background:var(--main-blue);color:#fff}.empty-announcements{text-align:center;padding:60px 40px;background:#fff;border-radius:16px;color:#6b7280}.empty-announcements .empty-icon{font-size:3em;margin-bottom:15px}.empty-announcements p{font-size:1.1em;margin-bottom:20px}.btn-create-announcement{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1em;box-shadow:0 4px 15px #ff812b4d}.btn-create-announcement:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.loading-announcements{text-align:center;padding:40px;color:#6b7280;font-size:1.1em}.announcements-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.announcement-card .pinned-badge{position:absolute;top:15px;right:15px;background:var(--main-accent);color:#fff;padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600}.announcement-card .announcement-title{font-size:1.2em;font-weight:700;color:var(--main-blue);margin:0 0 12px}.announcement-card .announcement-content{color:#6b7280;font-size:.95em;line-height:1.6;margin:0 0 15px}.announcement-card .announcement-meta{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid var(--gray-border)}.announcement-card .announcement-category{background:var(--main-blue-light);color:var(--main-blue);padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600}.announcement-card .announcement-date{color:#9ca3af;font-size:.85em}.announcement-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;position:relative}.announcement-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.pinned-badge{position:absolute;top:15px;right:15px;background:var(--main-accent);color:#fff;padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600}.announcement-title{font-size:1.2em;font-weight:700;color:var(--main-blue);margin:0 0 10px}.announcement-content{color:#6b7280;font-size:.95em;line-height:1.6;margin:0 0 15px}.announcement-meta{display:flex;gap:15px;font-size:.85em;color:#9ca3af}.announcement-category{background:var(--main-blue-light);color:var(--main-blue);padding:4px 10px;border-radius:8px;font-weight:600}.voting-proposals-section{max-width:1400px;margin:25px auto;padding:0 50px}.voting-proposals-container{background:linear-gradient(135deg,#fffffff2,#f0fdfaf2);border-radius:20px;padding:25px 30px;box-shadow:0 6px 30px #18454c1a;border:2px solid rgba(5,150,105,.2);margin-bottom:30px}.voting-proposals-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.voting-proposal-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 15px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.voting-proposal-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #18454c26;border-color:#059669}.proposal-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px}.proposal-card-title{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0;flex:1;line-height:1.4}.voting-badge{background:linear-gradient(135deg,#059669,#047857);color:#fff;padding:4px 10px;border-radius:8px;font-size:.75em;font-weight:600;white-space:nowrap}.proposal-card-desc{color:#6b7280;font-size:.9em;line-height:1.6;margin:0 0 15px}.proposal-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--gray-border)}.proposal-card-meta{color:#9ca3af;font-size:.85em}.btn-vote-now{background:linear-gradient(135deg,#059669,#047857);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px #05966940}.btn-vote-now:hover{transform:translateY(-2px);box-shadow:0 4px 12px #05966966}.btn-vote-now svg{width:16px;height:16px}@media (max-width: 768px){.carousel-nav-btn{width:36px;height:36px}.carousel-nav-prev{left:8px}.carousel-nav-next{right:8px}.carousel-nav-btn svg{width:16px;height:16px}.announcement-slide{padding:20px;gap:12px}.announcement-title-featured{font-size:1em}.announcement-content-featured{font-size:.9em}}@media (max-width: 768px){.hero-section,.modules-section,.announcements-section-top{padding:0 20px}.announcements-container{padding:25px 20px}.section-header-inline{flex-direction:column;gap:15px}.section-title-large{font-size:1.5em}.announcements-list-horizontal{grid-template-columns:1fr}.hero-title{font-size:1.8em}.hero-stats{gap:30px}.modules-grid{grid-template-columns:1fr}.quick-actions-section{padding:0 20px}.quick-actions{padding:25px 20px}.voting-proposals-section{padding:0 20px}.voting-proposals-container{padding:20px 15px}.voting-proposals-list{grid-template-columns:1fr}}.user-form-modal{width:100%;position:relative}.user-form-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;justify-content:center;background:#ffffffd9;font-weight:600;color:var(--main-blue)}.user-form-fieldset{border:none;margin:0;padding:0;min-width:0}.user-form-fieldset:disabled{opacity:.65;pointer-events:none}.form-section{margin-bottom:25px;padding-bottom:25px;border-bottom:2px solid var(--gray-border)}.section-title{font-size:1.2em;font-weight:700;color:var(--main-blue);margin-bottom:20px;padding-bottom:8px;border-bottom:2px solid var(--main-blue-light)}.form-hint{color:#6b7280;font-size:.9em;margin-bottom:15px;padding:10px 15px;background:#f9fafb;border-radius:8px;border-left:3px solid var(--main-blue)}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.form-group label{font-weight:600;color:var(--main-blue);font-size:1em}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group select{padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box;color:var(--main-blue);cursor:pointer}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23147886' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.roles-checkbox-group{display:flex;flex-direction:column;gap:10px;padding:15px;background:#f9fafb;border-radius:8px;border:1px solid var(--gray-border);max-height:200px;overflow-y:auto}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:25px;padding-top:25px;border-top:2px solid var(--gray-border)}.btn-cancel,.btn-submit{padding:10px 25px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-cancel:hover:not(:disabled){background:var(--main-blue-light);color:#fff}.user-list-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.user-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%;box-sizing:border-box}.user-list-container-embedded{width:100%;padding:0;box-sizing:border-box}.export-modal{padding:20px}.export-modal .form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.export-modal .btn-primary,.export-modal .btn-secondary{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.export-modal .btn-primary{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.export-modal .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 15px #ff812b4d}.export-modal .btn-secondary{background:#fff;color:var(--main-blue);border:2px solid var(--main-blue)}.export-modal .btn-secondary:hover:not(:disabled){background:var(--main-blue-light)}.export-modal .btn-primary:disabled,.export-modal .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.export-import-buttons{display:flex;gap:10px;align-items:center}.header-actions .btn-export,.header-actions .btn-import-file,.header-actions .btn-import,.header-actions .btn-create,.list-header-embedded .btn-export,.list-header-embedded .btn-import-file,.list-header-embedded .btn-import,.list-header-embedded .btn-create{color:#fff!important;border:none!important;padding:10px 16px!important;border-radius:8px!important;font-weight:600!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;transition:all .2s ease!important;font-size:13px!important;height:36px!important;box-sizing:border-box!important;white-space:nowrap!important;line-height:1!important;width:auto!important;max-width:none!important;flex-shrink:0!important}.header-actions .btn-export,.list-header-embedded .btn-export{background:linear-gradient(135deg,#3b82f6,#2563eb)!important}.header-actions .btn-export:hover,.list-header-embedded .btn-export:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #3b82f64d!important}.header-actions .btn-export:active,.list-header-embedded .btn-export:active{transform:translateY(0)!important}.header-actions .btn-import-file,.list-header-embedded .btn-import-file{background:linear-gradient(135deg,#8b5cf6,#7c3aed)!important}.header-actions .btn-import-file:hover:not(:disabled),.list-header-embedded .btn-import-file:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6d28d9)!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #8b5cf64d!important}.header-actions .btn-import-file:active:not(:disabled),.list-header-embedded .btn-import-file:active:not(:disabled){transform:translateY(0)!important}.header-actions .btn-import-file:disabled,.list-header-embedded .btn-import-file:disabled{opacity:.6!important;cursor:not-allowed!important;transform:none!important}.header-actions .btn-import,.list-header-embedded .btn-import{background:linear-gradient(135deg,#10b981,#059669)!important}.header-actions .btn-import:hover,.list-header-embedded .btn-import:hover{background:linear-gradient(135deg,#059669,#047857)!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #10b9814d!important}.header-actions .btn-import:active,.list-header-embedded .btn-import:active{transform:translateY(0)!important}.header-actions .btn-create,.list-header-embedded .btn-create{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%)!important}.header-actions .btn-create:hover,.list-header-embedded .btn-create:hover{background:linear-gradient(135deg,var(--main-accent) 0%,#ff8a2b 100%)!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #ff812b4d!important}.header-actions .btn-create:active,.list-header-embedded .btn-create:active{transform:translateY(0)!important}.users-table-container{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto;overflow-y:visible;width:100%;box-sizing:border-box;position:relative}.users-table{width:100%;min-width:1200px;border-collapse:collapse;table-layout:fixed}.users-table thead{background:var(--main-blue-light)}.users-table th{padding:15px 10px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--main-blue);font-size:1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.users-table th.sortable:hover{background-color:#f3f4f6}.users-table th:nth-child(1){width:50px}.users-table th:nth-child(2){width:10%}.users-table th:nth-child(3){width:12%}.users-table th:nth-child(4){width:8%}.users-table th:nth-child(5){width:10%}.users-table th:nth-child(6){width:15%}.users-table th:nth-child(7){width:8%}.users-table th:nth-child(8){width:10%}.users-table th:nth-child(9){width:12%}.users-table th:nth-child(10){width:13%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(1){width:10%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(2){width:12%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(3){width:8%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(4){width:10%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(5){width:15%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(6){width:8%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(7){width:10%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(8){width:12%}.users-table:not(:has(th input[type=checkbox])) th:nth-child(9){width:13%}.users-table td{padding:15px 10px;border-bottom:1px solid var(--gray-border);color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.users-table tbody tr:hover{background:#f9fafb}.user-info{display:flex;align-items:center;gap:8px;min-width:0}.username{font-weight:600;color:var(--main-blue);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.last-login-cell{cursor:default}.cell-tooltip-bubble{position:fixed!important;z-index:99999!important;max-width:320px;min-height:24px;padding:8px 12px;background:#1f2937;color:#fff;font-size:.875rem;line-height:1.4;border-radius:8px;box-shadow:0 4px 12px #0003;pointer-events:none;word-break:break-word;white-space:normal;animation:cellTooltipFadeIn .15s ease;transform:translateZ(0);box-sizing:border-box}@keyframes cellTooltipFadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.cell-with-tooltip{cursor:default}.action-menu-item-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--gray-border);background:#f9fafb;cursor:default}.action-menu-item-row .employee-switch-label{font-size:.9rem;color:#374151}.employee-switch-wrap-in-menu{display:inline-flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.employee-switch-wrap-in-menu .employee-switch-slider{width:32px;height:18px;border-radius:18px}.employee-switch-wrap-in-menu .employee-switch-slider:after{width:14px;height:14px;top:2px;left:2px}.employee-switch-wrap-in-menu .employee-switch:checked+.employee-switch-slider:after{transform:translate(14px)}.employee-switch-wrap{display:inline-flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.employee-switch-label{font-size:.85rem;color:#374151}.employee-switch{position:absolute;opacity:0;width:0;height:0}.employee-switch-slider{display:inline-block;width:36px;height:20px;border-radius:20px;background:#d1d5db;transition:background .2s ease;flex-shrink:0}.employee-switch-slider:after{content:"";position:relative;display:block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;top:2px;left:2px;transition:transform .2s ease}.employee-switch:checked+.employee-switch-slider{background:var(--main-accent, #1478b8)}.employee-switch:checked+.employee-switch-slider:after{transform:translate(16px)}.employee-switch:disabled+.employee-switch-slider{opacity:.6;cursor:not-allowed}.employee-switch-wrap:has(.employee-switch:disabled){cursor:not-allowed}.action-menu-container{position:relative;display:flex;justify-content:center}.btn-action-menu{padding:0;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;background:#f3f4f6;color:#6b7280}.btn-action-menu:hover{background:#e5e7eb;color:#374151}.btn-action-menu svg{width:18px;height:18px}.action-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:transparent;pointer-events:auto}.action-menu-dropdown{position:fixed!important;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;border:1px solid var(--gray-border);z-index:10000!important;min-width:160px;overflow:hidden;animation:slideDown .2s ease;pointer-events:auto;isolation:isolate}.action-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;border:none;background:#fff;color:#374151;font-size:.95em;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left}.action-menu-item:hover{background:#f9fafb;color:var(--main-blue)}.action-menu-item svg{width:16px;height:16px;flex-shrink:0}.action-menu-item span{flex:1}.empty-icon{display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--main-blue)}@media (max-width: 1200px){.users-table{min-width:1100px}.users-table th,.users-table td{padding:12px 8px;font-size:.9em}.btn-view,.btn-edit,.btn-delete{width:32px;height:32px;padding:6px}}@media (max-width: 768px){.user-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.header-actions{width:100%;flex-wrap:wrap}.users-table-container{padding:15px;overflow-x:scroll}.users-table{min-width:1000px;font-size:.85em}.users-table th,.users-table td{padding:10px 6px}.filters{flex-direction:column}.search-box{width:100%}.action-buttons{flex-direction:column;gap:4px}.btn-view,.btn-edit,.btn-delete{width:36px;height:36px;padding:8px}}.user-detail-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.user-detail-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.btn-edit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1em;box-shadow:0 4px 15px #ff812b4d}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.user-detail-card{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.detail-section{margin-bottom:40px;padding-bottom:30px;border-bottom:2px solid var(--gray-border)}.detail-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px}.info-item label{font-weight:600;color:var(--main-blue);font-size:.95em}.info-value{color:#374151;font-size:1.05em;display:flex;align-items:center;gap:10px}.ad-badge{padding:2px 8px;border-radius:4px;font-size:.7em;font-weight:600;background:var(--main-accent);color:#fff}.role-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;white-space:nowrap}.role-badge.superuser{background:#fef3c7;color:#92400e}.role-badge.user{background:#e0e7ff;color:#3730a3}.role-badge.role{background:#dbeafe;color:#1e40af;margin-right:8px;margin-bottom:8px;display:inline-block}.roles-list{display:flex;flex-wrap:wrap;gap:8px;align-items:center}@media (max-width: 768px){.user-detail-container{padding:0 20px}.user-detail-card{padding:25px}.detail-header{flex-direction:column;align-items:flex-start;gap:15px}.info-grid{grid-template-columns:1fr}}.user-form-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.user-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.user-form{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.form-hint{color:#6b7280;font-size:.9em;margin-bottom:20px;padding:10px 15px;background:#f9fafb;border-radius:8px;border-left:3px solid var(--main-blue)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box;color:var(--main-blue)}.form-group input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.form-group input:disabled{background:#f9fafb;cursor:not-allowed}.roles-checkbox-group{display:flex;flex-direction:column;gap:12px;padding:15px;background:#f9fafb;border-radius:8px;border:1px solid var(--gray-border)}.roles-checkbox-group .checkbox-label{padding:8px 12px;background:#fff;border-radius:6px;border:1px solid var(--gray-border);transition:all .3s ease}.roles-checkbox-group .checkbox-label:hover{background:#f3f4f6;border-color:var(--main-blue)}.roles-checkbox-group .checkbox-label input[type=checkbox]:checked+span{font-weight:600;color:var(--main-blue)}.role-description{color:#6b7280;font-size:.9em;font-weight:400}@media (max-width: 768px){.user-form-container{padding:0 20px}.user-form{padding:25px}}.user-import-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.user-import-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.import-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.connection-status{display:flex;align-items:center;gap:15px}.status-testing,.status-success,.status-failed{padding:8px 16px;border-radius:8px;font-weight:600;font-size:.9em}.status-testing{background:#fef3c7;color:#92400e}.status-success{background:#d1fae5;color:#065f46}.status-failed{background:#fee2e2;color:#991b1b;display:flex;align-items:center;gap:10px}.btn-retry{padding:4px 12px;border-radius:6px;font-size:.85em;font-weight:600;cursor:pointer;border:none;background:#fff;color:#991b1b;transition:all .3s ease}.btn-retry:hover{background:#ef4444;color:#fff}.import-actions{display:flex;gap:15px;margin-bottom:30px;flex-wrap:wrap;align-items:stretch}.search-box{flex:1;min-width:200px;display:flex;align-items:center}.search-input{width:100%;height:44px;padding:10px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;box-sizing:border-box}.action-buttons{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.btn-refresh,.btn-import-selected,.btn-import-all{height:44px;padding:10px 20px;border-radius:8px;font-weight:600;font-size:.95em;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;box-sizing:border-box}.btn-refresh{background:#f3f4f6;color:var(--main-blue)}.btn-refresh:hover:not(:disabled){background:#e5e7eb}.btn-import-selected{background:var(--main-blue);color:#fff}.btn-import-selected:hover:not(:disabled){background:var(--main-accent)}.btn-import-all{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;box-shadow:0 4px 15px #ff812b4d}.btn-import-all:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.btn-refresh:disabled,.btn-import-selected:disabled,.btn-import-all:disabled{opacity:.6;cursor:not-allowed}.users-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:#fff;border-radius:12px;box-shadow:0 2px 10px #18454c0d}.header-left{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.stats-info{font-size:.9em;color:#6b7280}.imported-count{padding:4px 12px;background:#e5e7eb;border-radius:6px;color:#374151;font-weight:500}.select-all-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600;color:var(--main-blue)}.select-all-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.selected-count{font-weight:600;color:var(--main-accent)}.ad-users-list{display:flex;flex-direction:column;gap:10px;margin-bottom:30px}.ad-user-item{display:flex;align-items:center;gap:15px;padding:15px 20px;background:#fff;border-radius:12px;border:2px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.ad-user-item:hover{border-color:var(--main-blue);box-shadow:0 2px 10px #18454c1a}.ad-user-item.selected{border-color:var(--main-accent);background:#fff7ed}.ad-user-item input[type=checkbox]{width:20px;height:20px;cursor:pointer}.user-info{flex:1;display:flex;flex-direction:column;gap:5px}.user-name{font-weight:700;font-size:1.1em;color:var(--main-blue)}.user-details{display:flex;gap:15px;font-size:.9em;color:#6b7280;flex-wrap:wrap;align-items:center}.username{font-weight:600;color:var(--main-blue)}.email{color:#6b7280}.department,.job-title,.employee-number{padding:2px 8px;border-radius:4px;background:#e5e7eb;color:#374151;font-size:.85em;font-weight:500}.department{background:#dbeafe;color:#1e40af}.job-title{background:#fce7f3;color:#9f1239}.employee-number{background:#fef3c7;color:#92400e}.domain{padding:2px 8px;border-radius:4px;background:var(--main-accent);color:#fff;font-size:.85em;font-weight:600}.import-result{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);margin-top:30px}.result-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin-bottom:20px}.result-summary{display:flex;gap:20px;margin-bottom:20px;flex-wrap:wrap}.summary-item{padding:15px 25px;border-radius:12px;display:flex;flex-direction:column;gap:5px;min-width:120px}.summary-item.success{background:#d1fae5;color:#065f46}.summary-item.warning{background:#fef3c7;color:#92400e}.summary-item.error{background:#fee2e2;color:#991b1b}.summary-label{font-size:.9em;font-weight:600}.summary-value{font-size:2em;font-weight:700}.error-list{margin-top:20px;padding-top:20px;border-top:2px solid var(--gray-border)}.error-list h4{font-size:1.1em;font-weight:700;color:#991b1b;margin-bottom:15px}.error-item{padding:10px 15px;background:#fee2e2;border-radius:8px;margin-bottom:10px;color:#991b1b;font-size:.9em}.loading,.empty-state{text-align:center;padding:60px;color:#6b7280;font-size:1.2em}.ad-not-available{text-align:center;padding:80px 40px;background:#fff;border-radius:20px;box-shadow:0 4px 20px #18454c14}.warning-icon{font-size:5em;margin-bottom:20px}.ad-not-available h3{font-size:1.8em;font-weight:700;color:var(--main-blue);margin-bottom:15px}.ad-not-available p{color:#6b7280;font-size:1.1em;margin-bottom:30px;line-height:1.6}.btn-back{padding:12px 30px;border-radius:8px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none}.btn-back:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.import-mode-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid var(--gray-border)}.mode-tab{padding:12px 24px;border:none;background:transparent;color:#6b7280;font-weight:600;font-size:1em;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s ease;display:flex;align-items:center;gap:8px}.mode-tab:hover{color:var(--main-blue);background:#18454c0d}.mode-tab.active{color:var(--main-blue);border-bottom-color:var(--main-accent)}.file-import-section{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.file-import-header{margin-bottom:30px}.file-import-header h2{font-size:1.8em;font-weight:700;color:var(--main-blue);margin-bottom:10px}.import-description{color:#6b7280;font-size:1em;line-height:1.6;margin:0}.file-import-actions{display:flex;gap:15px;align-items:center;margin-bottom:30px;flex-wrap:wrap}.btn-import-file{padding:12px 24px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;align-items:center;gap:8px;box-shadow:0 4px 15px #3b82f64d}.btn-import-file:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.btn-import-file:disabled{opacity:.6;cursor:not-allowed}.importing-indicator{display:flex;align-items:center;gap:10px;color:var(--main-blue);font-weight:600}.file-format-info{background:#f9fafb;border-radius:12px;padding:20px;margin-top:20px;border:1px solid var(--gray-border)}.file-format-info h3{font-size:1.2em;font-weight:700;color:var(--main-blue);margin-bottom:15px}.file-format-info ul{list-style:none;padding:0;margin:0}.file-format-info li{padding:8px 0;color:#374151;font-size:.95em;line-height:1.6}.file-format-info li code{background:#e5e7eb;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:.9em;color:#1f2937}@media (max-width: 768px){.user-import-container{padding:0 20px}.import-header{flex-direction:column;align-items:flex-start;gap:15px}.import-mode-tabs{width:100%;overflow-x:auto}.mode-tab{white-space:nowrap;padding:10px 16px;font-size:.9em}.import-actions{flex-direction:column}.search-box,.action-buttons{width:100%}.btn-refresh,.btn-import-selected,.btn-import-all{flex:1}.file-import-section{padding:20px}.file-import-header h2{font-size:1.5em}}.role-list-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-color)}.role-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px;width:100%}.role-list-container-embedded{width:100%;padding:20px}.role-list-container-embedded .role-list-header{margin-bottom:20px}.role-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.role-list-header h1{font-size:2em;font-weight:800;color:var(--main-blue);margin:0}.btn-primary{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}.role-list-filters{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap}.search-wrapper{flex:1;min-width:250px;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:16px;color:#9ca3af;width:18px;height:18px}.search-input{width:100%;padding:12px 16px 12px 44px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;transition:all .3s ease}.filter-select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;background:#fff;cursor:pointer;transition:all .3s ease;min-width:150px}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:.85em;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.role-code{font-size:.85em;color:#6b7280;font-family:Courier New,monospace;background:#f3f4f6;padding:4px 8px;border-radius:4px;display:inline-block}.role-list-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:visible;border:1px solid var(--gray-border)}.role-list-table{width:100%;border-collapse:collapse}.role-list-table thead{background:linear-gradient(135deg,#147886,#0f5d68);color:#fff}.role-list-table th{padding:16px;text-align:left;font-weight:600;font-size:.95em;border-bottom:2px solid rgba(255,255,255,.2)}.role-list-table th:first-child{padding-left:24px}.role-list-table th:last-child{padding-right:24px}.role-list-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.role-list-table tbody tr:hover{background-color:#f9fafb}.role-list-table tbody tr:last-child{border-bottom:none}.role-list-table td{padding:16px;vertical-align:top;font-size:.95em;color:#374151}.role-list-table td:first-child{padding-left:24px}.role-list-table td:last-child{padding-right:24px;text-align:center}.cell-content{word-wrap:break-word;overflow-wrap:break-word;display:flex;align-items:center;gap:8px}.cell-description{display:block;font-size:.85em;color:#6b7280;margin-top:4px}.inline-icon{width:16px;height:16px;color:var(--main-blue);flex-shrink:0}.empty-state{text-align:center;padding:60px 40px;color:#6b7280;font-size:1.1em;background:#fff;border-radius:12px;box-shadow:0 2px 12px #18454c14}.empty-icon{width:64px;height:64px;color:#d1d5db;margin:0 auto 20px}.empty-state p{margin:0 0 20px}.error-message{text-align:center;padding:40px;color:var(--danger-color);font-size:1.1em;font-weight:600;background:#fff;border-radius:12px;box-shadow:0 2px 12px #18454c14}.action-buttons{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-start;min-width:120px}.action-dropdown{position:relative;display:inline-block;z-index:10}.btn-menu{padding:8px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f8f9fa;color:#6c757d;position:relative;z-index:1}.btn-menu:hover{background:#e9ecef;color:#495057}.btn-menu:active{background:#dee2e6}.btn-menu svg{pointer-events:none}.btn-toggle-actions{padding:8px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;color:#fff;margin:0 auto;position:relative;z-index:10}.btn-toggle-actions:hover{background:#fff3;color:#fff}.btn-toggle-actions:active{background:#ffffff4d}.btn-toggle-actions svg{width:18px;height:18px;pointer-events:none}.dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border:1px solid #dee2e6;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:10000;min-width:150px;overflow:hidden;margin-top:0;display:block!important;visibility:visible!important;opacity:1!important}.dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:none;text-align:left;cursor:pointer;font-size:14px;color:#495057;transition:background-color .2s ease}.dropdown-item:hover{background:#f8f9fa}.dropdown-item svg{width:16px;height:16px;color:#6c757d}.dropdown-item-danger{color:#dc3545}.dropdown-item-danger:hover{background:#f8d7da}.dropdown-item-danger svg{color:#dc3545}.dropdown-menu-portal .dropdown-item.delete,.dropdown-menu-portal .dropdown-item-danger{color:#dc2626}.dropdown-menu-portal .dropdown-item.delete:hover,.dropdown-menu-portal .dropdown-item-danger:hover{background:#fee2e2}.action-buttons .btn-view,.action-buttons .btn-edit,.action-buttons .btn-delete{padding:0;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0}.action-buttons .btn-view svg,.action-buttons .btn-edit svg,.action-buttons .btn-delete svg{width:18px;height:18px}@media (max-width: 768px){.role-list-container{padding:20px 15px}.role-list-header{flex-direction:column;align-items:flex-start}.role-list-table{font-size:.9em}.role-list-table th,.role-list-table td{padding:12px 8px}.role-list-table th:last-child,.role-list-table td:last-child{min-width:60px;width:60px}.action-buttons{min-width:100px;justify-content:center}}.role-detail-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-color)}.role-detail-container{flex:1;max-width:1400px;margin:0 auto;padding:30px;width:100%}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;gap:20px}.role-code{font-size:.9em;color:#6b7280;font-family:Courier New,monospace;background:#f3f4f6;padding:4px 12px;border-radius:6px;display:inline-block}.btn-edit{background:linear-gradient(135deg,var(--main-accent) 0%,#ff7a1a 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:24px}.detail-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #18454c14;padding:24px}.detail-card.full-width{grid-column:1 / -1}.card-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--gray-border)}.card-icon{width:24px;height:24px;color:var(--main-blue)}.card-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.info-item label{font-weight:600;color:#6b7280;font-size:.9em;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:1.1em;color:var(--main-blue);word-wrap:break-word}.info-value code{background:#f3f4f6;padding:4px 8px;border-radius:4px;font-family:Courier New,monospace;font-size:.9em}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:.85em;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.active{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.stats-card{background:linear-gradient(135deg,#f0f9ff,#e0f2fe)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-card{background:#fff;border-radius:8px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #0000000d}.stat-icon-large{width:40px;height:40px;color:var(--main-blue);flex-shrink:0}.stat-content{display:flex;flex-direction:column;gap:4px}.stat-value-large{font-size:1.8em;font-weight:700;color:var(--main-blue);line-height:1}.stat-label{font-size:.85em;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.permissions-card{grid-column:1 / -1}.permissions-display{display:flex;flex-direction:column;gap:24px}.permissions-summary{display:flex;gap:20px;padding:20px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:8px}.summary-stat{display:flex;align-items:center;gap:12px;flex:1}.summary-stat .stat-icon{width:32px;height:32px;color:var(--main-blue)}.summary-stat strong{display:block;font-size:1.5em;color:var(--main-blue);line-height:1;margin-bottom:4px}.summary-stat span{font-size:.9em;color:#6b7280}.permission-modules-list{display:flex;flex-direction:column;gap:12px}.permission-module-card{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#f9fafb}.permission-module-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#fff;cursor:pointer;transition:background-color .2s;border-bottom:1px solid #e5e7eb}.permission-module-header:hover{background:#f3f4f6}.module-header-left{display:flex;align-items:center;gap:12px;flex:1}.expand-icon{color:#6b7280;width:16px;height:16px;transition:transform .2s}.module-badge{background:var(--main-blue);color:#fff;padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600}.permission-module-content{padding:16px;background:#fff;display:flex;flex-direction:column;gap:12px}.permission-item{padding:12px;background:#f9fafb;border-radius:6px;border-left:3px solid var(--main-accent)}.permission-item-label{display:flex;align-items:center;gap:8px;margin-bottom:10px}.item-icon{width:16px;height:16px;color:var(--main-accent)}.permission-item-label strong{color:#374151;font-size:.95em}.permission-actions-list{display:flex;flex-wrap:wrap;gap:8px;padding-left:24px}.action-badge{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;padding:4px 10px;border-radius:12px;font-size:.8em;font-weight:500}.empty-permissions{text-align:center;padding:40px;color:#6b7280}.empty-permissions .empty-icon{width:48px;height:48px;color:#d1d5db;margin:0 auto 16px}.users-card{grid-column:1 / -1}.assign-role-section{display:flex;gap:15px;margin-bottom:24px;flex-wrap:wrap}.user-select{flex:1;min-width:200px;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;background:#fff;cursor:pointer;transition:all .3s ease}.user-select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.btn-assign{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;display:flex;align-items:center;gap:8px}.btn-assign:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}.btn-assign:disabled{opacity:.5;cursor:not-allowed}.users-list{display:flex;flex-direction:column;gap:12px}.user-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--main-blue-light);border-radius:8px;border:1px solid var(--gray-border);transition:all .3s ease}.user-item:hover{background:#e0f2fe;border-color:var(--main-blue)}.user-info{display:flex;align-items:center;gap:16px;flex:1}.user-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2em;flex-shrink:0}.user-details{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.user-details strong{color:var(--main-blue);font-size:1.1em;word-break:break-word}.user-meta{color:#6b7280;font-size:.9em}.user-department{display:flex;align-items:center;gap:4px;color:#6b7280;font-size:.85em;margin-top:4px}.btn-remove{background:var(--danger-color);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:6px;flex-shrink:0}.btn-remove:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 8px #dc26264d}.empty-state{text-align:center;padding:40px;color:#6b7280;font-size:1.1em}.empty-state .empty-icon{width:48px;height:48px;color:#d1d5db;margin:0 auto 16px}.loading,.error{text-align:center;padding:40px;font-size:1.1em;background:#fff;border-radius:12px;box-shadow:0 2px 12px #18454c14}.error{color:var(--danger-color);font-weight:600}@media (max-width: 1024px){.detail-grid,.stats-grid{grid-template-columns:1fr}}@media (max-width: 768px){.role-detail-container{padding:20px 15px}.detail-header{flex-direction:column;align-items:flex-start}.info-grid{grid-template-columns:1fr}.assign-role-section{flex-direction:column}.user-item{flex-direction:column;gap:12px;align-items:flex-start}.user-info{width:100%}}.role-form-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-color)}.role-form-container{flex:1;max-width:1200px;margin:0 auto;padding:30px;width:100%}.page-title{font-size:2em;font-weight:800;color:var(--main-blue);margin:0 0 8px}.form-subtitle{color:#6b7280;font-size:1em;margin:0}.role-form{background:#fff;border-radius:12px;box-shadow:0 2px 12px #18454c14;padding:30px}.form-section{margin-bottom:40px}.form-section:last-of-type{margin-bottom:0}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid var(--gray-border)}.section-icon{width:24px;height:24px;color:var(--main-blue)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.form-input:disabled{background:#f3f4f6;cursor:not-allowed;color:#6b7280}.form-input.error{border-color:var(--danger-color)}.error-message{display:block;margin-top:6px;color:var(--danger-color);font-size:.85em;font-weight:500}.permission-templates{margin-bottom:24px;padding:20px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:8px;border:2px dashed var(--main-blue)}.templates-label{font-weight:600;color:var(--main-blue);margin:0 0 16px;font-size:.95em}.templates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.template-btn{background:#fff;border:2px solid var(--main-blue);border-radius:8px;padding:16px;cursor:pointer;transition:all .3s ease;text-align:left}.template-btn:hover{background:var(--main-blue-light);border-color:var(--main-accent);transform:translateY(-2px);box-shadow:0 4px 12px #2563eb33}.template-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.template-icon{width:18px;height:18px;color:var(--main-accent)}.template-header strong{color:var(--main-blue);font-size:.95em}.template-desc{color:#6b7280;font-size:.85em;margin:0;line-height:1.4}.permission-editor-wrapper{margin-top:20px}.btn-cancel{background:#fff;color:var(--main-blue);border:2px solid var(--gray-border);padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-cancel:hover:not(:disabled){background:#f9fafb;border-color:var(--main-blue)}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.spinning{animation:spin 1s linear infinite}.loading{text-align:center;padding:40px;color:var(--main-blue);font-size:1.1em;background:#fff;border-radius:12px;box-shadow:0 2px 12px #18454c14}@media (max-width: 768px){.role-form-container{padding:20px 15px}.role-form{padding:20px}.form-grid,.templates-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}}.settings-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.settings-list-container-embedded{display:block;width:100%;background:transparent;min-height:auto}.settings-list-container-embedded .settings-list-container{padding:0;max-width:100%}.settings-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.search-group{flex:1;min-width:250px}.search-input-wrapper{position:relative;display:flex;align-items:center;background:#fff;border:2px solid var(--gray-border);border-radius:8px;padding:0 15px;transition:all .3s ease;min-width:200px}.search-input-wrapper:focus-within{border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.search-icon{color:#9ca3af;margin-right:8px;flex-shrink:0}.filter-input{flex:1;border:none;outline:none;padding:10px 0;font-size:1em;background:transparent;color:var(--main-blue);font-family:inherit}.filter-input::placeholder{color:#9ca3af}.filter-select{padding:10px 15px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;min-width:120px;cursor:pointer}.action-buttons{display:flex;gap:10px;flex-shrink:0;align-items:center;flex-wrap:wrap}.btn-primary{padding:12px 24px;border-radius:8px;font-weight:600;font-size:.95em;border:none;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;background:var(--main-blue);color:#fff}.btn-primary:hover:not(:disabled){background:#0f3a3f;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.btn-secondary{padding:12px 24px;border-radius:8px;font-weight:600;font-size:.95em;border:2px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;background:#fff;color:var(--main-blue)}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:var(--main-blue);transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.backup-actions{display:flex;gap:8px}.settings-groups{display:flex;flex-direction:column;gap:20px}.settings-group-card{background:#fff;border-radius:16px;padding:25px 30px;box-shadow:0 2px 10px #0000000d}.group-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin:0 0 20px;padding-bottom:15px;border-bottom:2px solid var(--gray-border)}.settings-table-container{overflow-x:auto;width:100%}.settings-table{width:100%;border-collapse:collapse;font-size:.95em}.settings-table thead{background:#f9fafb}.settings-table th{padding:15px 12px;text-align:left;font-weight:600;color:var(--main-blue);border-bottom:2px solid var(--gray-border);white-space:nowrap}.settings-table td{padding:15px 12px;border-bottom:1px solid #e5e7eb;vertical-align:middle}.settings-table tbody tr:hover{background:#f9fafb}.cell-content{display:flex;align-items:center;min-height:40px}.setting-key{background:#f3f4f6;padding:4px 8px;border-radius:4px;font-family:Courier New,monospace;font-size:.9em;color:#374151}.setting-value-cell{min-width:200px}.setting-input{width:100%;padding:8px 12px;border:2px solid var(--gray-border);border-radius:6px;font-size:.95em;font-family:inherit;color:var(--main-blue);transition:all .3s ease;box-sizing:border-box}.setting-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.setting-value-readonly{color:#6b7280;font-style:italic}.btn-action-menu{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:2px solid var(--gray-border);border-radius:6px;background:#fff;color:var(--main-blue);cursor:pointer;transition:all .2s ease}.btn-action-menu:hover{background:#f9fafb;border-color:var(--main-blue);transform:scale(1.05)}.action-menu{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid var(--gray-border);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:150px;overflow:hidden}.action-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:#fff;color:var(--main-blue);font-size:.9em;font-weight:500;cursor:pointer;transition:background .2s ease;text-align:left}.action-menu-item:hover:not(:disabled){background:#f9fafb}.action-menu-item:disabled{opacity:.6;cursor:not-allowed}.error-message{text-align:center;padding:40px;color:#dc3545;font-size:1.1em;font-weight:600}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--gray-border)}.modal-header h3{margin:0;font-size:1.3em;font-weight:700;color:var(--main-blue)}.modal-close{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.modal-body{padding:24px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--main-blue);font-size:.95em}@media (max-width: 768px){.settings-list-container{padding:15px 10px}.list-header-card{padding:15px 20px}.header-row{flex-direction:column;align-items:stretch}.filter-controls{flex-direction:column;gap:15px}.action-buttons{width:100%;justify-content:stretch}.btn-primary,.btn-secondary{flex:1;justify-content:center}.settings-table{font-size:.85em}.settings-table th,.settings-table td{padding:10px 8px}}.setting-form-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-color)}.setting-form-container{flex:1;max-width:800px;margin:0 auto;padding:40px 20px;width:100%}.setting-form{background:#fff;border-radius:12px;box-shadow:0 2px 12px #18454c14;padding:30px}.form-section{margin-bottom:30px}.section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid var(--gray-border)}.required{color:var(--danger-color)}.form-input,.form-textarea{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;transition:all .3s ease;font-family:inherit}.form-input:disabled{background:#f3f4f6;cursor:not-allowed}.form-textarea{resize:vertical;min-height:100px}.form-hint{display:block;margin-top:6px;color:#6b7280;font-size:.85em}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600;color:var(--main-blue)}.form-checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--main-accent)}.btn-cancel{background:#fff;color:var(--main-blue);border:2px solid var(--gray-border);padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-cancel:hover{background:#f9fafb;border-color:var(--main-blue)}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}@media (max-width: 768px){.setting-form-container{padding:20px 15px}.setting-form{padding:20px}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}}.backup-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f7fa}.backup-container{flex:1;max-width:900px;margin:0 auto;padding:24px;width:100%}.backup-header{margin-bottom:32px}.page-title{font-size:28px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.page-subtitle{font-size:16px;color:#666;margin:0}.backup-content{display:flex;flex-direction:column;gap:24px}.backup-card{background:#fff;border-radius:8px;padding:32px;box-shadow:0 2px 8px #0000001a}.card-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.card-header h2{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.format-options{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.format-option{display:flex;align-items:flex-start;padding:20px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.format-option:hover{border-color:#3b82f6;background-color:#f0f7ff}.format-option input[type=radio]{margin-right:16px;margin-top:4px;width:20px;height:20px;cursor:pointer}.format-option input[type=radio]:checked+.format-info{color:#3b82f6}.format-option:has(input[type=radio]:checked){border-color:#3b82f6;background-color:#f0f7ff}.format-info{flex:1}.format-info-single{padding:16px;background-color:#f9fafb;border-radius:8px;margin-bottom:20px}.format-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.format-description{font-size:14px;color:#666;margin:0;line-height:1.6}.backup-actions{display:flex;justify-content:center;margin-bottom:24px}.btn-backup{display:flex;align-items:center;gap:8px;padding:12px 32px;font-size:16px;font-weight:600;min-width:200px;justify-content:center}.btn-backup:disabled{opacity:.6;cursor:not-allowed}.backup-notice{display:flex;align-items:flex-start;gap:12px;padding:16px;background-color:#f0f9ff;border-left:4px solid #3b82f6;border-radius:4px}.backup-notice p{margin:0;font-size:14px;color:#1e40af;line-height:1.6}.backup-info{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.backup-info h3{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 16px}.backup-info ul{margin:0;padding-left:24px;list-style-type:disc}.backup-info li{font-size:14px;color:#666;line-height:1.8;margin-bottom:8px}.import-section{display:flex;flex-direction:column;gap:20px}.format-selector{display:flex;gap:16px}.format-selector .format-option{flex:1;padding:16px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.format-selector .format-option:hover{border-color:#3b82f6;background-color:#f0f7ff}.format-selector .format-option:has(input[type=radio]:checked){border-color:#3b82f6;background-color:#f0f7ff}.format-selector .format-title{font-size:16px;font-weight:600;margin-bottom:0}.format-selector .format-description{display:none}.file-input-wrapper{display:flex;align-items:center;gap:12px}.file-name{font-size:14px;color:#666;font-style:italic}.import-actions{display:flex;justify-content:center}.btn-import{min-width:200px}.backup-notice.warning{background-color:#fef3c7;border-left-color:#f59e0b}.backup-notice.warning p{color:#92400e}.error-message{text-align:center;padding:48px 24px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.error-message p{font-size:16px;color:#dc2626;margin:0}.schedule-section{display:flex;flex-direction:column;gap:20px}.schedule-section .form-group{display:flex;flex-direction:column;gap:8px}.schedule-section .form-group label{font-size:14px;font-weight:600;color:#1a1a1a;display:flex;align-items:center;gap:8px}.schedule-section .form-group label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.schedule-section .form-group input[type=text],.schedule-section .form-group input[type=time],.schedule-section .form-group input[type=number]{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.schedule-section .form-group input[type=text]:focus,.schedule-section .form-group input[type=time]:focus,.schedule-section .form-group input[type=number]:focus{outline:none;border-color:#3b82f6}.schedule-section .form-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.path-input-group{display:flex;gap:8px;align-items:stretch}.path-input{flex:1}.btn-test{padding:10px 20px;white-space:nowrap}.form-hint{font-size:12px;color:#6b7280;margin:0;line-height:1.5}.backup-status{padding:16px;background-color:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.backup-status h4{font-size:14px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.backup-status p{font-size:13px;color:#4b5563;margin:4px 0}.backup-status .status-success{color:#059669;font-weight:600}.backup-status .status-failed{color:#dc2626;font-weight:600}.backup-message{font-size:12px;color:#6b7280;font-style:italic}.schedule-actions{display:flex;justify-content:center;margin-top:8px}.schedule-actions .btn-primary{min-width:150px}.system-logs-page{padding:20px;min-height:100vh;background-color:#f5f5f5}.system-logs-embedded{padding:0;min-height:auto;background-color:transparent}.system-logs-container{max-width:1400px;margin:0 auto;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.logs-header{padding:20px 24px;border-bottom:1px solid #e0e0e0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;align-items:center}.logs-header h1{margin:0;font-size:24px;font-weight:600}.header-actions{display:flex;gap:12px}.btn-export{padding:10px 20px;background:#667eea;color:#fff;border:1px solid #667eea;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .3s}.btn-export:hover:not(:disabled){background:#5568d3;border-color:#5568d3;transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.btn-export:disabled{opacity:.6;cursor:not-allowed;transform:none}.logs-tabs{display:flex;border-bottom:2px solid #e0e0e0;background:#f9f9f9;padding:0 24px}.tab-button{padding:16px 24px;border:none;background:transparent;cursor:pointer;font-size:14px;font-weight:500;color:#666;border-bottom:3px solid transparent;transition:all .3s;display:flex;align-items:center;gap:8px}.tab-button:hover{color:#667eea;background:#667eea0d}.tab-button.active{color:#667eea;border-bottom-color:#667eea;background:#fff}.logs-content{padding:24px}.logs-header-actions{display:flex;justify-content:flex-end;margin-bottom:20px;gap:12px}.logs-filters{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap;padding:16px;background:#f9f9f9;border-radius:6px}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:150px}.filter-group label{font-size:12px;font-weight:500;color:#666}.filter-group input,.filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.logs-table{width:100%;border-collapse:collapse;margin-bottom:20px;background:#fff}.logs-table thead{background:#f5f5f5}.logs-table th{padding:12px;text-align:left;font-weight:600;font-size:13px;color:#333;border-bottom:2px solid #e0e0e0;white-space:nowrap}.logs-table td{padding:12px;border-bottom:1px solid #f0f0f0;font-size:13px;color:#666}.logs-table tbody tr:hover{background:#f9f9f9}.error-message-cell{max-width:300px}.error-message-cell span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-agent-cell{max-width:200px}.user-agent-cell span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-view-details{padding:6px 12px;background:#667eea;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px;transition:background .2s}.btn-view-details:hover{background:#5568d3}.loading,.no-data{text-align:center;padding:40px;color:#999;font-size:14px}@media (max-width: 768px){.logs-filters{flex-direction:column}.filter-group{width:100%}.logs-table{font-size:12px}.logs-table th,.logs-table td{padding:8px}}.department-list-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.department-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%;box-sizing:border-box}.department-list-container-embedded{width:100%;padding:0;box-sizing:border-box}.list-header-embedded{display:flex;justify-content:flex-end;align-items:center;margin-bottom:20px;padding:0 20px}.btn-create{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease}.btn-create:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.filters{display:flex;gap:15px;margin-bottom:20px;align-items:flex-end}.search-box{flex:1;display:flex;align-items:center}.search-input{width:100%;padding:10px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;transition:all .3s ease}.filter-select{padding:10px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;background:#fff;cursor:pointer;transition:all .3s ease}.batch-actions{display:flex;align-items:center;gap:15px;padding:15px;background:#fef3c7;border-radius:8px;margin-bottom:20px;border:2px solid #fbbf24}.selected-count{font-weight:600;color:#92400e}.btn-batch-delete{background:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease}.btn-batch-delete:hover{background:#dc2626}.departments-table-container{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto;overflow-y:visible;width:100%;box-sizing:border-box}.departments-table{width:100%;min-width:800px;border-collapse:collapse;table-layout:fixed}.departments-table thead{background:var(--main-blue-light)}.departments-table th{padding:15px 10px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--main-blue);font-size:1em}.departments-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.departments-table th.sortable:hover{background-color:#f3f4f6}.departments-table td{padding:15px 10px;border-bottom:1px solid var(--gray-border);color:#374151;vertical-align:middle}.departments-table tbody tr{position:relative}.departments-table tbody tr:hover{background:#f9fafb}.departments-table td:last-child{position:relative;overflow:visible}.cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.departments-table .action-dropdown{position:relative;display:inline-block}.departments-table .btn-action-toggle{padding:0;border-radius:6px;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#e0f2fe;color:var(--main-blue)}.departments-table .btn-action-toggle:hover{background:#bae6fd;transform:rotate(90deg)}.departments-table .btn-action-toggle svg{width:18px;height:18px}.department-form-modal{width:100%}.department-form-modal .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.department-form-modal .form-group label{font-weight:600;color:var(--main-blue);font-size:1em}.department-form-modal .form-group input[type=text],.department-form-modal .form-group textarea,.department-form-modal .form-group select{padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box;color:var(--main-blue)}.department-form-modal .form-group input:focus,.department-form-modal .form-group textarea:focus,.department-form-modal .form-group select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.department-form-modal .checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;color:var(--main-blue)}.department-form-modal .checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.department-form-modal .form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:25px;padding-top:25px;border-top:2px solid var(--gray-border)}.department-form-modal .btn-cancel,.department-form-modal .btn-submit{padding:10px 25px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.department-form-modal .btn-cancel{background:#fff;color:var(--main-blue);border:2px solid var(--main-blue)}.department-form-modal .btn-cancel:hover{background:var(--main-blue-light);color:#fff}.department-form-modal .btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.department-form-modal .btn-submit:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.loading,.empty-state{text-align:center;padding:60px 20px;color:#6b7280}.empty-icon{margin-bottom:20px;color:var(--main-blue-light)}.empty-state p{font-size:1.1em;margin-bottom:20px}@media (max-width: 768px){.department-list-container{padding:0 20px}.filters{flex-direction:column;align-items:stretch}.departments-table-container{padding:15px}.departments-table{min-width:700px;font-size:.9em}}.announcement-management-page{display:block;width:100%;min-height:100vh;background:#f5f7fa;padding:20px}.announcement-management-embedded{display:block;width:100%;background:transparent;padding:0;min-height:auto;position:relative;z-index:0;max-width:100%;overflow:visible}.announcement-sidebar{position:fixed;top:0;left:0;width:280px;height:100vh;background:var(--sidebar-bg);overflow-y:auto;overflow-x:hidden;z-index:1000;box-shadow:4px 0 20px #14788633;display:flex;flex-direction:column}.announcement-sidebar .sidebar-header{padding:25px 20px;border-bottom:1px solid rgba(255,255,255,.1);text-align:center}.announcement-sidebar .sidebar-logo{width:50px;height:50px;margin:0 auto 15px;background:linear-gradient(135deg,var(--main-accent) 0%,#ff9540 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:1.5em;box-shadow:0 4px 20px #ff812b4d}.announcement-sidebar .sidebar-title{color:#fff;font-size:1.1em;font-weight:700;letter-spacing:1px;margin:0}.announcement-sidebar .sidebar-subtitle{color:#ffffffb3;font-size:.85em;margin:5px 0 0;letter-spacing:.5px}.announcement-sidebar .sidebar-nav{padding:20px 0;flex:1;overflow-y:auto}.announcement-sidebar .nav-item{display:flex;align-items:center;gap:12px;color:#fffc;padding:12px 20px;text-decoration:none;transition:all .3s ease;border-left:4px solid transparent;background:none;border:none;border-right:none;border-top:none;border-bottom:none;width:100%;text-align:left;cursor:pointer;font-size:1em;font-family:inherit}.announcement-sidebar .nav-item:hover{background:#ffffff1a;color:#fff;border-left-color:var(--main-accent)}.announcement-sidebar .nav-item.active{background:var(--sidebar-active-bg);color:#fff;border-left-color:var(--sidebar-active-border);font-weight:600}.announcement-sidebar .nav-icon{font-size:1.2em;min-width:20px}.announcement-sidebar .sidebar-footer{padding:20px;border-top:1px solid rgba(255,255,255,.1);margin-top:auto;flex-shrink:0}.announcement-sidebar .back-to-dashboard{width:100%;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:12px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:0}.announcement-sidebar .back-to-dashboard:hover{background:#fff3}.announcement-management{max-width:1400px;margin:0 auto;width:100%;background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a;position:relative;z-index:0}.tab-switcher{display:flex;gap:10px;margin-bottom:20px;background:#fff;padding:8px;border-radius:16px;box-shadow:0 2px 12px #18454c14;border:1px solid var(--gray-border)}.tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-radius:12px;font-weight:600;font-size:1em;color:var(--main-blue);cursor:pointer;transition:all .3s ease}.announcement-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e5e7eb}.page-title{font-size:1.8em;font-weight:700;color:#1f2937;margin:0}.btn-new-announcement{display:flex;align-items:center;gap:8px;background:var(--main-accent);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #ff812b4d;position:relative;z-index:1;pointer-events:auto}.btn-new-announcement:hover{background:#ff7a1a;box-shadow:0 4px 8px #ff812b66;transform:translateY(-1px)}.announcement-content{width:100%}.modal-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:#00000080!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:99999!important;padding:20px!important;visibility:visible!important;opacity:1!important;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:12px;width:95%;max-width:1400px!important;min-width:1000px;max-height:90vh;overflow-y:auto;overflow-x:hidden;box-shadow:0 10px 40px #0003;animation:slideUp .3s ease;display:flex;flex-direction:column}.modal-content::-webkit-scrollbar{width:12px}.modal-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:6px}.modal-content::-webkit-scrollbar-thumb{background:var(--main-accent);border-radius:6px;border:2px solid #f1f1f1}.modal-content::-webkit-scrollbar-thumb:hover{background:#ff7a1a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:2px solid #e5e7eb;position:sticky;top:0;background:#fff;z-index:10;border-radius:12px 12px 0 0}.modal-header h3{font-size:1.5em;font-weight:700;color:#1f2937;margin:0}.modal-close{background:none;border:none;font-size:1.5em;color:#6b7280;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;width:32px;height:32px}.modal-close:hover{background:#f3f4f6;color:#1f2937}.announcement-form{padding:30px 40px;display:flex;flex-direction:column;gap:20px;flex:1;min-height:0;overflow-y:auto;width:100%}.announcement-form::-webkit-scrollbar{width:10px}.announcement-form::-webkit-scrollbar-track{background:#f1f1f1;border-radius:5px}.announcement-form::-webkit-scrollbar-thumb{background:var(--main-blue);border-radius:5px}.announcement-form::-webkit-scrollbar-thumb:hover{background:var(--main-accent)}.form-group input,.form-group textarea,.form-group select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff}.form-group textarea{resize:vertical;min-height:150px}.form-checkboxes{display:flex;gap:30px;padding:15px 0}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500;color:var(--main-blue)}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--main-accent)}.management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.page-title{font-size:2em;font-weight:800;color:var(--main-blue);margin:0}.btn-create{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1em;box-shadow:0 4px 15px #ff812b4d}.category-filter{display:flex;gap:10px;margin-bottom:25px;flex-wrap:wrap}.announcements-table-container{background:transparent;border-radius:8px;padding:0;overflow-x:auto;overflow-y:visible;margin-top:20px}.announcements-table{width:100%;border-collapse:collapse}.announcements-table thead{background:var(--main-blue-light)}.announcements-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);font-size:.9em;letter-spacing:.5px;border-bottom:2px solid var(--gray-border)}.announcements-table td{padding:15px;border-bottom:1px solid var(--gray-border);color:#374151}.announcements-table tbody tr{position:relative}.announcements-table tbody tr:hover{background:var(--main-blue-light)}.announcements-table td:last-child{position:relative;overflow:visible}.title-cell{display:flex;align-items:center;gap:8px}.pinned-icon{font-size:1.2em}.title-link{color:var(--main-blue);font-weight:600;cursor:pointer;transition:color .3s ease}.title-link:hover{color:var(--main-accent);text-decoration:underline}.category-badge{background:var(--main-blue-light);color:var(--main-blue);padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600}.priority-badge{padding:4px 10px;border-radius:12px;font-size:.85em;font-weight:600}.status-toggle{padding:6px 12px;border-radius:8px;font-size:.85em;font-weight:600;cursor:pointer;border:none;transition:all .3s ease}.status-toggle.active{background:#d1fae5;color:#065f46}.status-toggle.inactive{background:#fee2e2;color:#991b1b}.status-toggle:hover{opacity:.8}.text-muted{color:#9ca3af}.announcements-table .action-dropdown{position:relative;display:inline-block}.announcements-table .btn-action-toggle{padding:0;border-radius:6px;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#e0f2fe;color:var(--main-blue)}.announcements-table .btn-action-toggle:hover{background:#bae6fd;transform:rotate(90deg)}.announcements-table .btn-action-toggle svg{width:18px;height:18px}.dropdown-menu-portal{position:fixed;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;min-width:150px;z-index:99999;overflow:hidden}.dropdown-menu-portal .dropdown-item{width:100%;padding:10px 16px;border:none;background:#fff;color:var(--main-blue);text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;font-size:.95em;font-weight:500;transition:all .2s ease;white-space:nowrap}.dropdown-menu-portal .dropdown-item:hover{background:#f3f4f6}.dropdown-menu-portal .dropdown-item.delete{color:#dc2626}.dropdown-menu-portal .dropdown-item.delete:hover{background:#fee2e2}.dropdown-menu-portal .dropdown-item svg{width:16px;height:16px;flex-shrink:0}@media (max-width: 768px){.announcement-management{padding:20px}.management-header{flex-direction:column;align-items:flex-start;gap:20px}.announcements-table-container{overflow-x:scroll}.modal-content{width:95%;max-width:95%!important;min-width:auto}.announcement-form{padding:20px}}.form-hint{display:block;margin-top:6px;font-size:.85em;color:var(--text-muted, #6b7280)}.file-list{margin-top:10px;display:flex;flex-direction:column;gap:8px}.file-item{display:flex;align-items:center;gap:10px;padding:10px 15px;background:#f9fafb;border:1px solid var(--gray-border);border-radius:8px;font-size:.9em}.file-item svg{color:var(--main-blue);width:16px;height:16px}.file-name{flex:1;color:var(--main-blue);font-weight:500}.file-size{color:#6b7280;font-size:.85em}.btn-remove-file{background:none;border:none;cursor:pointer;color:#ef4444;padding:4px 8px;border-radius:4px;transition:all .2s ease}.btn-remove-file:hover{background:#fee2e2}.btn-remove-file svg{width:14px;height:14px}.image-preview-list{margin-top:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.image-preview-item{position:relative;border:1px solid var(--gray-border);border-radius:8px;overflow:hidden;background:#f9fafb}.preview-image{width:100%;height:150px;object-fit:cover;display:block}.image-info{padding:8px;display:flex;flex-direction:column;gap:4px}.image-preview-item .btn-remove-file{position:absolute;top:8px;right:8px;background:#ffffffe6;padding:6px;border-radius:50%;box-shadow:0 2px 8px #0000001a}.hr-statistics-page{padding:0;background:transparent;border-radius:0;box-shadow:none}.statistics-filters{display:flex;gap:20px;margin-bottom:24px;padding:20px;background:#f9fafb;border-radius:8px}.filter-group label{font-weight:600;color:var(--main-blue);font-size:.9rem}.filter-group input,.filter-group select{padding:8px 12px;border:2px solid var(--gray-border);border-radius:6px;font-size:.9rem}.stat-card{background:#fff;border:2px solid var(--gray-border);border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;transition:all .3s ease}.stat-card:hover{border-color:var(--main-blue);box-shadow:0 4px 12px #18454c1a}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5em}.stat-icon.employees{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.stat-icon.attendance{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.stat-icon.leaves{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.stat-icon.overtimes{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.stat-label{font-size:.9rem;color:#6b7280;margin-bottom:4px}.stat-detail{font-size:.85rem;color:#9ca3af;margin-top:4px}.stat-section{background:#f9fafb;padding:24px;border-radius:12px;border:1px solid var(--gray-border)}.section-title{display:flex;align-items:center;gap:10px;font-size:1.3em;font-weight:700;color:var(--main-blue);margin-bottom:20px}.stat-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:#fff;border-radius:8px;border:1px solid var(--gray-border)}.stat-item-label{font-size:.85rem;color:#6b7280}.stat-item-value{font-size:1.2em;font-weight:600;color:var(--main-blue)}.leave-by-type h4{font-size:1.1em;font-weight:600;color:var(--main-blue);margin-bottom:12px}.leave-type-list{display:flex;flex-direction:column;gap:8px}.leave-type-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#fff;border-radius:6px;border:1px solid var(--gray-border)}.leave-days{font-weight:600;color:var(--main-blue)}.department-statistics{margin-top:30px}.department-stats-table th,.department-stats-table td{padding:12px;text-align:left;border-bottom:1px solid var(--gray-border)}.department-stats-table th{background:#e2e8f0;color:#0f172a;font-weight:700;font-size:.95rem;border-bottom:2px solid #94a3b8}.department-stats-table tr:hover{background:#f9fafb}.loading,.no-data{text-align:center;padding:60px 20px;color:var(--main-blue);font-size:1.1rem}.leave-balance-display{margin-bottom:2rem;width:100%;max-width:100%}.leave-balance-display.compact{display:flex;flex-wrap:wrap;gap:.75rem}.balance-title{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.balance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;align-items:start}.balance-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;border:2px solid #e5e7eb;transition:all .3s ease;display:flex;flex-direction:column;min-height:220px}.balance-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.balance-card.good{border-color:#10b981}.balance-card.warning{border-color:#f59e0b}.balance-card.danger{border-color:#ef4444}.balance-card.neutral{border-color:#6b7280}.balance-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb;flex-shrink:0}.balance-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;flex-shrink:0;box-shadow:0 2px 4px #10b98133}.balance-card.good .balance-icon{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 4px #10b98133}.balance-card.warning .balance-icon{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 4px #f59e0b33}.balance-card.danger .balance-icon{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 4px #ef444433}.balance-card.neutral .balance-icon{background:linear-gradient(135deg,#6b7280,#4b5563);box-shadow:0 2px 4px #6b728033}.balance-info{flex:1}.balance-type{font-size:1.125rem;font-weight:700;color:#1f2937;margin-bottom:.25rem;line-height:1.3}.balance-year{font-size:.875rem;color:#6b7280;font-weight:500}.balance-content{display:flex;flex-direction:column;gap:1.25rem;flex:1}.balance-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;align-items:stretch}.stat-item{text-align:center;padding:.875rem .5rem;background:#f9fafb;border-radius:8px;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:70px}.stat-item.highlight{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981}.balance-card.good .stat-item.highlight{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981}.balance-card.warning .stat-item.highlight{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.balance-card.danger .stat-item.highlight{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef4444}.balance-card.neutral .stat-item.highlight{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-color:#6b7280}.stat-label{display:block;font-size:.75rem;color:#6b7280;font-weight:600;margin-bottom:.375rem;line-height:1.2}.stat-value{display:flex;flex-direction:column;align-items:center;gap:.15rem;font-size:1.375rem;font-weight:800;color:#1f2937;font-family:Courier New,monospace;line-height:1.3}.stat-value.used{color:#6b7280}.stat-item.highlight .stat-value.remaining{color:#059669;font-size:1.5rem}.balance-card.good .stat-item.highlight .stat-value.remaining{color:#059669}.balance-card.warning .stat-item.highlight .stat-value.remaining{color:#d97706}.balance-card.danger .stat-item.highlight .stat-value.remaining{color:#dc2626}.balance-card.neutral .stat-item.highlight .stat-value.remaining{color:#4b5563}.balance-progress{display:flex;align-items:center;gap:.75rem;flex-shrink:0;margin-top:auto}.progress-bar{flex:1;height:10px;background:#e5e7eb;border-radius:5px;overflow:hidden}.progress-fill{height:100%;border-radius:5px;transition:width .3s ease}.progress-fill.good{background:linear-gradient(90deg,#10b981,#059669)}.progress-fill.warning{background:linear-gradient(90deg,#f59e0b,#d97706)}.progress-fill.danger{background:linear-gradient(90deg,#ef4444,#dc2626)}.progress-fill.neutral{background:#6b7280}.progress-text{font-size:.875rem;font-weight:700;color:#374151;min-width:50px;text-align:right;flex-shrink:0}.balance-item.compact{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border-radius:8px;border:1px solid #e5e7eb;font-size:.875rem}.balance-item.compact.good{border-color:#10b981;background:#f0fdf4}.balance-item.compact.warning{border-color:#f59e0b;background:#fffbeb}.balance-item.compact.danger{border-color:#ef4444;background:#fef2f2}.balance-item.compact svg{font-size:1rem;color:#6b7280}.balance-item.compact.good svg{color:#059669}.balance-item.compact.warning svg{color:#d97706}.balance-item.compact.danger svg{color:#dc2626}.balance-label{font-weight:600;color:#374151}.balance-value{font-weight:700;color:#147886;font-family:Courier New,monospace}.balance-hours,.stat-hours{font-weight:600;font-size:.9em;opacity:.85;margin-left:.15rem}.stat-hours{font-size:.75rem;font-weight:500;margin-left:0}.balance-item.compact.good .balance-value{color:#059669}.balance-item.compact.warning .balance-value{color:#d97706}.balance-item.compact.danger .balance-value{color:#dc2626}.leave-balance-loading,.leave-balance-empty{text-align:center;padding:2rem;color:#6b7280}@media (max-width: 768px){.balance-grid,.balance-stats{grid-template-columns:1fr}}.balance-card.annual,.balance-card.annual.neutral,.balance-card.annual.good,.balance-card.annual.warning,.balance-card.annual.danger{border-color:#3b82f6!important;background:#fff!important}.balance-card.annual .balance-icon,.balance-card.annual.neutral .balance-icon,.balance-card.annual.good .balance-icon,.balance-card.annual.warning .balance-icon,.balance-card.annual.danger .balance-icon{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;box-shadow:0 2px 4px #3b82f633!important;color:#fff!important}.balance-card.annual .balance-type,.balance-card.annual.neutral .balance-type,.balance-card.annual.good .balance-type,.balance-card.annual.warning .balance-type,.balance-card.annual.danger .balance-type{color:#1f2937!important}.balance-card.annual .balance-year,.balance-card.annual.neutral .balance-year,.balance-card.annual.good .balance-year,.balance-card.annual.warning .balance-year,.balance-card.annual.danger .balance-year{color:#6b7280!important}.balance-card.annual .stat-item,.balance-card.annual.neutral .stat-item,.balance-card.annual.good .stat-item,.balance-card.annual.warning .stat-item,.balance-card.annual.danger .stat-item{background:#f9fafb!important}.balance-card.annual .stat-item.highlight,.balance-card.annual.neutral .stat-item.highlight,.balance-card.annual.good .stat-item.highlight,.balance-card.annual.warning .stat-item.highlight,.balance-card.annual.danger .stat-item.highlight{background:linear-gradient(135deg,#dbeafe,#bfdbfe)!important;border:2px solid #3b82f6!important}.balance-card.annual .stat-label,.balance-card.annual.neutral .stat-label,.balance-card.annual.good .stat-label,.balance-card.annual.warning .stat-label,.balance-card.annual.danger .stat-label{color:#6b7280!important}.balance-card.annual .stat-value,.balance-card.annual.neutral .stat-value,.balance-card.annual.good .stat-value,.balance-card.annual.warning .stat-value,.balance-card.annual.danger .stat-value,.balance-card.annual .stat-value.used,.balance-card.annual.neutral .stat-value.used,.balance-card.annual.good .stat-value.used,.balance-card.annual.warning .stat-value.used,.balance-card.annual.danger .stat-value.used{color:#2563eb!important}.balance-card.annual .stat-item.highlight .stat-value.remaining,.balance-card.annual.neutral .stat-item.highlight .stat-value.remaining,.balance-card.annual.good .stat-item.highlight .stat-value.remaining,.balance-card.annual.warning .stat-item.highlight .stat-value.remaining,.balance-card.annual.danger .stat-item.highlight .stat-value.remaining{color:#2563eb!important;font-size:1.5rem!important;font-weight:800!important}.balance-card.annual .progress-fill,.balance-card.annual.neutral .progress-fill,.balance-card.annual.good .progress-fill,.balance-card.annual.warning .progress-fill,.balance-card.annual.danger .progress-fill{background:linear-gradient(90deg,#3b82f6,#2563eb)!important}.balance-card.annual .progress-text,.balance-card.annual.neutral .progress-text,.balance-card.annual.good .progress-text,.balance-card.annual.warning .progress-text,.balance-card.annual.danger .progress-text{color:#2563eb!important;font-weight:700!important}.hr-dashboard-page{min-height:100vh;background:#fff}.hr-page-header{max-width:1400px;margin:0 auto;padding:40px 50px 30px}.header-content{text-align:center}.page-title{font-size:2.5em;font-weight:800;color:var(--main-blue);margin:0 0 10px}.page-subtitle{font-size:1.1em;color:#6b7280;margin:0 0 30px}.header-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:30px}.stat-item{background:#fff;padding:20px;border-radius:16px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);text-align:center}.stat-number{font-size:2em;font-weight:800;color:var(--main-blue);margin-bottom:8px}.hr-clock-section{max-width:1400px;margin:0 auto;padding:30px 50px}.clock-widget{background:#fff;border-radius:20px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.clock-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid var(--gray-border)}.clock-title{font-size:1.8em;font-weight:700;color:var(--main-blue);margin:0}.clock-time{font-size:2.5em;font-weight:900;color:var(--main-blue);font-family:Courier New,monospace;letter-spacing:2px}.clock-buttons-row{display:flex;gap:20px;margin-bottom:25px}.clock-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;padding:20px 30px;border-radius:12px;border:3px solid transparent;font-size:1.1em;font-weight:700;cursor:pointer;transition:all .3s ease;position:relative}.clock-in-action{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981;color:var(--main-blue)}.clock-in-action:hover:not(:disabled){background:linear-gradient(135deg,#a7f3d0,#6ee7b7);transform:translateY(-2px);box-shadow:0 4px 15px #10b9814d}.clock-out-action{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b;color:var(--main-blue)}.clock-out-action:hover:not(:disabled){background:linear-gradient(135deg,#fde68a,#fcd34d);transform:translateY(-2px);box-shadow:0 4px 15px #f59e0b4d}.clock-action-btn.completed{background:#f3f4f6;border-color:#d1d5db;opacity:.7}.clock-action-btn:disabled{cursor:not-allowed;opacity:.6}.btn-icon{font-size:1.5em}.btn-text{font-size:1.1em}.btn-check{position:absolute;right:15px;font-size:1.5em;color:#10b981;font-weight:900}.clock-status-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:20px;border-top:1px solid var(--gray-border)}.status-item{text-align:center}.status-label{display:block;font-size:.9em;color:#666;margin-bottom:8px;font-weight:600}.status-value{display:block;font-size:1.3em;font-weight:700;color:var(--main-blue);font-family:Courier New,monospace}.status-value.late{color:#dc2626}.status-value.work-hours{color:var(--main-accent);font-size:1.5em}.clock-records-block{margin-top:24px;padding-top:20px;border-top:1px solid var(--gray-border)}.clock-records-title{font-size:1rem;font-weight:700;color:var(--main-blue);margin:0 0 12px}.clock-records-table-wrap{overflow-x:auto;border:1px solid var(--gray-border);border-radius:8px}.clock-records-table{width:100%;border-collapse:collapse;font-size:.95rem}.clock-records-table thead{background:var(--main-blue);color:#fff}.clock-records-table th{padding:10px 14px;text-align:left;font-weight:600}.clock-records-table tbody tr{border-bottom:1px solid var(--gray-border)}.clock-records-table tbody tr:last-child{border-bottom:none}.clock-records-table tbody tr:hover{background:#f8fafc}.clock-records-table td{padding:10px 14px}.clock-pair-in,.clock-pair-out{font-family:Courier New,monospace;font-weight:700;color:var(--main-blue)}.clock-pair-hours{font-weight:700;color:var(--main-accent)}.hr-personal-stats-section,.hr-leave-balance-section{max-width:1400px;margin:0 auto;padding:30px 50px}.hr-leave-balance-section .section-title,.hr-personal-stats-section .section-title{font-size:1.8em;font-weight:700;color:var(--main-blue);margin-bottom:25px;display:flex;align-items:center;gap:10px}.personal-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}.personal-stat-card{background:#fff;border-radius:16px;padding:28px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);display:flex;align-items:center;gap:24px;transition:all .3s ease;min-height:120px}.personal-stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 30px #18454c26}.personal-stat-card.highlight{border:2px solid #f59e0b;background:linear-gradient(135deg,#fef3c7,#fde68a)}.personal-stat-card .stat-icon{width:60px;height:60px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.8em;flex-shrink:0}.personal-stat-card .stat-icon.attendance{background:linear-gradient(135deg,#dbeafe,#3b82f6);color:#fff}.personal-stat-card .stat-icon.workdays{background:linear-gradient(135deg,#d1fae5,#10b981);color:#fff}.personal-stat-card .stat-icon.leave{background:linear-gradient(135deg,#fce7f3,#ec4899);color:#fff}.personal-stat-card .stat-icon.overtime{background:linear-gradient(135deg,#fef3c7,#f59e0b);color:#fff}.personal-stat-card .stat-icon.pending{background:linear-gradient(135deg,#fee2e2,#ef4444);color:#fff}.personal-stat-card .stat-content{flex:1;min-width:0;overflow:hidden}.personal-stat-card .stat-label{font-size:.95em;color:#6b7280;font-weight:600;margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.personal-stat-card .stat-value{font-size:1.8em;font-weight:800;color:var(--main-blue);font-family:Courier New,monospace;line-height:1.2;word-break:break-word;overflow-wrap:break-word}.personal-stat-card.highlight .stat-value{color:#92400e;font-size:1.4em;line-height:1.4}.personal-stat-card.highlight .stat-value span{display:inline-block;margin:0 2px}.hr-quick-actions-section{max-width:1400px;margin:0 auto;padding:30px 50px}.hr-quick-actions-section .section-title{font-size:1.8em;font-weight:700;color:var(--main-blue);margin-bottom:25px}.quick-actions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.quick-action-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;text-align:center}.quick-action-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #18454c26}.action-icon{width:60px;height:60px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:2em;margin:0 auto 15px}.action-title{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0 0 10px}.action-button{margin-top:15px;padding:8px 20px;background:var(--main-blue);color:#fff;border-radius:20px;font-size:.9em;font-weight:600;display:inline-block}@media (max-width: 1200px){.quick-actions-grid{grid-template-columns:repeat(2,1fr)}.personal-stats-grid{grid-template-columns:repeat(2,1fr);gap:20px}.clock-status-row{grid-template-columns:1fr;gap:15px}}@media (max-width: 900px){.personal-stats-grid{grid-template-columns:repeat(2,1fr);gap:16px}.personal-stat-card{padding:20px;gap:16px;min-height:100px}.personal-stat-card .stat-icon{width:50px;height:50px;font-size:1.5em}.personal-stat-card .stat-value{font-size:1.5em}}@media (max-width: 768px){.hr-page-header,.hr-quick-actions-section,.hr-personal-stats-section,.hr-clock-section,.hr-leave-balance-section{padding:20px}.page-title{font-size:2em}.personal-stats-grid{grid-template-columns:1fr;gap:16px}.personal-stat-card{padding:20px;gap:16px}.quick-actions-grid{grid-template-columns:1fr}.clock-header{flex-direction:column;gap:15px;text-align:center}.clock-time{font-size:2em}.clock-buttons-row{flex-direction:column}.clock-status-row{grid-template-columns:1fr}}.employee-form-modal{padding:0}.employee-form-modal .form-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.employee-form-modal .form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.employee-form-modal .section-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary-color)}.employee-form-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem;margin-bottom:1rem;align-items:start}.employee-form-modal .form-group{display:flex;flex-direction:column;min-width:0}.employee-form-modal .form-group label{margin-bottom:.5rem;font-weight:500;color:var(--text-primary);min-height:1.25rem;line-height:1.25}.employee-form-modal .form-group input,.employee-form-modal .form-group select{padding:.5rem .75rem;height:38px;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;transition:border-color .2s;box-sizing:border-box;width:100%}.employee-form-modal .form-group input:focus,.employee-form-modal .form-group select:focus{outline:none;border-color:var(--primary-color)}.employee-form-modal .form-group input:disabled,.employee-form-modal .form-group select:disabled{background-color:var(--bg-secondary);cursor:not-allowed}.employee-form-modal .form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.employee-form-modal .btn-cancel,.employee-form-modal .btn-submit{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.employee-form-modal .btn-cancel{background-color:var(--bg-secondary);color:var(--text-primary)}.employee-form-modal .btn-cancel:hover:not(:disabled){background-color:var(--bg-tertiary)}.employee-form-modal .btn-submit{background-color:var(--primary-color);color:#fff}.employee-form-modal .btn-submit:hover:not(:disabled){background-color:var(--primary-hover)}.employee-form-modal .btn-cancel:disabled,.employee-form-modal .btn-submit:disabled{opacity:.6;cursor:not-allowed}.photo-upload-section{display:flex;align-items:flex-start;gap:1.5rem}.photo-preview{width:120px;height:120px;border-radius:8px;border:2px dashed var(--border-color);display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);cursor:pointer;transition:all .2s;overflow:hidden;position:relative}.photo-preview:hover{border-color:var(--primary-color);background-color:var(--bg-tertiary)}.photo-preview img,.employee-photo-preview-img{width:100%;height:100%;object-fit:cover}.photo-preview:not(:has(img)){font-size:2rem;font-weight:600;color:var(--text-secondary)}.photo-uploading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;border-radius:8px}.spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.photo-actions{display:flex;flex-direction:column;gap:.5rem;flex:1}.btn-upload-photo{padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-secondary);color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem;width:fit-content}.btn-upload-photo:hover:not(:disabled){background-color:var(--bg-tertiary);border-color:var(--primary-color)}.btn-upload-photo:disabled{opacity:.6;cursor:not-allowed}.photo-hint{font-size:.85rem;color:var(--text-secondary);margin:0}.employee-attendance-modal{padding:0}.monthly-attendance-summary{margin-bottom:2rem;padding:2rem;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 4px 16px #00000014}.summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.summary-title{display:flex;align-items:center;gap:.5rem;font-size:1.2rem;font-weight:600;color:var(--text-primary);margin:0}.monthly-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.monthly-stat-card{background:#fff;padding:2rem 1.5rem;border-radius:12px;text-align:center;box-shadow:0 4px 12px #00000014;transition:all .3s ease;border:2px solid transparent;position:relative;overflow:hidden}.monthly-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--main-blue) 0%,var(--main-accent) 100%);transform:scaleX(0);transition:transform .3s ease}.monthly-stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f;border-color:var(--main-blue)}.monthly-stat-card:hover:before{transform:scaleX(1)}.monthly-stat-card.highlight{background:linear-gradient(135deg,#147886,#0f5d68);color:#fff;border-color:#147886;box-shadow:0 6px 20px #1478864d}.monthly-stat-card.highlight:before{background:#ffffff4d;transform:scaleX(1)}.monthly-stat-card.highlight .monthly-stat-label,.monthly-stat-card.highlight .monthly-stat-unit{color:#ffffffe6}.monthly-stat-label{font-size:.9rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:500}.monthly-stat-value{font-size:3rem;font-weight:800;color:var(--main-blue);line-height:1;margin-bottom:.5rem;letter-spacing:-.02em}.monthly-stat-card.highlight .monthly-stat-value{color:#fff}.monthly-stat-unit{font-size:.85rem;color:var(--text-secondary)}.attendance-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e5e7eb;flex-wrap:wrap;gap:1.5rem;background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000000f}.export-section{display:flex;align-items:center;flex-shrink:0}.date-filters{display:flex;gap:1rem}.filter-group label{font-size:.9rem;font-weight:500;color:var(--text-primary)}.filter-group input[type=date]{padding:.625rem .75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.9rem;transition:all .2s;background:#fff}.filter-group input[type=date]:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #1478861a}.btn-export{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:var(--main-blue);color:#fff;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;min-height:40px}.btn-export:hover{background-color:var(--main-blue-hover);transform:translateY(-1px);box-shadow:0 2px 8px #1478864d}.btn-export:active{transform:translateY(0)}.attendance-statistics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{padding:.875rem;background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000f;transition:all .3s ease;display:flex;align-items:center;gap:.75rem;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--main-blue);transition:width .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f;border-color:var(--main-blue)}.stat-card-primary:before{background:#3b82f6}.stat-card-success:before{background:#10b981}.stat-card-warning:before{background:#f59e0b}.stat-card-danger:before{background:#ef4444}.stat-card-info:before{background:#06b6d4}.stat-icon-wrapper{flex-shrink:0;width:36px;height:36px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1478861a,#1478860d)}.stat-card-primary .stat-icon-wrapper{background:linear-gradient(135deg,#3b82f626,#3b82f60d)}.stat-card-success .stat-icon-wrapper{background:linear-gradient(135deg,#10b98126,#10b9810d)}.stat-card-warning .stat-icon-wrapper{background:linear-gradient(135deg,#f59e0b26,#f59e0b0d)}.stat-card-danger .stat-icon-wrapper{background:linear-gradient(135deg,#ef444426,#ef44440d)}.stat-card-info .stat-icon-wrapper{background:linear-gradient(135deg,#06b6d426,#06b6d40d)}.stat-icon{font-size:1rem;color:var(--main-blue)}.stat-card-primary .stat-icon{color:#3b82f6}.stat-card-success .stat-icon{color:#10b981}.stat-card-warning .stat-icon{color:#f59e0b}.stat-card-danger .stat-icon{color:#ef4444}.stat-card-info .stat-icon{color:#06b6d4}.stat-content-wrapper{flex:1;min-width:0}.stat-label{font-size:.7rem;color:#6b7280;margin-bottom:.25rem;font-weight:500;line-height:1.3}.stat-value{font-size:.85rem;font-weight:700;color:var(--main-blue);line-height:1.2;word-break:break-word}.stat-card-primary .stat-value{color:#3b82f6}.stat-card-success .stat-value{color:#10b981}.stat-card-warning .stat-value{color:#f59e0b}.stat-card-danger .stat-value{color:#ef4444}.stat-card-info .stat-value{color:#06b6d4}.stat-value.negative{color:#ef4444}.attendance-section{margin-bottom:2.5rem;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.section-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-primary);padding-bottom:1rem;border-bottom:2px solid #f3f4f6}.attendance-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem;border-radius:8px;overflow:hidden}.attendance-table thead{background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.attendance-table th{padding:1rem .75rem;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.attendance-table td{padding:1rem .75rem;border-bottom:1px solid #f3f4f6;color:#1f2937;transition:background-color .2s}.attendance-table tbody tr{transition:all .2s}.attendance-table tbody tr:hover{background-color:#f9fafb;transform:scale(1.001)}.attendance-table tbody tr:last-child td{border-bottom:none}.status-badge.normal{background-color:#d4edda;color:#155724}.status-badge.late{background-color:#fff3cd;color:#856404}.status-badge.absent{background-color:#f8d7da;color:#721c24}.status-badge.anomaly{background-color:#fef3c7;color:#92400e}.status-badge.pending,.status-badge.pending_approval{background-color:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.status-badge.approved{background-color:#d4edda;color:#155724}.status-badge.rejected{background-color:#f8d7da;color:#721c24}.loading,.no-data{text-align:center;padding:3rem 2rem;color:var(--text-secondary);font-size:1rem}.loading{display:flex;align-items:center;justify-content:center;gap:.75rem}@media (max-width: 768px){.monthly-stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.monthly-stat-card{padding:1.25rem 1rem}.monthly-stat-value{font-size:2rem}.attendance-statistics{grid-template-columns:repeat(2,1fr);gap:1rem}.stat-card{padding:1rem;flex-direction:column;text-align:center}.stat-icon-wrapper{width:48px;height:48px}.stat-value{font-size:1.5rem}.attendance-header{flex-direction:column;align-items:stretch}.date-filters{flex-direction:column}.attendance-section{padding:1rem}.attendance-table{font-size:.8rem}.attendance-table th,.attendance-table td{padding:.75rem .5rem}}@media (max-width: 480px){.monthly-stats-grid,.attendance-statistics{grid-template-columns:1fr}}.modal-overlay .modal-content.modal-large{max-width:1400px!important;width:95%!important}.employee-transfer-management{padding:2rem;background:#f9fafb;min-height:100vh}.employee-transfer-management.embedded{padding:0;background:transparent;min-height:auto}.transfer-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.filter-group select{padding:.625rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:border-color .2s}.filter-group select:focus{outline:none;border-color:#147886}.employee-info-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.75rem;color:#6b7280;font-weight:600}.info-value{font-size:1rem;color:#1f2937;font-weight:600}.transfer-list{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.transfer-type-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.transfer-type-badge.type-hire{background:#d1fae5;color:#065f46}.transfer-type-badge.type-transfer{background:#dbeafe;color:#1e40af}.transfer-type-badge.type-promotion{background:#fef3c7;color:#92400e}.transfer-type-badge.type-demotion{background:#fee2e2;color:#991b1b}.transfer-type-badge.type-resignation{background:#f3e8ff;color:#6b21a8}.transfer-type-badge.type-termination{background:#fee2e2;color:#991b1b}.transfer-type-badge.type-retirement{background:#e0e7ff;color:#3730a3}.info-compact{font-size:.875rem}.info-compact div{margin-bottom:.25rem}.info-compact strong{color:#374151;margin-right:.5rem}.approval-time{font-size:.75rem;color:#6b7280;margin-top:.25rem}.transfer-empty{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#6b7280}.transfer-empty svg{margin-bottom:1rem;opacity:.5}.transfer-loading{text-align:center;padding:3rem;color:#6b7280}.transfer-form{display:flex;flex-direction:column;gap:1.5rem}.form-group input[type=text],.form-group input[type=date],.form-group select,.form-group textarea{padding:.625rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#147886}@media (max-width: 768px){.employee-info-card{grid-template-columns:1fr}.data-table{font-size:.875rem}.data-table th,.data-table td{padding:.75rem .5rem}}.leave-balance-modal{padding:20px}.modal-header-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--gray-border)}.employee-info{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--main-blue);font-size:1.1em}.year-selector{display:flex;align-items:center;gap:10px}.year-selector label{font-weight:600;color:var(--main-blue)}.year-selector select{padding:8px 12px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);cursor:pointer}.year-selector select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.annual-leave-section{margin-bottom:30px;padding:20px;background:#f9fafb;border-radius:12px;border:1px solid var(--gray-border)}.section-title{display:flex;align-items:center;gap:10px;font-size:1.2em;font-weight:700;color:var(--main-blue);margin:0 0 20px}.balance-display{display:flex;justify-content:space-between;align-items:center;gap:20px}.balance-info{display:flex;gap:30px;flex:1}.balance-item{display:flex;flex-direction:column;gap:5px}.balance-item .label{font-size:.9em;color:#6b7280;font-weight:600}.balance-item .value{font-size:1.3em;font-weight:700;color:var(--main-blue)}.hours-suffix{font-size:.85em;font-weight:600;opacity:.85;margin-left:.15rem}.balance-item .value.used{color:#f59e0b}.balance-item .value.remaining{color:#10b981}.balance-item.highlight{padding:15px;background:#fff;border-radius:8px;border:2px solid var(--main-accent)}.btn-edit-balance{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-edit-balance:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.btn-edit-balance:disabled{opacity:.6;cursor:not-allowed}.edit-form{padding:20px;background:#fff;border-radius:8px}.edit-form .form-group{margin-bottom:20px}.edit-form .form-group label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px}.edit-form .form-group input{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1.1em;font-family:inherit;transition:all .3s ease}.edit-form .form-group input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:20px}.btn-cancel,.btn-submit{padding:10px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.other-balances-section{margin-bottom:30px}.other-balances-list{display:flex;flex-direction:column;gap:10px}.other-balance-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;background:#fff;border:1px solid var(--gray-border);border-radius:8px;gap:20px}.other-balance-item .balance-info-compact{display:flex;flex-direction:column;gap:10px;flex:1}.other-balance-item .balance-type{font-weight:600;color:var(--main-blue);font-size:1.1em;margin-bottom:8px}.other-balance-item .balance-details{display:flex;flex-wrap:wrap;gap:15px;align-items:center}.other-balance-item .balance-label{font-size:.9em;color:#6b7280;font-weight:600}.other-balance-item .balance-value{color:var(--main-blue);font-weight:600;font-family:monospace;font-size:1em}.other-balance-item .balance-value.used{color:#f59e0b}.other-balance-item .balance-value.remaining{color:#10b981}.other-balance-item .edit-form{width:100%;padding:0;background:transparent}.other-balance-item .btn-edit-balance{flex-shrink:0;padding:10px 20px;font-size:.9em}.no-balance{text-align:center;padding:40px;color:#6b7280}.btn-recalculate{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--main-blue-light);color:var(--main-blue);border:2px solid var(--main-blue);border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-recalculate:hover:not(:disabled){background:var(--main-blue);color:#fff}.modal-footer-actions{display:flex;justify-content:center;margin-top:30px;padding-top:20px;border-top:2px solid var(--gray-border)}.batch-leave-balance-modal{padding:20px}.batch-info{display:flex;align-items:center;gap:10px;padding:15px;background:var(--main-blue-light);border-radius:8px;margin-bottom:25px;font-weight:600;color:var(--main-blue)}.batch-form{display:flex;flex-direction:column;gap:20px}.batch-form .form-group{display:flex;flex-direction:column;gap:8px}.batch-form .form-group label{font-weight:600;color:var(--main-blue)}.batch-form .form-group select,.batch-form .form-group input{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease}.batch-form .form-group select:focus,.batch-form .form-group input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.batch-form .form-group select:disabled,.batch-form .form-group input:disabled{opacity:.6;cursor:not-allowed}.form-hint{font-size:.85em;color:#6b7280;margin-top:4px}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:20px;border-top:2px solid var(--gray-border)}.btn-cancel,.btn-submit{padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.employee-management-page{display:flex;min-height:100vh;background:#fff}.employee-management-page.embedded{background:transparent;min-height:auto}.hr-main{margin-left:280px;flex:1;min-height:100vh;padding:30px 40px;display:flex;flex-direction:column}.hr-main-embedded{margin-left:0;flex:1;min-height:auto;padding:0;display:flex;flex-direction:column}.employee-management-page.embedded .employee-management{padding:0}.employee-management{max-width:1400px;margin:0 auto;width:100%;flex:1;display:flex;flex-direction:column}.tab-header{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--gray-border);padding-bottom:0}.tab-btn{background:transparent;border:none;padding:12px 24px;font-size:1em;font-weight:600;color:#6b7280;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent;margin-bottom:-2px;position:relative}.tab-btn:hover{color:var(--main-blue);background:var(--main-blue-light)}.tab-btn.active{color:var(--main-blue);border-bottom-color:var(--main-accent);background:var(--main-blue-light)}.tab-content{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);flex:1;display:flex;flex-direction:column}.employees-toolbar-card{background:#fff;border-radius:12px;padding:20px;margin-bottom:25px;box-shadow:0 2px 8px #00000014;border:1px solid var(--border-color)}.employees-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:nowrap}.toolbar-filters{display:flex;align-items:center;gap:20px;flex:1;flex-wrap:wrap}.employee-search-filter{display:flex;align-items:center;gap:12px;flex:1 1 220px;min-width:200px;max-width:320px}.employee-search-filter label{font-weight:600;color:var(--text-primary);white-space:nowrap}.employee-search-input{flex:1;min-width:0;padding:10px 14px;border:2px solid var(--border-color);border-radius:8px;font-size:.95rem;color:var(--text-primary);background:#fff;transition:all .2s}.employee-search-input:hover,.employee-search-input:focus{border-color:var(--primary-color);outline:none}.company-filter{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-width:140px}.company-filter label{font-weight:600;color:var(--text-primary);white-space:nowrap}.company-select{padding:10px 14px;border:2px solid var(--border-color);border-radius:8px;font-size:.95rem;color:var(--text-primary);background:#fff;min-width:150px;cursor:pointer;transition:all .2s}.company-select:hover{border-color:var(--primary-color)}.department-filter{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-width:180px}.department-filter label{font-weight:600;color:var(--text-primary);white-space:nowrap}.department-select{padding:10px 14px;border:2px solid var(--border-color);border-radius:8px;font-size:.95rem;color:var(--text-primary);background:#fff;min-width:200px;cursor:pointer;transition:all .2s}.department-select:hover{border-color:var(--primary-color)}.department-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #1478861a}.toolbar-actions{display:flex!important;flex-direction:row!important;gap:10px;align-items:center;flex:0 0 auto;flex-wrap:nowrap!important;white-space:nowrap;width:auto}.toolbar-actions>button{display:inline-flex!important;flex-direction:row!important}.btn-batch-leave-balance{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-batch-leave-balance:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.btn-batch-leave-balance:disabled{opacity:.6;cursor:not-allowed}.btn-batch-leave-balance .selected-count{background:#ffffff4d;padding:2px 8px;border-radius:12px;font-size:.9em}.toolbar-actions-batch{display:flex;gap:10px;align-items:center}.btn-export,.btn-import{display:inline-flex!important;flex-direction:row!important;align-items:center;justify-content:center;gap:6px;padding:0 16px;height:36px;min-height:36px;border:2px solid var(--primary-color);border-radius:8px;background:#fff;color:var(--primary-color);font-size:.875rem;font-weight:600;line-height:1;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0;box-sizing:border-box}.btn-export:hover:not(:disabled){background:var(--primary-color);color:#fff}.btn-import{background:var(--primary-color);color:#fff}.btn-import:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn-export:disabled,.btn-import:disabled{opacity:.5;cursor:not-allowed}.toolbar-actions-import{flex-wrap:nowrap!important;gap:8px 12px}.import-overwrite-option{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:.9rem;color:var(--main-blue, #1e3a5f);white-space:nowrap}.import-overwrite-option input[type=checkbox]{width:16px;height:16px;cursor:pointer}.filter-btn{background:#fff;border:2px solid var(--gray-border);padding:8px 20px;border-radius:20px;font-weight:600;cursor:pointer;transition:all .3s ease;color:var(--main-blue)}.filter-btn:hover{border-color:var(--main-accent);background:var(--main-blue-light)}.filter-btn.active{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border-color:transparent}.employees-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto;overflow-y:visible;flex:1;position:relative}.employees-table{width:100%;min-width:1200px;border-collapse:collapse;table-layout:fixed}.employees-table thead{background:var(--main-blue-light)}.employees-table th{padding:15px 12px;text-align:left;font-weight:700;color:var(--main-blue);font-size:.9em;letter-spacing:.5px;border-bottom:2px solid var(--main-blue);position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employees-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.employees-table th.sortable:hover{background-color:#14788626}.employees-table th.sortable .sort-icon{margin-left:8px;font-size:.8em;color:var(--main-blue);opacity:.7}.employees-table th.sortable:hover .sort-icon{opacity:1}.employees-table th:nth-child(1){width:10%}.employees-table th:nth-child(2){width:12%}.employees-table th:nth-child(3){width:8%}.employees-table th:nth-child(4){width:14%}.employees-table th:nth-child(5){width:14%}.employees-table th:nth-child(6){width:14%}.employees-table th:nth-child(7){width:10%}.employees-table th:nth-child(8){width:8%}.employees-table th:nth-child(9){width:10%}.employees-table td{padding:15px 12px;border-bottom:1px solid #e5e7eb;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;position:relative}.employees-table td:last-child{overflow:visible}.employees-table tbody tr{transition:background-color .2s ease}.employees-table tbody tr:hover{background:#f9fafb}.employees-table tbody tr:last-child td{border-bottom:none}.employee-name{font-weight:600;color:var(--main-blue);display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employees-table td:nth-child(4),.employees-table td:nth-child(5),.employees-table td:nth-child(6){white-space:normal;word-wrap:break-word;overflow-wrap:break-word;line-height:1.5}.status-badge{padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600}.status-badge.active{background:#d1fae5;color:#059669}.status-badge.resigned{background:#fee2e2;color:#991b1b}.btn-action-menu{background:transparent;border:1px solid #e5e7eb;border-radius:6px;padding:6px 10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s ease;font-size:14px;width:32px;height:32px}.btn-action-menu:hover{background:#f3f4f6;border-color:#d1d5db;color:var(--main-blue)}.action-menu{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:9999;overflow:hidden}.action-menu-item{width:100%;padding:10px 16px;text-align:left;background:#fff;border:none;cursor:pointer;display:flex;align-items:center;gap:8px;color:#374151;font-size:.9em;transition:background-color .2s ease}.action-menu-item-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;font-size:.9rem;color:#374151}.hr-clock-switch-label{display:inline-flex;align-items:center;gap:8px}.hr-clock-switch-wrap{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.hr-clock-switch{position:absolute;opacity:0;width:0;height:0}.hr-clock-switch-slider{width:40px;height:22px;background:#d1d5db;border-radius:999px;position:relative;transition:background .2s ease}.hr-clock-switch-slider:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s ease}.hr-clock-switch:checked+.hr-clock-switch-slider{background:#10b981}.hr-clock-switch:checked+.hr-clock-switch-slider:after{transform:translate(18px)}.hr-clock-switch:disabled+.hr-clock-switch-slider{opacity:.6;cursor:not-allowed}.employee-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-weight:600;color:var(--main-blue);font-size:.95em}.form-group input,.form-group select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:20px;padding-top:20px;border-top:2px solid var(--gray-border)}.btn-cancel{background:#fff;color:var(--main-blue);border:2px solid var(--gray-border);padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff812b4d}@media (max-width: 1200px){.hr-main{margin-left:0;padding:20px}.hr-sidebar{transform:translate(-100%);transition:transform .3s ease}}.training-courses{width:100%}.courses-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.courses-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.courses-table thead{background:var(--main-blue);color:#fff}.courses-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.courses-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.courses-table tbody tr:hover{background:#f8fafc}.courses-table td{padding:12px 14px;vertical-align:middle}.course-title-cell{font-weight:600;color:var(--main-blue)}.status-ongoing{background:#d1fae5;color:#065f46}.course-actions{display:flex;gap:8px}.course-form{display:flex;flex-direction:column;gap:16px}.training-enrollments,.certificates,.learning-records{width:100%}.enrollments-header,.certificates-header{margin-bottom:24px}.enrollments-list,.certificates-list,.records-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.enrollment-card,.certificate-card,.record-card{background:#fff;border:2px solid var(--gray-border);border-radius:12px;padding:20px;transition:all .3s ease}.enrollment-card:hover,.certificate-card:hover,.record-card:hover{border-color:var(--main-blue);box-shadow:0 4px 12px #18454c1a}.enrollment-header,.certificate-header,.record-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.enrollment-header h3,.certificate-header h3,.record-header h3{margin:0;font-size:1.1em;color:var(--main-blue);font-weight:700}.status-approved,.status-enrolled{background:#d1fae5;color:#065f46}.status-valid{background:#d1fae5;color:#065f46}.status-expired{background:#fee2e2;color:#991b1b}.record-type{padding:4px 12px;background:#e0e7ff;color:#3730a3;border-radius:12px;font-size:.8rem;font-weight:600}.enrollment-info,.certificate-info,.record-info{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;align-items:center;gap:8px;font-size:.9rem;color:#6b7280}.record-description{margin-top:12px;color:#6b7280;font-size:.9rem;line-height:1.6}.training-management-page{width:100%;background:transparent;padding:0}.training-container{width:100%;margin:0}.training-tabs{display:flex;gap:12px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.training-content{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);min-height:500px}.job-postings{width:100%}.postings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.postings-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.postings-table thead{background:var(--main-blue);color:#fff}.postings-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.postings-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.postings-table tbody tr:hover{background:#f8fafc}.postings-table td{padding:12px 14px;vertical-align:middle}.posting-title-cell{font-weight:600;color:var(--main-blue)}.posting-actions{display:flex;gap:8px}.posting-form{display:flex;flex-direction:column;gap:16px}.form-section{margin-bottom:24px;padding:20px;background:#f9fafb;border-radius:12px;border:1px solid #e5e7eb}.section-title{font-size:1.1rem;font-weight:700;color:var(--main-blue);margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid var(--main-blue)}.resumes,.interviews,.offers{width:100%}.resumes-header,.interviews-header,.offers-header{margin-bottom:24px}.resumes-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.resumes-table{width:100%;border-collapse:collapse;font-size:.9rem}.resumes-table thead{background:var(--main-blue);color:#fff}.resumes-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.resumes-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.resumes-table tbody tr:hover{background:#f8fafc}.resumes-table tbody tr:last-child{border-bottom:none}.resumes-table td{padding:12px 14px;vertical-align:middle}.resume-name-cell{font-weight:600;color:var(--main-blue)}.recruitment-interviews-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.recruitment-interviews-table{width:100%;border-collapse:collapse;font-size:.9rem}.recruitment-interviews-table thead{background:var(--main-blue);color:#fff}.recruitment-interviews-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.recruitment-interviews-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.recruitment-interviews-table tbody tr:hover{background:#f8fafc}.recruitment-interviews-table tbody tr:last-child{border-bottom:none}.recruitment-interviews-table td{padding:12px 14px;vertical-align:middle}.recruitment-interview-name-cell{font-weight:600;color:var(--main-blue)}.offers-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.offers-table{width:100%;border-collapse:collapse;font-size:.9rem}.offers-table thead{background:var(--main-blue);color:#fff}.offers-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.offers-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.offers-table tbody tr:hover{background:#f8fafc}.offers-table tbody tr:last-child{border-bottom:none}.offers-table td{padding:12px 14px;vertical-align:middle}.offer-name-cell{font-weight:600;color:var(--main-blue)}.status-new{background:#dbeafe;color:#1e40af}.status-screening,.status-interviewing{background:#fef3c7;color:#92400e}.status-offered{background:#d1fae5;color:#065f46}.status-accepted{background:#dcfce7;color:#166534}.status-scheduled{background:#dbeafe;color:#1e40af}.status-in_progress{background:#fef3c7;color:#92400e}.status-sent{background:#dbeafe;color:#1e40af}.recruitment-management-page{width:100%;background:transparent;padding:0}.recruitment-container{width:100%;margin:0}.recruitment-tabs{display:flex;gap:12px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.tab-button.active{background:var(--main-blue);color:#fff!important}.tab-button.active svg{color:#fff!important;fill:#fff!important}.tab-button.active span{color:#fff!important;display:inline-block}.recruitment-content{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);min-height:500px}.surveys{width:100%}.surveys-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.filter-select,.filter-input{padding:8px 12px;border:2px solid var(--gray-border);border-radius:8px;font-size:.9rem}.filter-input{flex:1;max-width:200px}.surveys-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.surveys-table{width:100%;border-collapse:collapse;font-size:.9rem}.surveys-table thead{background:var(--main-blue);color:#fff}.surveys-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.surveys-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.surveys-table tbody tr:hover{background:#f8fafc}.surveys-table tbody tr:last-child{border-bottom:none}.surveys-table td{padding:12px 14px;vertical-align:middle}.survey-title-cell{font-weight:600;color:var(--main-blue)}.status-badge{padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600}.status-published{background:#dbeafe;color:#1e40af}.status-closed{background:#f3f4f6;color:#4b5563}.status-archived{background:#e5e7eb;color:#6b7280}.survey-actions{display:flex;gap:8px}.survey-form{display:flex;flex-direction:column;gap:16px}.exit-interviews{width:100%}.exit-interviews-header{display:flex;justify-content:flex-end;margin-bottom:12px}.btn-filter{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--gray-border);background:#fff;color:var(--main-blue);padding:8px 12px;border-radius:8px;cursor:pointer;font-weight:600;position:relative}.filter-modal label{display:block;margin-bottom:6px;font-weight:600;color:#374151}.filter-modal .filter-input{width:100%;padding:8px 10px;border:1px solid #d1d5db;border-radius:8px}.filter-modal .date-range{display:flex;align-items:center;gap:8px}.exit-interviews-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.exit-interviews-table{width:100%;border-collapse:collapse;font-size:.9rem}.exit-interviews-table thead{background:var(--main-blue);color:#fff}.exit-interviews-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.exit-interviews-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.exit-interviews-table tbody tr:hover{background:#f8fafc}.exit-interviews-table tbody tr:last-child{border-bottom:none}.exit-interviews-table td{padding:12px 14px;vertical-align:middle}.exit-interview-name-cell{font-weight:600;color:var(--main-blue)}.employee-handbooks{width:100%}.handbooks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.handbooks-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.handbooks-table{width:100%;border-collapse:collapse;font-size:.9rem}.handbooks-table thead{background:var(--main-blue);color:#fff}.handbooks-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.handbooks-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.handbooks-table tbody tr:hover{background:#f8fafc}.handbooks-table tbody tr:last-child{border-bottom:none}.handbooks-table td{padding:12px 14px;vertical-align:middle}.handbook-title-cell{font-weight:600;color:var(--main-blue)}.status-badge.status-active{background:#d1fae5;color:#065f46;padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600}.status-badge.status-inactive{background:#e5e7eb;color:#6b7280;padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600}.handbook-actions{display:flex;gap:8px}.btn-icon{padding:6px;background:transparent;border:1px solid var(--gray-border);border-radius:6px;cursor:pointer;transition:all .3s ease}.handbook-form{display:flex;flex-direction:column;gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.employee-relations-management-page{width:100%;background:transparent;padding:0}.employee-relations-container{width:100%;margin:0}.employee-relations-tabs{display:flex;gap:12px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.employee-relations-content{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);min-height:500px}.welfare-items{width:100%}.welfare-apply-intro{display:flex;align-items:flex-start;gap:12px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #93c5fd;border-radius:12px;padding:16px 20px;margin-bottom:24px;color:#1e40af}.welfare-apply-intro svg{width:24px;height:24px;flex-shrink:0;margin-top:2px}.welfare-apply-intro p{margin:0;font-size:.95rem;line-height:1.6;color:#1e3a8a}.items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.filters{display:flex;gap:12px;flex:1}.welfare-items-table-container{overflow-x:auto;border:2px solid var(--gray-border);border-radius:12px}.welfare-items-table{width:100%;border-collapse:collapse;font-size:.9rem}.welfare-items-table thead{background:var(--main-blue);color:#fff}.welfare-items-table th{padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap}.welfare-items-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.welfare-items-table tbody tr:hover{background:#f8fafc}.welfare-items-table tbody tr:last-child{border-bottom:none}.welfare-items-table td{padding:12px 14px;vertical-align:middle}.welfare-item-name-cell{font-weight:600;color:var(--main-blue)}.welfare-item-desc-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.welfare-item-actions{display:flex;gap:8px;align-items:center}.btn-apply-inline{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--main-blue);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease}.btn-apply-inline:hover:not(:disabled){background:#1a4d56;transform:translateY(-1px)}.btn-apply-inline:disabled{opacity:.5;cursor:not-allowed;background:#e5e7eb;color:#9ca3af}.btn-apply-inline svg{width:16px;height:16px}.application-form{display:flex;flex-direction:column;gap:20px}.application-item-info{background:#f8fafc;border-radius:12px;padding:20px;border:1px solid #e5e7eb}.application-item-info h3{font-size:1.3rem;font-weight:700;color:var(--main-blue);margin:0 0 12px}.item-description{color:#6b7280;font-size:.95rem;line-height:1.6;margin:0 0 12px}.item-amount{display:flex;align-items:center;gap:8px;color:var(--main-blue);font-weight:700;font-size:1.1rem}.item-amount svg{width:20px;height:20px}.application-form .form-group{display:flex;flex-direction:column;gap:8px}.application-form .form-group label{font-weight:600;color:var(--main-blue);font-size:.95rem}.application-form .form-group textarea{padding:12px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95rem;font-family:inherit;resize:vertical;min-height:120px}.application-form .form-group textarea:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #18454c1a}.application-form .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.action-buttons{display:flex;gap:.5rem;align-items:center}.btn-icon{padding:.5rem;background:transparent;border:1px solid var(--gray-border);border-radius:.375rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.btn-icon svg{width:1rem;height:1rem}.item-form{display:flex;flex-direction:column;gap:16px}.form-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.section-title{font-size:1.1rem;font-weight:700;color:var(--main-blue);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--main-blue)}@media (max-width: 480px){.items-header{flex-direction:column;align-items:stretch}.filters{flex-direction:column}.btn-primary{width:100%;justify-content:center}}.welfare-applications{width:100%}.applications-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.btn-filter{position:relative;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:#fff;border:2px solid var(--gray-border);border-radius:8px;font-weight:600;color:#333;cursor:pointer;transition:all .2s ease}.btn-filter .filter-badge{position:absolute;top:4px;right:4px;width:8px;height:8px;background:var(--main-accent, #ff811b);border-radius:50%}.applications-table-container{background:#fff;border-radius:.75rem;box-shadow:0 2px 4px #00000014;overflow:hidden;width:100%;box-sizing:border-box}.applications-table{width:100%;border-collapse:collapse;font-size:.9rem}.applications-table thead{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.applications-table th{padding:1rem .875rem;text-align:left;font-weight:600;font-size:.9rem;white-space:nowrap}.applications-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.applications-table tbody tr:hover{background-color:#f8fafc}.applications-table tbody tr:last-child{border-bottom:none}.applications-table td{padding:1rem .875rem;vertical-align:middle;color:#475569}.reason-preview{font-size:.85rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:250px}.status-draft{background:#e5e7eb;color:#6b7280}.status-processing{background:#fef3c7;color:#92400e}.status-completed{background:#dcfce7;color:#166534}.status-cancelled{background:#f3f4f6;color:#6b7280}@media (max-width: 1200px){.applications-table{font-size:.85rem}.applications-table th,.applications-table td{padding:.875rem .625rem}}@media (max-width: 768px){.applications-table-container{overflow-x:auto}.applications-table{min-width:1000px;font-size:.8rem}.applications-table th,.applications-table td{padding:.75rem .5rem}}@media (max-width: 480px){.applications-table{min-width:900px;font-size:.75rem}.cell-content svg{width:.875rem;height:.875rem}}.public-meal-order{padding:16px 0}.public-meal-order-card{max-width:520px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:24px}.public-meal-order-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.public-meal-order-header h2{margin:0 0 4px;font-size:22px;color:#333}.public-meal-order-header p{margin:0;color:#666;font-size:14px}.order-window-info{background:#f8f9fa;border-radius:8px;padding:14px 16px;margin-bottom:20px}.window-row{display:flex;justify-content:space-between;padding:4px 0;font-size:14px}.window-row .label{color:#555}.window-row .value{font-weight:600;color:#333}.lunch-fixed-hint{margin:2px 0 8px;font-size:13px;color:#0d6efd}.lunch-fixed-badge{display:flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:12px;border-radius:8px;background:#e7f3ff;color:#0d6efd;font-size:14px}.window-status{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e9ecef;font-size:14px}.window-status.open{color:#155724}.window-status.closed{color:#856404}.public-meal-message{padding:12px 14px;border-radius:8px;margin-bottom:16px;font-size:14px}.public-meal-language-bar{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.public-meal-language-bar label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:#555}.public-meal-form input,.public-meal-form select,.public-meal-select{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:8px;font-size:16px;box-sizing:border-box;background:#fff;color:#333}.public-meal-form input:disabled,.public-meal-form select:disabled,.public-meal-select:disabled{background:#f5f5f5}.public-meal-form .form-group{margin-bottom:16px}.public-meal-form label{display:block;margin-bottom:6px;font-weight:600;color:#333;font-size:14px}.current-meal-badge{text-align:center;padding:8px 12px;margin-bottom:16px;background:#e7f3ff;color:#0d6efd;border-radius:8px;font-weight:600}.btn-submit{width:100%;padding:14px;border:none;border-radius:8px;background:#4472c4;color:#fff;font-size:16px;font-weight:600;cursor:pointer}.btn-submit:disabled{background:#adb5bd;cursor:not-allowed}.btn-submit:not(:disabled):hover{background:#365899}.orderer-field{position:relative}.orderer-lookup-hint{position:absolute;right:12px;top:38px;color:#888;font-size:12px}.orderer-suggestions{list-style:none;margin:6px 0 0;padding:0;border:1px solid #ced4da;border-radius:8px;background:#fff;max-height:220px;overflow-y:auto;box-shadow:0 4px 12px #00000014;z-index:10}.orderer-suggestion-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:none;border-bottom:1px solid #f0f0f0;background:#fff;cursor:pointer;text-align:left}.orderer-suggestion-item:last-child{border-bottom:none}.orderer-suggestion-item:hover{background:#f8f9fa}.suggestion-name{font-weight:600;color:#333;font-size:14px}.suggestion-meta{font-size:12px;color:#666}.orderer-matched-info{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;border-radius:8px;background:#e7f3ff;color:#0d6efd;font-size:13px}.existing-order-panel{margin-bottom:16px;padding:14px 16px;border-radius:8px;background:#fff8e6;border:1px solid #ffe08a}.existing-order-title{display:flex;align-items:center;gap:8px;font-weight:600;color:#856404;margin-bottom:6px}.existing-order-hint{margin:0 0 10px;font-size:13px;color:#6c5700}.existing-order-details{list-style:none;margin:0;padding:0}.existing-order-details li{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:14px;border-bottom:1px solid #f3e6b3}.existing-order-details li:last-child{border-bottom:none}.existing-order-details span{color:#666}.meal-registration-list-page{padding:20px;width:100%;box-sizing:border-box}.list-header{display:flex;flex-direction:column;gap:16px;width:100%;min-width:0;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;margin-bottom:24px}.list-header h2{margin:0;color:#333}.list-retention-hint{margin:4px 0 0;font-size:13px;color:#6b7280}.list-header-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.list-header-title-block{min-width:0}.list-header-actions{margin-left:auto;display:flex;align-items:center;gap:10px;justify-content:flex-end}.btn-filter{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--gray-border);background:#fff;color:var(--main-blue);padding:8px 12px;border-radius:8px;cursor:pointer;font-weight:600}.btn-filter:hover{background:#f8fafc}.filter-modal .form-group label{display:block;margin-bottom:6px;font-weight:600;color:#374151}.filter-modal .form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.today-order-summary{padding-top:4px;border-top:1px solid #e5e7eb}.today-order-summary__title{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:14px;font-weight:600;color:#374151}.today-order-summary__date{font-weight:500;color:#6b7280;font-size:13px}.today-order-summary__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.today-order-card{display:flex;flex-direction:row;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;border:1px solid transparent;flex-wrap:nowrap;min-width:0}.today-order-card__actions{display:flex;gap:8px;margin-left:auto;flex-shrink:0}.today-order-card__btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(0,0,0,.08);border-radius:8px;background:#ffffffe6;color:#374151;cursor:pointer;transition:background .2s ease,border-color .2s ease}.today-order-card__btn:hover:not(:disabled){background:#fff;border-color:#9ca3af}.today-order-card__btn:disabled{opacity:.6;cursor:not-allowed}.btn-export-list{display:inline-flex;align-items:center;gap:8px;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;padding:8px 12px;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px}.btn-export-list:hover:not(:disabled){background:#dbeafe}.btn-export-list:disabled{opacity:.6;cursor:not-allowed}.export-list-actions{flex-wrap:wrap}.today-order-card--lunch{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fde68a}.today-order-card--dinner{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe}.today-order-card__icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:#ffffffbf;font-size:18px;flex-shrink:0}.today-order-card--lunch .today-order-card__icon{color:#d97706}.today-order-card--dinner .today-order-card__icon{color:#2563eb}.today-order-card__content{display:flex;flex-direction:column;justify-content:center;gap:2px;flex:1;min-width:0}.today-order-card__label{font-size:13px;font-weight:600;color:#4b5563;white-space:nowrap}.today-order-card__value-row{display:flex;align-items:baseline;gap:4px}.today-order-card__value{font-size:28px;font-weight:700;line-height:1.1;color:#111827}.today-order-card--lunch .today-order-card__value{color:#b45309}.today-order-card--dinner .today-order-card__value{color:#1d4ed8}.today-order-card__unit{font-size:14px;font-weight:600;color:#6b7280}@media (max-width: 768px){.today-order-summary__cards{grid-template-columns:1fr}}.filter-modal .search-input,.filter-modal .filter-select,.filter-modal .filter-input{width:100%}.filter-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.search-input,.filter-select,.filter-input{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.search-input{min-width:200px}.registrations-table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.registrations-table{width:100%;border-collapse:collapse;position:relative}.registrations-table td{padding:12px;border-bottom:1px solid #dee2e6;position:relative}.employee-number{color:#666;font-size:.9em;margin-left:4px}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.status-registered{background:#e3f2fd;color:#1976d2}.status-badge.status-confirmed{background:#e8f5e9;color:#388e3c}.status-badge.status-cancelled{background:#ffebee;color:#d32f2f}.action-menu-item.danger:hover{background:#fee2e2;color:#991b1b}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px}.btn-pagination{padding:8px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s}.btn-pagination:hover:not(:disabled){background:#f8f9fa;border-color:#007bff}.btn-pagination:disabled{opacity:.5;cursor:not-allowed}.page-info{color:#666;font-size:14px}.registration-detail{padding:20px}.detail-row{display:flex;margin-bottom:16px;align-items:flex-start}.detail-row label{min-width:120px;font-weight:600;color:#333;margin-right:12px}.detail-row span{flex:1;color:#666}.detail-row input,.detail-row textarea{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit}.detail-row textarea{min-height:80px;resize:vertical}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid #eee}.batch-actions{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f0f7ff;border:1px solid #b3d9ff;border-radius:8px;margin-bottom:16px}.selected-count{color:#06c;font-weight:600;font-size:14px}.btn-batch-delete{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:background .2s ease}.btn-batch-delete:hover:not(:disabled){background:#b91c1c}.registrations-table th:first-child,.registrations-table td:first-child{text-align:center;width:40px}.registrations-table th:first-child input[type=checkbox],.registrations-table td:first-child input[type=checkbox]{cursor:pointer;width:18px;height:18px}.order-source-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;white-space:nowrap}.order-source-badge.public{background-color:#e7f3ff;color:#0d6efd}.order-source-badge.system{background-color:#f0f0f0;color:#555}.meal-menu-management-page{width:100%}.menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.menu-header h2{margin:0;font-size:1.5rem;color:var(--main-blue)}.menu-header-actions{margin-left:auto;display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.btn-filter{display:inline-flex;align-items:center;gap:8px;border:2px solid var(--gray-border);background:#fff;color:var(--main-blue);padding:10px 14px;border-radius:8px;cursor:pointer;font-weight:600}.btn-filter:hover{background:#f8fafc;border-color:var(--main-blue)}.filter-badge{width:8px;height:8px;border-radius:50%;background:#ef4444;display:inline-block}.filter-select{padding:8px 12px;border:2px solid var(--gray-border);border-radius:8px;font-size:.9rem}.filter-modal .form-group label{display:block;margin-bottom:6px;font-weight:600;color:#374151;cursor:default}.filter-modal .filter-select{width:100%}.filter-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--main-blue);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover{background:#1a4d56;transform:translateY(-2px);box-shadow:0 4px 12px #18454c4d}.menus-table-container{background:#fff;border-radius:.75rem;box-shadow:0 2px 4px #00000014;overflow:hidden;width:100%;box-sizing:border-box}.menus-table{width:100%;border-collapse:collapse;font-size:.9rem}.menus-table thead{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.menus-table th{padding:1rem .875rem;text-align:left;font-weight:600;font-size:.9rem;white-space:nowrap}.menus-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.menus-table tbody tr:hover{background-color:#f8fafc}.menus-table tbody tr:last-child{border-bottom:none}.menus-table td{padding:1rem .875rem;vertical-align:middle;color:#475569}.description-preview{font-size:.85rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.type-badge{display:inline-block;padding:.35rem .75rem;background:#e0e7ff;color:#3730a3;border-radius:.375rem;font-size:.8rem;font-weight:600;white-space:nowrap}.status-badge{display:inline-block;padding:.35rem .75rem;border-radius:.375rem;font-size:.8rem;font-weight:600;white-space:nowrap}.status-badge.status-active{background:#d1fae5;color:#065f46}.status-badge.status-inactive{background:#e5e7eb;color:#6b7280}.btn-action-menu{background:transparent;border:none;cursor:pointer;padding:6px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s ease;color:#666;width:32px;height:32px}.btn-action-menu:hover{background:#f0f0f0}.action-menu{position:fixed;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:150px;z-index:10000;overflow:hidden;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.action-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:transparent;cursor:pointer;text-align:left;font-size:14px;color:#333;transition:background .2s ease}.action-menu-item:hover{background:#f5f5f5}.action-menu-item.success{color:#0f766e}.action-menu-item.success:hover{background:#ecfdf5;color:#047857}.action-menu-item.warning{color:#9a3412}.action-menu-item.warning:hover{background:#fff7ed;color:#c2410c}.action-menu-item.danger{color:#dc3545}.action-menu-item.danger:hover{background:#fee;color:#c82333}.action-menu-item svg{width:16px;height:16px}.menu-form{display:flex;flex-direction:column;gap:16px}.form-group label{font-weight:600;color:var(--main-blue)}.form-group input,.form-group textarea,.form-group select{padding:10px;border:2px solid var(--gray-border);border-radius:8px;font-size:.9rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--main-blue)}.form-group label input[type=checkbox]{margin-right:.5rem;width:auto}.form-group .form-hint{display:block;margin-top:4px;font-size:12px;color:#666;font-weight:400;line-height:1.4}.menu-options-editor{display:flex;flex-direction:column;gap:8px}.menu-option-row{display:flex;align-items:center;gap:8px}.menu-option-row input{flex:1}.btn-option-add{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:fit-content;padding:8px 12px;border:1px dashed var(--main-blue);border-radius:8px;background:#f8fafc;color:var(--main-blue);cursor:pointer;font-size:.9rem;font-weight:600}.btn-option-add:hover{background:#eef4ff}.btn-option-remove{width:36px;height:36px;border:1px solid #ef4444;border-radius:8px;background:#fff;color:#ef4444;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.btn-option-remove:hover{background:#fef2f2}.checkbox-disabled{opacity:.45;cursor:not-allowed}.checkbox-disabled input[type=checkbox]{cursor:not-allowed}.badge-sub{display:inline-block;margin-left:6px;padding:1px 6px;font-size:.72em;background:#fff;color:var(--main-blue, #007bff);border:1px solid currentColor;border-radius:4px;vertical-align:middle;font-weight:600}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:1.5rem;border-top:2px solid #e5e7eb}.btn-secondary{padding:10px 20px;background:#fff;color:var(--main-blue);border:2px solid var(--gray-border);border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#f3f4f6;border-color:var(--main-blue)}.no-data{text-align:center;padding:60px 20px;color:#6b7280;font-size:1.1rem}.loading{text-align:center;padding:60px 20px;color:var(--main-blue);font-size:1.1rem}@media (max-width: 1200px){.menus-table{font-size:.85rem}.menus-table th,.menus-table td{padding:.875rem .625rem}}@media (max-width: 768px){.menus-table-container{overflow-x:auto}.menus-table{min-width:800px;font-size:.8rem}.menus-table th,.menus-table td{padding:.75rem .5rem}}.meal-statistics-page{padding:20px}.view-tabs{display:flex;gap:12px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.view-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-radius:8px;color:#6b7280;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95rem}.view-tab:hover{background:#f3f4f6;color:var(--main-blue)}.view-tab.active{background:var(--main-blue);color:#fff}.view-tab svg{width:18px;height:18px}.statistics-header{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.statistics-header h2{margin:0}.header-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.btn-filter-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;cursor:pointer;font-size:14px;font-weight:600;width:fit-content;min-width:140px}.btn-filter-toggle:hover{border-color:#9ca3af;background:#f9fafb}.btn-filter-toggle.open{border-color:var(--main-blue);color:var(--main-blue)}.filter-toggle-left{display:flex;align-items:center;gap:8px}.meal-filter-badge{width:8px;height:8px;border-radius:50%;background:#ef4444;display:inline-block}.meal-filter-modal .form-group{margin-bottom:12px}.meal-filter-modal label{display:block;margin-bottom:6px;font-weight:600;color:#374151}.meal-filter-modal .form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.export-hint{margin:0 0 16px;color:#6b7280;font-size:14px;line-height:1.5}.statistics-header h2{margin:0;color:#333}.filter-select,.filter-input{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.total-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.total-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;text-align:center}.total-label{font-size:14px;color:#666;margin-bottom:8px}.total-value{font-size:32px;font-weight:700;color:#333}.total-value.confirmed{color:#28a745}.total-value.cancelled{color:#dc3545}.statistics-table-container{background:#fff;border-radius:8px;overflow-x:auto;box-shadow:0 2px 4px #0000001a}.statistics-table{width:100%;min-width:960px;border-collapse:collapse;table-layout:auto}.statistics-table th{background:#f8f9fa;padding:12px 14px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #dee2e6;white-space:nowrap}.statistics-table td{padding:14px;border-bottom:1px solid #dee2e6;vertical-align:top}.statistics-table th.col-meal-type,.statistics-table td.col-meal-type{width:88px;white-space:nowrap}.statistics-table th.col-date,.statistics-table td.col-date{width:112px;white-space:nowrap}.statistics-table th.col-number,.statistics-table td.col-number{width:72px;text-align:center;white-space:nowrap}.statistics-table th.col-department,.statistics-table td.col-department{min-width:320px}.statistics-table th.col-menu,.statistics-table td.col-menu{min-width:200px}.statistics-table tr:hover{background:#f8f9fa}.statistics-table td.confirmed{color:#28a745;font-weight:600}.statistics-table td.cancelled{color:#dc3545;font-weight:600}.stat-chip-list{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;max-width:100%}.stat-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:8px;font-size:13px;line-height:1.35;border:1px solid transparent;max-width:100%}.stat-chip--dept{background:#eff6ff;border-color:#bfdbfe;color:#1e3a5f}.stat-chip--menu{background:#f0fdf4;border-color:#bbf7d0;color:#14532d}.stat-chip__label{word-break:break-word;white-space:normal}.stat-chip__count{flex-shrink:0;min-width:1.5em;padding:2px 8px;border-radius:999px;background:#ffffffd9;font-weight:700;text-align:center}.stat-chip--dept .stat-chip__count{color:#1d4ed8}.stat-chip--menu .stat-chip__count{color:#15803d}.loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px}.welfare-management-page{width:100%;min-height:100vh;background:linear-gradient(135deg,#f0f9ff,#e0f2fe,#dbeafe);padding:0}.welfare-management-page.embedded{background:transparent;padding:0}.welfare-container{max-width:1400px;margin:0 auto;width:100%;padding:30px 20px}.welfare-management-page .welfare-tabs{display:flex;gap:16px;margin-bottom:30px;background:#fff;padding:12px;border-radius:16px;box-shadow:0 4px 20px #18454c1a;border:1px solid rgba(24,69,76,.1)}.welfare-management-page .welfare-tabs .tab-button{display:flex;align-items:center;gap:10px;padding:14px 28px;background:transparent;border:none;border-radius:12px;color:#6b7280;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:1rem;position:relative;overflow:hidden;flex:1 1 0;min-width:0;justify-content:center}.welfare-management-page .welfare-tabs .tab-button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);opacity:0;transition:opacity .3s ease}.welfare-management-page .welfare-tabs .tab-button:hover{background:#f3f4f6;color:var(--main-blue);transform:translateY(-2px)}.welfare-management-page .welfare-tabs .tab-button.active{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;box-shadow:0 4px 15px #18454c4d}.welfare-management-page .welfare-tabs .tab-button.active:before{opacity:0}.welfare-management-page .welfare-tabs .tab-button svg{width:20px;height:20px;position:relative;z-index:1;flex-shrink:0}.welfare-management-page .welfare-tabs .tab-button span{position:relative;z-index:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.welfare-content{background:#fff;border-radius:20px;padding:40px;box-shadow:0 8px 40px #18454c1f;border:1px solid rgba(24,69,76,.1);min-height:500px}@media (max-width: 768px){.welfare-container{padding:16px 12px}.welfare-management-page .welfare-tabs{flex-direction:column;gap:8px;padding:8px;margin-bottom:16px}.welfare-management-page .welfare-tabs .tab-button{width:100%;flex:none;padding:12px 16px;font-size:.95rem;justify-content:flex-start;transform:none}.welfare-management-page .welfare-tabs .tab-button:hover{transform:none}.welfare-management-page .welfare-tabs .tab-button span{white-space:normal;overflow:visible;text-overflow:unset}.welfare-content{padding:20px 16px;border-radius:16px;min-height:auto}}.meal-registration-page{min-height:100vh;background:#f5f5f5}.meal-registration-container{max-width:800px;margin:0 auto;padding:20px}.message{padding:12px 16px;border-radius:8px;margin-bottom:20px}.message-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.message-info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;font-size:16px}.scan-section,.menu-section,.confirm-section{padding:20px 0}.scan-section h2,.menu-section h2,.confirm-section h2{margin-top:0;margin-bottom:20px;color:#333}.btn-scan{width:100%;padding:16px;font-size:18px;margin-top:20px}.scanner-container{position:relative;margin-top:20px;border-radius:8px;overflow:hidden}.scanner-video{width:100%;max-width:500px;height:auto;display:block;margin:0 auto}.scanner-error{padding:12px;background:#f8d7da;color:#721c24;text-align:center;margin-top:10px}.btn-close-scanner{width:100%;margin-top:10px}.registration-info{background:#f8f9fa;padding:16px;border-radius:8px;margin-bottom:24px}.registration-info p{margin:8px 0;color:#555}.registration-info .form-row{display:flex;gap:16px;flex-wrap:wrap}.registration-info .form-group{flex:1;min-width:200px}.registration-info .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.registration-info .form-group input,.registration-info .form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.registration-info .form-group input:focus,.registration-info .form-group select:focus{outline:none;border-color:var(--main-blue, #007bff);box-shadow:0 0 0 3px #007bff1a}.menu-options{margin:24px 0}.menu-options h3{margin-bottom:16px;color:#333}.menu-option{display:flex;align-items:center;padding:16px;border:2px solid #e0e0e0;border-radius:8px;margin-bottom:12px;cursor:pointer;transition:all .3s}.menu-option:hover{border-color:#007bff;background:#f0f8ff}.fixed-menus-section,.selectable-menus-section{margin-bottom:24px}.fixed-menus-section h3,.selectable-menus-section h3{margin-bottom:16px;color:#333;font-size:16px}.menu-item.fixed-menu{padding:16px;border:2px solid #e0e0e0;border-radius:8px;margin-bottom:12px;background:#f8f9fa}.menu-item.fixed-menu .menu-option-content{display:flex;flex-direction:column;gap:8px}.menu-option input[type=radio]{margin-right:12px;width:20px;height:20px;cursor:pointer}.menu-option-content{flex:1}.menu-option-label{font-weight:600;font-size:16px;color:#333;margin-bottom:4px}.menu-option-description{font-size:14px;color:#666}.action-buttons{display:flex;gap:12px;margin-top:24px}.action-buttons button{flex:1;padding:12px 24px}.confirm-section{text-align:center}.my-registrations-section{margin-top:40px;padding-top:30px;border-top:2px solid #e0e0e0}.my-registrations-section h3{margin-bottom:20px;color:#333;font-size:1.2em}.registrations-table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;margin-top:20px}.registrations-table{width:100%;border-collapse:collapse}.registrations-table th{background:#f8f9fa;padding:12px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #dee2e6}.registrations-table td{padding:12px;border-bottom:1px solid #dee2e6}.registrations-table tr:hover{background:#f8f9fa}.btn-action-menu{background:transparent;border:1px solid #e5e7eb;border-radius:6px;padding:6px 10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s ease}.btn-action-menu:hover{background:#f3f4f6;border-color:#d1d5db;color:var(--main-blue, #007bff)}.btn-action-menu:disabled{opacity:.5;cursor:not-allowed}.action-menu{position:fixed;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:10000;overflow:hidden}.action-menu-item{width:100%;padding:10px 16px;text-align:left;background:#fff;border:none;cursor:pointer;display:flex;align-items:center;gap:8px;color:#374151;font-size:14px;transition:background .2s ease}.action-menu-item:hover:not(:disabled){background:#f3f4f6}.action-menu-item.danger:hover:not(:disabled){background:#fee2e2;color:#991b1b}.action-menu-item svg{width:14px;height:14px}.edit-form-inline{display:flex;flex-direction:column;gap:10px}.edit-form-inline .menu-options{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto}.edit-form-inline .menu-option{display:flex;align-items:center;gap:8px;padding:6px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px}.edit-form-inline .menu-option:hover{background:#f5f5f5}.edit-form-inline .menu-option input[type=radio]{margin:0}.edit-form-inline .menu-description{font-size:.85em;color:#666;margin-left:8px}.edit-actions{display:flex;gap:8px;margin-top:8px}.edit-actions button{padding:6px 12px;font-size:13px;display:flex;align-items:center;gap:4px}.edit-input,.edit-select{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:13px;width:100%}.edit-input:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.6}.btn-success{background:#28a745;color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px;transition:background .2s ease}.btn-success:hover:not(:disabled){background:#218838}.btn-success:disabled{opacity:.5;cursor:not-allowed}.edit-modal-content{display:flex;flex-direction:column;gap:20px}.edit-modal-content .form-group{display:flex;flex-direction:column;gap:8px}.edit-modal-content .form-group label{font-weight:600;color:#333;font-size:14px}.edit-modal-content .form-input,.edit-modal-content .form-select{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;width:100%;transition:border-color .2s ease}.edit-modal-content .form-input:focus,.edit-modal-content .form-select:focus{outline:none;border-color:var(--main-blue, #007bff);box-shadow:0 0 0 3px #007bff1a}.edit-modal-content .menu-options{display:flex;flex-direction:column;gap:12px;margin-top:8px}.edit-modal-content .menu-option{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s ease}.edit-modal-content .menu-option:hover{background:#f8f9fa;border-color:var(--main-blue, #007bff)}.edit-modal-content .menu-option input[type=radio]{margin:0;cursor:pointer}.edit-modal-content .menu-option input[type=radio]:checked+span{font-weight:600;color:var(--main-blue, #007bff)}.edit-modal-content .menu-description{font-size:.85em;color:#666;margin-left:auto}.menu-option-legacy{border:1px dashed #e0a800;border-radius:8px;padding:8px 12px;background:#fffbf0;margin-bottom:4px}.legacy-badge{display:block;font-size:.78em;color:#b07d00;font-weight:600;margin-bottom:6px;letter-spacing:.02em}.menu-option--legacy{border-color:#f0c040!important;background:transparent}.menu-option--legacy input[type=radio]:checked+span{color:#b07d00!important;font-weight:600}.edit-modal-content .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:20px;border-top:1px solid #eee}.registrations-table .employee-number{color:#666;font-size:.9em;margin-left:4px}.registrations-table .status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.registrations-table .status-badge.status-registered{background:#e3f2fd;color:#1976d2}.registrations-table .status-badge.status-confirmed{background:#e8f5e9;color:#388e3c}.registrations-table .status-badge.status-cancelled{background:#ffebee;color:#d32f2f}.registrations-table .action-buttons{display:flex;gap:8px}.registrations-table .action-buttons button{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:4px;font-size:14px;transition:all .2s ease}.registrations-table .action-buttons .btn-primary{background:#007bff;color:#fff}.registrations-table .action-buttons .btn-primary:hover:not(:disabled){background:#0056b3}.registrations-table .action-buttons .btn-danger{background:#dc3545;color:#fff}.registrations-table .action-buttons .btn-danger:hover:not(:disabled){background:#c82333}.registrations-table .action-buttons button:disabled{opacity:.5;cursor:not-allowed}.registrations-list{display:flex;flex-direction:column;gap:15px}.registration-item{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:15px}.registration-info{display:flex;flex-direction:column;gap:10px}.info-row{display:flex;align-items:center;gap:10px}.info-row .label{font-weight:600;color:#666;min-width:100px}.info-row .value{color:#333}.status-badge.status-registered{background:#fff3cd;color:#856404}.status-badge.status-confirmed{background:#d4edda;color:#155724}.status-badge.status-cancelled{background:#f8d7da;color:#721c24}.registration-item .action-buttons{display:flex;gap:10px;margin-top:10px}.registration-item .btn-primary,.registration-item .btn-secondary,.registration-item .btn-danger{padding:8px 16px;font-size:.9em}.edit-form{display:flex;flex-direction:column;gap:15px}.edit-form .menu-options{display:flex;flex-direction:column;gap:8px;margin-top:10px}.edit-form .menu-option{display:flex;align-items:center;gap:8px;padding:8px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer}.edit-form .menu-option:hover{background:#f5f5f5}.edit-form .menu-option input[type=radio]{margin:0}.edit-form .menu-description{font-size:.85em;color:#666;margin-left:8px}.no-data-message{text-align:center;color:#999;padding:20px}.success-icon{font-size:64px;color:#28a745;margin-bottom:20px}.registration-details{background:#f8f9fa;padding:20px;border-radius:8px;margin:24px 0;text-align:left}.registration-details p{margin:12px 0;color:#555}.leave-request-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.leave-request-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.leave-form-container{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.leave-request-page .form-header{margin-bottom:30px}.leave-request-page .page-title{font-size:2.5em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:2px}.leave-request-page .form-group{display:flex;flex-direction:column;gap:10px;margin-bottom:25px}.leave-request-page .form-group label{font-weight:600;color:var(--main-blue);font-size:1.05em}.leave-request-page .form-group input,.leave-request-page .form-group textarea,.leave-request-page .form-group select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box}.leave-request-page .form-group input:focus,.leave-request-page .form-group textarea:focus,.leave-request-page .form-group select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.leave-request-page .form-group textarea{resize:vertical;min-height:120px;line-height:1.6}.leave-request-page .form-group input[type=date],.leave-request-page .form-group input[type=time],.leave-request-page .form-group input[type=number]{cursor:pointer}.leave-request-page .form-group input[type=number]:read-only{background:#f9fafb;cursor:not-allowed}.leave-request-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.leave-request-page .form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:30px;border-top:2px solid var(--gray-border)}.leave-request-page .btn-cancel,.leave-request-page .btn-submit{padding:12px 30px;border-radius:8px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease}.leave-request-page .btn-cancel{background:#fff;color:var(--main-blue);border:2px solid var(--main-blue)}.leave-request-page .btn-cancel:hover:not(:disabled){background:var(--main-blue-light)}.leave-request-page .btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none}.leave-request-page .btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.leave-request-page .btn-cancel:disabled,.leave-request-page .btn-submit:disabled{opacity:.6;cursor:not-allowed}.leave-request-page .readonly-input{background:#f9fafb;cursor:not-allowed;color:var(--main-blue);font-weight:600}.pending-approval-section{margin-top:40px;padding-top:30px;border-top:2px solid var(--gray-border)}@media (max-width: 768px){.leave-request-page .form-row{grid-template-columns:1fr}.leave-form-container{padding:25px}.pending-list-table th,.pending-list-table td{padding:10px 12px;font-size:.9em}}.leave-management-page{display:flex;min-height:100vh;background:#fff}.leave-management{max-width:1400px;margin:0 auto;width:100%;flex:1;display:flex;flex-direction:column}.status-filter{display:flex;gap:10px;margin-bottom:25px;flex-wrap:wrap}.leaves-table-container{overflow-x:auto;flex:1}.leaves-table{width:100%;border-collapse:collapse}.leaves-table thead{background:var(--main-blue-light)}.leaves-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);font-size:.9em;letter-spacing:.5px;border-bottom:2px solid var(--gray-border)}.leaves-table td{padding:15px;border-bottom:1px solid var(--gray-border);color:#374151}.leaves-table tbody tr:hover{background:var(--main-blue-light)}.status-badge.status-approved{background:#d1fae5;color:#059669}.status-badge.status-cancelled{background:#f3f4f6;color:#6b7280}.btn-approve{padding:6px 12px;background:#d1fae5;color:#059669;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.85em}.btn-approve:hover{background:#059669;color:#fff}.btn-reject{padding:6px 12px;background:#fee2e2;color:#991b1b;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.85em}.btn-reject:hover{background:#dc2626;color:#fff}.leave-form{display:flex;flex-direction:column;gap:20px}.leave-form textarea{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;resize:vertical;min-height:100px}.leave-form textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.calculated-days-display{padding:10px 12px;background:var(--gray-bg, #f9fafb);border-radius:8px;border:1px solid var(--gray-border, #e5e7eb)}.calculated-days-value{font-weight:600;color:var(--main-blue, #2563eb);margin-right:6px}.calculated-days-hint{color:#6b7280;font-size:.85em}.calculated-days-placeholder,.calculated-days-loading{color:#9ca3af;font-size:.95em}.time-picker-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:1.2em;cursor:pointer;pointer-events:auto}.period-btn{padding:10px 15px;border:2px solid var(--gray-border);border-radius:6px;background:#fff;color:var(--main-blue);font-weight:600;cursor:pointer;transition:all .3s ease;min-width:60px}.period-btn:hover{background:var(--main-blue-light)}.period-btn.active{background:var(--sidebar-bg);color:#fff;border-color:var(--main-blue)}.time-column{flex:1}.time-label{text-align:center;font-weight:600;color:var(--main-blue);margin-bottom:10px;font-size:.9em}.time-options{display:flex;flex-direction:column;gap:5px;max-height:200px;overflow-y:auto;padding:5px}.time-option{padding:8px 12px;border:2px solid var(--gray-border);border-radius:6px;background:#fff;color:var(--main-blue);font-weight:600;cursor:pointer;transition:all .3s ease;text-align:center;font-family:Courier New,monospace}.time-option.active{background:var(--sidebar-bg);color:#fff;border-color:var(--main-blue)}.approver-info{display:flex;flex-direction:column;gap:4px}.approver-name{font-weight:600;color:var(--main-blue);font-size:.95em}.approval-time{font-size:.85em;color:#6b7280}.no-approver{color:#9ca3af;font-style:italic}.proxy-combobox-input{width:100%;padding:10px 36px 10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;box-sizing:border-box;transition:border-color .2s,box-shadow .2s;background:#fff}.proxy-combobox-option{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;transition:background .15s;font-size:.9rem}.attendance-management-page{display:flex;min-height:100vh;background:#fff}.attendance-management-page.embedded{background:transparent;min-height:auto}.attendance-tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:2px solid var(--gray-border)}.attendance-tabs .tab-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;color:#334155;font-size:1em;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:-2px}.attendance-tabs .tab-btn:hover{color:#0d5d6b}.attendance-tabs .tab-btn.active{color:#0d5d6b;border-bottom-color:var(--main-accent)}.attendance-tabs .tab-badge{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:.75em;padding:2px 8px;border-radius:10px}.anomalies-tab-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-bottom:20px}.anomalies-tab-filters .filter-group{display:flex;align-items:center;gap:8px}.anomalies-tab-filters .filter-group label{font-weight:600;color:#475569;font-size:.875rem;white-space:nowrap}.anomalies-tab-filters .filter-group select,.anomalies-tab-filters .filter-group input[type=date]{padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:.9rem}.anomalies-tab-filters .btn-send-notification{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:linear-gradient(135deg,#147886,#0d5d6b);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.anomalies-tab-filters .btn-send-notification:hover:not(:disabled){background:linear-gradient(135deg,#0d5d6b,#0a4a54);transform:translateY(-1px)}.anomalies-tab-filters .btn-send-notification:disabled{opacity:.6;cursor:not-allowed}.anomalies-table-section{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.anomalies-table-section .empty-state{padding:40px;text-align:center;color:#64748b}.anomalies-table-wrap{overflow-x:auto}.anomalies-table-wrap .type-badge{display:inline-block;padding:4px 10px;border-radius:8px;font-size:.85em;font-weight:600}.anomalies-table-wrap .type-badge.missing_in{background:#fef3c7;color:#92400e}.anomalies-table-wrap .type-badge.missing_out{background:#fee2e2;color:#991b1b}.anomalies-table-wrap .type-badge.missing_both{background:#e0e7ff;color:#4338ca}.anomalies-table-wrap .btn-leave-request{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:.85em;font-weight:600;cursor:pointer;transition:all .2s}.anomalies-table-wrap .btn-leave-request:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px)}.supplemental-pending-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:12px;padding:16px 20px;margin-bottom:20px}.supplemental-pending-header{display:flex;align-items:center;gap:8px;font-weight:700;color:#92400e;margin-bottom:12px}.supplemental-pending-list{display:flex;flex-direction:column;gap:10px}.supplemental-pending-item{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 12px;background:#fff;border-radius:8px;font-size:.9em}.supplemental-pending-item .supp-type{color:#b45309;font-weight:600}.supplemental-pending-item .supp-reason{color:#64748b;flex:1;min-width:120px}.supplemental-pending-item .supp-actions{display:flex;gap:8px}.supplemental-pending-item .btn-approve{padding:6px 14px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer}.supplemental-pending-item .btn-reject{padding:6px 14px;background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;border-radius:6px;font-weight:600;cursor:pointer}.hr-sidebar{position:fixed;top:0;left:0;width:280px;height:100vh;background:var(--sidebar-bg);overflow-y:auto;overflow-x:hidden;z-index:1000;box-shadow:4px 0 20px #14788633;display:flex;flex-direction:column}.hr-sidebar .sidebar-header{padding:25px 20px;border-bottom:1px solid rgba(255,255,255,.1);text-align:center}.hr-sidebar .sidebar-logo{width:50px;height:50px;margin:0 auto 15px;background:linear-gradient(135deg,var(--main-accent) 0%,#ff9540 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:1.5em;box-shadow:0 4px 20px #ff812b4d}.hr-sidebar .sidebar-title{color:#fff;font-size:1.1em;font-weight:700;letter-spacing:1px;margin:0}.hr-sidebar .sidebar-subtitle{color:#ffffffb3;font-size:.85em;margin:5px 0 0;letter-spacing:.5px}.hr-sidebar .sidebar-nav{padding:20px 0;flex:1;overflow-y:auto}.hr-sidebar .nav-item{display:flex;align-items:center;gap:12px;color:#ffffffe6;padding:12px 20px;text-decoration:none;transition:all .3s ease;border-left:4px solid transparent;background:none;border-right:none;border-top:none;border-bottom:none;width:100%;text-align:left;cursor:pointer;font-size:1em;font-family:inherit}.hr-sidebar .nav-item:hover{background:#ffffff1a;color:#fff}.hr-sidebar .nav-item.active{background:var(--sidebar-active-bg);color:#fff;border-left-color:var(--sidebar-active-border);font-weight:600}.hr-sidebar .nav-icon{font-size:1.2em;min-width:20px}.hr-sidebar .sidebar-footer{padding:20px;border-top:1px solid rgba(255,255,255,.1);margin-top:auto;flex-shrink:0}.hr-sidebar .back-to-dashboard{width:100%;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:12px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:0}.hr-sidebar .back-to-dashboard:hover{background:#fff3}.attendance-management{max-width:1400px;margin:0 auto;width:100%;flex:1;display:flex;flex-direction:column;gap:25px}.hr-main{margin-left:280px;flex:1;min-height:100vh;padding:30px 40px;display:flex;flex-direction:column;background:#fff}.hr-main-embedded{margin-left:0;flex:1;min-height:auto;padding:0;display:flex;flex-direction:column;background:transparent}.attendance-management-page.embedded .attendance-management{padding:0}.attendance-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat-card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 20px #008b8b14;border:1px solid var(--gray-border);display:flex;align-items:center;gap:15px}.stat-icon{font-size:2.5em;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--main-blue-light);border-radius:12px;color:var(--main-blue)}.stat-value{font-size:2em;font-weight:800;color:var(--main-blue);margin-bottom:5px}.stat-label{font-size:.9em;color:#6b7280;font-weight:600}.filter-section{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #008b8b14;border:1px solid var(--gray-border);display:flex;gap:24px;align-items:flex-end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:10px;flex:0 1 auto;min-width:180px;max-width:280px}.filter-group.filter-group-button{flex-direction:row;min-width:auto;max-width:none}.filter-group.filter-group-inline{flex-direction:row;align-items:center;min-width:auto}.export-modal .form-group{margin-bottom:20px}.export-modal .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.export-modal .form-group select,.export-modal .form-group input[type=date]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.export-modal .export-date-range{display:flex;align-items:center;gap:8px}.export-modal .export-date-range input{flex:1}.export-modal .export-date-range span{color:#666}.export-modal .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.filter-group-button{flex:0 0 auto;min-width:auto;max-width:none;display:flex;flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap;width:100%;max-width:600px}.filter-group-button .btn-view-my-attendance{margin-top:28px}.filter-toolbar{margin-bottom:16px}.filter-toolbar-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.btn-filter-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;min-width:120px;height:36px;border:2px solid var(--gray-border, #e2e8f0);background:#fff;color:var(--main-blue, #1e40af);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-filter-trigger:hover{background:#f8fafc;border-color:var(--main-accent, #ff811b)}.btn-filter-trigger .filter-badge{position:absolute;top:4px;right:4px;width:6px;height:6px;background:var(--main-accent, #ff811b);border-radius:50%}.btn-toolbar{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;min-width:120px;height:36px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s;box-sizing:border-box}.btn-toolbar.btn-import{background-color:#10b981;color:#fff}.btn-toolbar.btn-import:hover{background-color:#059669}.btn-toolbar.btn-export{background-color:#3b82f6;color:#fff}.btn-toolbar.btn-export:hover{background-color:#2563eb}.btn-toolbar.btn-recalculate{background-color:#f59e0b;color:#fff}.btn-toolbar.btn-recalculate:hover:not(:disabled){background-color:#d97706}.btn-toolbar.btn-recalculate:disabled{opacity:.6;cursor:not-allowed}.btn-toolbar.btn-exception{background-color:#8b5cf6;color:#fff}.btn-toolbar.btn-exception:hover{background-color:#7c3aed}.btn-toolbar.btn-view-my-attendance{background-color:#64748b;color:#fff}.btn-toolbar.btn-view-my-attendance:hover{background-color:#475569}.btn-toolbar.btn-send-notification{background:linear-gradient(135deg,#147886,#0d5d6b);color:#fff}.btn-toolbar.btn-send-notification:hover:not(:disabled){background:linear-gradient(135deg,#0d5d6b,#0a4a54)}.btn-import,.btn-export,.btn-recalculate,.btn-exception{background-color:#10b981;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px;transition:background-color .2s;font-weight:500;white-space:nowrap;min-width:140px;height:36px;box-sizing:border-box}.btn-import:hover{background-color:#059669}.btn-export{background-color:#3b82f6}.btn-export:hover{background-color:#2563eb}.btn-recalculate{background-color:#f59e0b}.btn-recalculate:hover:not(:disabled){background-color:#d97706}.btn-recalculate:disabled{opacity:.6;cursor:not-allowed}.filter-modal .form-group select,.filter-modal .form-group input[type=date]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}@media (min-width: 1200px){.filter-group{min-width:200px}}.filter-group select,.filter-group input{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box}.filter-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px;padding-right:40px}.filter-group input[type=date]{cursor:pointer}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.filter-group .btn-view-my-attendance{margin-top:0;align-self:flex-start}.filter-group:first-of-type .btn-view-my-attendance{margin-top:0}.btn-view-my-attendance{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:var(--main-blue);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;min-height:42px;height:fit-content}.btn-view-my-attendance:hover{background-color:var(--main-blue-hover);transform:translateY(-1px);box-shadow:0 2px 8px #1478864d}.btn-view-my-attendance:active{transform:translateY(0)}.attendances-table-container{overflow-x:auto;flex:1}.attendances-table{width:100%;border-collapse:collapse}.attendances-table thead{background:#e0f2f1}.attendances-table thead tr{white-space:nowrap}.attendances-table th{padding:15px;text-align:left;font-weight:700;color:#0f172a;font-size:.9em;letter-spacing:.5px;border-bottom:2px solid var(--gray-border);position:relative;white-space:nowrap}.attendances-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.attendances-table th.sortable:hover{background-color:#1478861a}.attendances-table th.sortable .sort-icon{margin-left:8px;font-size:.8em;color:var(--main-blue);opacity:.7}.attendances-table th.sortable:hover .sort-icon{opacity:1}.attendances-table td{padding:15px;border-bottom:1px solid var(--gray-border);color:#374151}.attendances-table tbody tr:hover{background:var(--main-blue-light)}.status-badge.status-normal{background:#d1fae5;color:#059669}.status-badge.status-late{background:#fef3c7;color:#92400e}.status-badge.status-early-leave{background:#ffedd5;color:#c2410c}.status-badge.status-absent{background:#fee2e2;color:#991b1b}.status-badge.status-leave{background:#ddd6fe;color:#7c3aed}.status-badge.status-anomaly{background:#fef3c7;color:#92400e;margin-left:6px}@media (max-width: 1200px){.hr-main{margin-left:0;padding:20px}.hr-sidebar{transform:translate(-100%);transition:transform .3s ease}.attendance-stats{grid-template-columns:repeat(2,1fr)}}.risk-score{display:inline-block;padding:4px 12px;border-radius:12px;font-weight:700;font-size:.9em}.risk-score.low-risk{background:#d1fae5;color:#059669}.risk-score.medium-risk{background:#fef3c7;color:#92400e}.risk-score.high-risk{background:#fee2e2;color:#991b1b}.btn-view-details{padding:6px 12px;border-radius:6px;font-size:.85em;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;background:var(--main-blue-light);color:var(--main-blue);display:flex;align-items:center;gap:6px}.btn-view-details:hover{background:var(--main-blue);color:#fff;transform:translateY(-1px)}.clock-details-modal{padding:20px}.attendance-info{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--gray-border)}.attendance-info h3{font-size:1.3em;font-weight:700;color:var(--main-blue);margin-bottom:15px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.info-label{font-size:.85em;color:#6b7280;font-weight:600}.info-value{font-size:1em;color:#374151;font-weight:500}.clock-records-section{margin-top:20px}.clock-records-section h3{font-size:1.3em;font-weight:700;color:var(--main-blue);margin-bottom:15px}.clock-records-list{display:flex;flex-direction:column;gap:15px}.clock-record-item{background:#f9fafb;border-radius:12px;padding:15px;border:1px solid var(--gray-border)}.record-header{display:flex;align-items:center;gap:15px;margin-bottom:10px;flex-wrap:wrap}.record-type{padding:6px 12px;border-radius:8px;font-weight:700;font-size:.9em}.record-type.type-in{background:#dbeafe;color:#1e40af}.record-type.type-out{background:#fce7f3;color:#9f1239}.record-time{font-weight:600;color:#374151}.risk-badge{padding:4px 10px;border-radius:8px;font-weight:700;font-size:.85em}.risk-badge.low{background:#d1fae5;color:#059669}.risk-badge.medium{background:#fef3c7;color:#92400e}.risk-badge.high{background:#fee2e2;color:#991b1b}.record-details{margin-top:10px;padding-top:10px;border-top:1px solid var(--gray-border);display:flex;flex-direction:column;gap:8px}.detail-item{display:flex;align-items:center;gap:8px;font-size:.9em;color:#374151}.detail-item strong{color:var(--main-blue);min-width:100px}.detail-item.risk-details{color:#991b1b;font-weight:600}.record-notes{margin-top:10px;padding:8px 12px;background:#fef3c7;border-radius:6px;font-size:.9em;color:#92400e;display:flex;align-items:center;gap:8px}@media (max-width: 768px){.attendance-stats{grid-template-columns:1fr}.filter-section{flex-direction:column;align-items:stretch;gap:16px}.filter-group{min-width:100%;max-width:100%}.info-grid{grid-template-columns:1fr}.record-header{flex-direction:column;align-items:flex-start}}@media (max-width: 992px){.filter-section{gap:16px}.filter-group{min-width:160px;flex:1 1 calc(50% - 8px)}}.batch-actions-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#f3f4f6;border-radius:8px;margin-bottom:20px}.batch-info{font-weight:600;color:var(--main-blue)}.batch-actions{display:flex;gap:10px;align-items:center}.batch-update-date-form{padding:20px}.batch-update-date-form .form-group{margin-bottom:20px}.batch-update-date-form .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.batch-update-date-form .form-group input[type=date]{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px}.batch-update-date-form .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn-danger{background:#dc2626;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:6px;transition:all .2s ease}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.action-dropdown-open{z-index:1001}.action-menu{position:absolute;top:100%;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:9999;min-width:150px;margin-top:4px}.action-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;background:none;border:none;text-align:left;cursor:pointer;color:#374151;font-size:.9em;transition:background .2s ease}.action-menu-item.danger{color:#dc2626}.action-menu-item.danger:hover{background:#fee2e2}.action-menu-item:disabled{opacity:.5;cursor:not-allowed}.attendance-edit-form{display:flex;flex-direction:column;gap:20px}.attendance-edit-form .form-group{display:flex;flex-direction:column;gap:8px}.attendance-edit-form .form-group label{font-weight:600;color:#374151}.attendance-edit-form .form-group input,.attendance-edit-form .form-group select,.attendance-edit-form .form-group textarea{padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:.9em}.attendance-edit-form .form-group textarea{resize:vertical;min-height:80px}.attendance-edit-form .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.attendance-edit-form .btn-primary{background:var(--main-blue);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600}.attendance-edit-form .btn-primary:hover:not(:disabled){background:var(--main-accent)}.attendance-edit-form .btn-primary:disabled{opacity:.5;cursor:not-allowed}.attendance-edit-form .btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600}.attendance-edit-form .btn-secondary:hover:not(:disabled){background:#e5e7eb}.date-with-weekday{display:inline-block;padding:2px 6px;border-radius:4px;font-weight:500}.date-with-weekday.weekend,.date-with-weekday[data-day="0"]{background:#fee2e2;color:#dc2626;font-weight:600}.date-with-weekday[data-day="6"]{background:#fed7aa;color:#ea580c;font-weight:600}.btn-exception{background-color:#8b5cf6}.btn-exception:hover{background-color:#7c3aed}.exception-list-modal{padding:20px}.exception-list-info{margin-bottom:20px;padding:12px;background:#f3f4f6;border-radius:6px;color:#6b7280;font-size:14px}.exception-list-section{margin-bottom:24px}.exception-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.exception-list-section h3{margin:0;font-size:16px;font-weight:600;color:#1f2937}.exception-list-actions{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.btn-remove-selected{padding:10px 20px;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;transition:background-color .2s}.btn-remove-selected:hover{background:#dc2626}.exception-employees-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.exception-employee-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.exception-employee-item:hover{background:#f3f4f6;border-color:#d1d5db}.exception-employee-item.selected{background:#dbeafe;border-color:#3b82f6;border-width:2px}.employee-info{display:flex;align-items:center;gap:12px;flex:1}.employee-info input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6}.employee-name{font-weight:500;color:#1f2937}.employee-number{color:#6b7280;font-size:13px}.employee-department{color:#9ca3af;font-size:12px;padding:2px 8px;background:#e5e7eb;border-radius:4px}.btn-remove{padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background-color .2s;font-size:14px;font-weight:500;min-width:80px;white-space:nowrap}.btn-remove:hover{background:#dc2626}.exception-employee-selector{display:flex;flex-direction:column;gap:12px}.selector-search input{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.selector-list{max-height:200px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:6px;background:#fff}.selector-item{padding:10px 12px;cursor:pointer;border-bottom:1px solid #f3f4f6;display:flex;align-items:center;gap:8px;transition:background-color .2s}.selector-item:hover{background:#f9fafb}.selector-item.selected{background:#dbeafe;border-color:#3b82f6}.btn-add-exception{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px;transition:background-color .2s}.btn-add-exception:hover:not(:disabled){background:#2563eb}.btn-add-exception:disabled{background:#9ca3af;cursor:not-allowed}.attendance-anomalies-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.anomalies-container{flex:1;max-width:1000px;margin:0 auto;padding:24px 20px;width:100%}.anomalies-header{background:#fff;border-radius:12px;padding:20px 24px;margin-bottom:20px;box-shadow:0 2px 8px #0000000d}.page-desc{color:#64748b;margin:0 0 16px;font-size:.95em}.date-filters{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.filter-group label{font-weight:600;color:#475569;font-size:.875rem}.filter-group input[type=date]{padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:.9rem}.anomalies-table-wrap{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.anomalies-table{width:100%;border-collapse:collapse;font-size:.95em}.anomalies-table thead{background:var(--main-blue);color:#fff}.anomalies-table th{padding:12px 16px;text-align:left;font-weight:600}.anomalies-table tbody tr{border-bottom:1px solid var(--gray-border)}.anomalies-table tbody tr:hover{background:#f9fafb}.anomalies-table td{padding:12px 16px}.type-badge{display:inline-block;padding:4px 10px;border-radius:8px;font-size:.85em;font-weight:600}.type-badge.missing_in{background:#fef3c7;color:#92400e}.type-badge.missing_out{background:#fee2e2;color:#991b1b}.type-badge.missing_both{background:#e0e7ff;color:#4338ca}.btn-leave-request{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:.85em;font-weight:600;cursor:pointer;transition:all .2s}.btn-leave-request:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px)}.status-badge.applied{color:#059669;font-size:.9em}.btn-supplemental{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-supplemental:hover{opacity:.9}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;color:#64748b}.empty-state .fa,.empty-state svg{margin-bottom:16px;opacity:.6}.supplemental-modal-content .modal-desc{color:#64748b;margin-bottom:16px}.supplemental-modal-content .modal-info{display:flex;gap:16px;margin-bottom:20px;font-weight:600}.supplemental-modal-content .form-group{margin-bottom:20px}.supplemental-modal-content .form-group label{display:block;font-weight:600;margin-bottom:8px;color:#374151}.supplemental-modal-content .form-group textarea{width:100%;padding:12px;border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;resize:vertical}.supplemental-modal-content .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.btn-cancel{padding:10px 20px;background:#f1f5f9;border:none;border-radius:8px;font-weight:600;cursor:pointer}.btn-submit{padding:10px 20px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.monthly-attendance-summary-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.monthly-attendance-summary-page.embedded{min-height:auto;background:transparent}.monthly-attendance-summary-page.embedded .monthly-summary-container{padding:0;max-width:100%}.monthly-summary-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.summary-header{background:#fff;border-radius:16px;padding:25px 30px;margin-bottom:20px;box-shadow:0 2px 10px #0000000d;width:100%}.header-actions{display:flex;justify-content:flex-end;margin-bottom:10px}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px;flex-wrap:wrap}.page-title{color:var(--main-blue);font-size:1.8em;margin:0;font-weight:700;flex:1;min-width:200px}.filter-group select{padding:10px 15px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;background:#fff;color:var(--main-blue);cursor:pointer;transition:all .3s ease;min-width:120px}.filter-group select:hover{border-color:var(--main-accent)}.btn-filter{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;min-width:100px;height:36px;border:2px solid var(--gray-border, #e2e8f0);background:#fff;color:var(--main-blue, #1e40af);border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-filter:hover{background:#f8fafc;border-color:var(--main-accent, #ff811b)}.btn-filter .filter-badge{position:absolute;top:4px;right:4px;width:6px;height:6px;background:var(--main-accent, #ff811b);border-radius:50%}.action-buttons{display:flex!important;gap:10px;flex-shrink:0;visibility:visible!important;opacity:1!important;border:none!important;border-top:none!important;border-bottom:none!important}.btn-export-excel,.btn-export-csv{display:flex!important;align-items:center;gap:8px;padding:12px 24px;border:none!important;border-top:none!important;border-bottom:none!important;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95em;white-space:nowrap;visibility:visible!important;opacity:1!important;box-shadow:none!important}.btn-export-excel:hover,.btn-export-csv:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-export-excel:disabled,.btn-export-csv:disabled{opacity:.6;cursor:not-allowed;transform:none}.summary-info{background:#fff;border-radius:12px;padding:20px 30px;margin-bottom:20px;display:flex;gap:40px;flex-wrap:wrap;box-shadow:0 2px 10px #0000000d;align-items:stretch}.info-item{display:flex;flex-direction:row;align-items:center;gap:10px;padding:0;flex:0 1 auto;min-width:0;position:relative;height:100%;min-height:40px}.info-item:not(:last-child):after{content:"";position:absolute;right:-20px;top:50%;transform:translateY(-50%);width:1px;height:30px;background:#e5e7eb}.info-label{font-weight:600;color:#6b7280;font-size:.95em;white-space:nowrap;line-height:1.5}.info-value{font-weight:700;color:var(--main-blue);font-size:1.1em;white-space:nowrap;line-height:1.5}.summary-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 2px 10px #0000000d;overflow-x:auto}.summary-table{width:100%;border-collapse:collapse;font-size:.9em}.summary-table thead{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.summary-table th{padding:15px 10px;text-align:left;font-weight:600;white-space:nowrap;border-right:1px solid rgba(255,255,255,.2)}.summary-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.summary-table th.sortable:hover{background-color:#fff3}.summary-table th:last-child{border-right:none}.summary-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background-color .2s}.summary-table tbody tr:hover{background-color:#f9fafb}.summary-table td{padding:12px 10px;color:#4b5563;border-right:1px solid #f3f4f6}.summary-table td:last-child{border-right:none}.employee-name-link{background:none;border:none;color:var(--main-blue);font-weight:600;cursor:pointer;text-decoration:underline;padding:0;font-size:inherit;font-family:inherit;transition:color .2s ease}.employee-name-link:hover{color:var(--main-accent);text-decoration:none}.attendance-rate{font-weight:700;padding:4px 8px;border-radius:6px;display:inline-block}.attendance-rate.high{background-color:#d1fae5;color:#065f46}.attendance-rate.medium{background-color:#fef3c7;color:#92400e}.attendance-rate.low{background-color:#fee2e2;color:#991b1b}.badge-warning{background-color:#fef3c7;color:#92400e;padding:4px 8px;border-radius:6px;font-weight:600;display:inline-block}.badge-error{background-color:#fee2e2;color:#991b1b;padding:4px 8px;border-radius:6px;font-weight:600;display:inline-block}.loading{text-align:center;padding:60px 20px;color:var(--main-blue);font-size:1.1em}.empty-state{text-align:center;padding:60px 20px;color:#6b7280;font-size:1.1em}@media (max-width: 1200px){.summary-table{font-size:.85em}.summary-table th,.summary-table td{padding:10px 8px}}@media (max-width: 768px){.header-top{flex-direction:column;align-items:stretch}.page-title{width:100%}.action-buttons{width:100%;display:flex!important;visibility:visible!important;justify-content:stretch}.btn-export-excel,.btn-export-csv{flex:1;justify-content:center;display:flex!important;visibility:visible!important;opacity:1!important}.filter-controls{flex-direction:column;align-items:stretch}.summary-info{flex-direction:column;gap:15px}}.employee-clock-records-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.employee-clock-records-page.embedded{min-height:auto;background:transparent}.clock-records-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.page-header-card{background:#fff;border-radius:16px;padding:20px 28px;margin-bottom:20px;box-shadow:0 2px 10px #0000000d}.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.employee-info-row{display:flex;align-items:center;gap:12px;flex-shrink:0;min-width:0}.emp-name{font-size:1.4em;font-weight:700;color:#1e293b;white-space:nowrap}.emp-divider{color:#cbd5e1;font-weight:300;-webkit-user-select:none;user-select:none}.emp-number,.emp-department{font-size:1em;color:#64748b;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:16px;flex-shrink:0}.filter-group{display:flex;flex-direction:row;align-items:center;gap:8px;flex-shrink:0}.filter-group label{font-weight:600;color:#475569;font-size:.875rem;white-space:nowrap;margin:0}.filter-group input[type=date],.filter-group input[type=month]{padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:.9rem;background:#fff;color:#1e293b;cursor:pointer;transition:all .3s ease;min-width:140px;font-family:inherit}.filter-group.filter-group-month input[type=month]{min-width:160px}.filter-group input[type=date]:hover,.filter-group input[type=month]:hover{border-color:var(--main-blue)}.filter-group input[type=date]:focus,.filter-group input[type=month]:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #1478861a}.btn-refresh{display:flex;align-items:center;justify-content:center;padding:0;width:40px;height:40px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;flex-shrink:0}.btn-refresh:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-refresh:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.header-row{flex-direction:column;align-items:stretch}.employee-info-row{justify-content:flex-start}.header-actions,.filter-group{flex-direction:column;align-items:stretch}.filter-group input[type=date],.filter-group input[type=month]{min-width:auto;width:100%}.btn-refresh{align-self:flex-start}}.tabs-container{background:#fff;border-radius:16px;padding:0;box-shadow:0 2px 10px #0000000d;overflow:hidden}.tabs{display:flex;border-bottom:2px solid var(--gray-border);background:#f9fafb}.tab{display:flex;align-items:center;gap:8px;padding:15px 30px;background:none;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.tab:hover{color:var(--main-blue);background:#1478860d}.tab.active{color:var(--main-blue);border-bottom-color:var(--main-accent);background:#fff}.tab-content{padding:30px}.daily-records-container{width:100%}.records-table-wrapper{overflow-x:auto}.daily-records-table{width:100%;border-collapse:collapse;font-size:.95em}.daily-records-table thead{background:var(--main-blue);color:#fff}.daily-records-table thead tr{white-space:nowrap}.daily-records-table th{padding:15px;text-align:left;font-weight:600;white-space:nowrap}.daily-records-table tbody tr{border-bottom:1px solid var(--gray-border);transition:background .2s ease}.daily-records-table tbody tr:hover{background:#f9fafb}.daily-records-table tbody tr.absent-row{background:#fef2f2}.daily-records-table td{padding:15px;vertical-align:middle}.clock-time-cell{display:flex;flex-direction:column;gap:5px}.clock-time{font-weight:600;color:var(--main-blue)}.clock-record-info{display:flex;gap:5px;align-items:center}.risk-indicator{font-size:.85em}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap}.badge-warning{background:#fef3c7;color:#92400e}.badge-error{background:#fee2e2;color:#991b1b}.badge-info{background:#dbeafe;color:#1e40af}.risk-badge{display:inline-block;padding:2px 8px;border-radius:8px;font-size:.75em;font-weight:600}.risk-high{background:#fee2e2;color:#991b1b}.risk-medium{background:#fef3c7;color:#92400e}.risk-low{background:#d1fae5;color:#065f46}.btn-view-details{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-view-details:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-view-details:disabled{opacity:.5;cursor:not-allowed}.statistics-container{width:100%}.statistics-title{color:var(--main-blue);margin:0 0 16px;font-size:1.25em}.statistics-table-wrapper{overflow-x:auto}.statistics-table{width:100%;border-collapse:collapse;font-size:.95em}.statistics-table thead{background:var(--main-blue);color:#fff}.statistics-table th{padding:12px 16px;text-align:left;font-weight:600}.statistics-table tbody tr{border-bottom:1px solid var(--gray-border)}.statistics-table td{padding:12px 16px}.stat-label-cell{color:#475569;font-weight:500}.stat-value-cell{color:#1e293b;font-weight:600}.detail-item{display:flex;align-items:center;gap:10px;padding:12px;background:#fff;border-radius:8px}.detail-label{font-weight:600;color:var(--main-blue);min-width:120px}.detail-value{color:#374151}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:all .3s ease}.modal-overlay.active{opacity:1;visibility:visible}.clock-details-modal{background:#fff;border-radius:16px;max-width:800px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003;transform:scale(.9);transition:transform .3s ease}.modal-overlay.active .clock-details-modal{transform:scale(1)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:2px solid var(--gray-border);background:var(--main-blue);color:#fff}.modal-header h2{margin:0;font-size:1.3em}.modal-close{background:none;border:none;color:#fff;font-size:1.5em;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.modal-close:hover{background:#fff3}.modal-body{padding:30px;overflow-y:auto;flex:1}.clock-records-list{display:flex;flex-direction:column;gap:20px}.clock-record-card{background:#f9fafb;border-radius:12px;padding:20px;border:2px solid var(--gray-border)}.clock-record-header{display:flex;align-items:center;gap:15px;margin-bottom:15px;flex-wrap:wrap}.clock-type-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border-radius:8px;font-weight:600;font-size:.95em}.clock-time{font-size:1.2em;font-weight:700;color:var(--main-blue)}.risk-score{display:flex;align-items:center;gap:8px;margin-left:auto}.risk-value{font-size:.9em;color:#6b7280}.clock-record-details{display:flex;flex-direction:column;gap:12px}.detail-row{display:flex;align-items:flex-start;gap:10px;padding:10px;background:#fff;border-radius:8px}.detail-row svg{color:var(--main-blue);margin-top:2px;flex-shrink:0}.detail-row .detail-label{font-weight:600;color:var(--main-blue);min-width:100px}.detail-row .detail-value{color:#374151;flex:1;word-break:break-word}.date-with-weekday{white-space:nowrap}.date-with-weekday.weekend{color:#b45309;font-weight:600}.table-risk-score{font-weight:600}.table-risk-score.high-risk{color:#dc2626}.table-risk-score.medium-risk{color:#d97706}.table-risk-score.low-risk{color:#059669}.error-message{text-align:center;padding:40px;color:#991b1b;background:#fff;border-radius:16px;margin:20px}@media (max-width: 1024px){.header-actions{width:100%;justify-content:flex-start}}@media (max-width: 768px){.tabs{flex-direction:column}.tab{width:100%;justify-content:center}.daily-records-table{font-size:.85em}.daily-records-table th,.daily-records-table td{padding:10px 8px}.clock-details-modal{width:95%;max-height:95vh}.modal-header{padding:15px 20px}.modal-body{padding:20px}}.overtime-request-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.overtime-request-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.overtime-form{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.form-group input[type=date],.form-group input[type=time],.form-group input[type=number]{cursor:pointer}.time-picker-wrapper{position:relative}.time-input{width:100%;padding:12px 40px 12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:Courier New,monospace;background:#fff;cursor:pointer;color:var(--main-blue)}.time-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.time-picker-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:1.2em;cursor:pointer;pointer-events:auto;color:var(--main-blue)}.time-picker-dropdown{position:absolute;top:100%;left:0;margin-top:5px;background:#fff;border:2px solid var(--gray-border);border-radius:12px;box-shadow:0 4px 20px #00000026;z-index:1000;min-width:300px;padding:20px}.time-picker-row{display:flex;gap:20px}.period-selector{display:flex;flex-direction:column;gap:8px;padding-right:15px;border-right:1px solid var(--gray-border)}.period-btn{padding:10px 15px;border:2px solid var(--gray-border);border-radius:6px;background:#fff;color:var(--main-blue);font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.9em}.period-btn:hover{background:var(--main-blue-light);border-color:var(--main-blue)}.period-btn.active{background:var(--main-blue);color:#fff;border-color:var(--main-blue)}.time-selectors{display:flex;gap:15px;flex:1}.time-column{display:flex;flex-direction:column;gap:8px;flex:1}.time-label{font-size:.85em;font-weight:600;color:var(--main-blue);text-align:center}.time-options{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto}.time-option{padding:8px 12px;border:2px solid var(--gray-border);border-radius:6px;background:#fff;color:var(--main-blue);font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.9em;text-align:center}.time-option:hover{background:var(--main-blue-light);border-color:var(--main-blue)}.time-option.active{background:var(--main-blue);color:#fff;border-color:var(--main-blue)}.readonly-input{background:#f9fafb;cursor:not-allowed;color:var(--main-blue);font-weight:600}.pending-approval-section{margin-top:40px;padding:30px 50px 40px;border-top:2px solid var(--gray-border);background:#fff;border-radius:16px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.pending-section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0 0 20px}.pending-list-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid var(--gray-border)}.pending-list-table{width:100%;border-collapse:collapse;font-size:.95em}.pending-list-table th,.pending-list-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--gray-border)}.pending-list-table th{background:#f8fafc;font-weight:600;color:var(--main-blue)}.pending-list-table tbody tr:last-child td{border-bottom:none}.pending-list-table tbody tr:hover{background:#f8fafc}.pending-list-table tbody tr.clickable-row{cursor:pointer}.pending-context-menu{position:fixed;z-index:1000;min-width:140px;padding:6px 0;background:#fff;border:1px solid var(--gray-border);border-radius:8px;box-shadow:0 4px 12px #00000026}.pending-context-menu .context-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:none;font-size:.95em;cursor:pointer;text-align:left;color:inherit}.pending-context-menu .context-menu-item:hover{background:#f1f5f9}.pending-context-menu .context-menu-delete{color:#dc2626}.pending-context-menu .context-menu-delete:hover{background:#fee2e2}.rejection-reason-cell{max-width:200px;word-break:break-word;color:#dc2626}.pending-list-table .status-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:.9em;font-weight:500}.pending-list-table .status-badge.status-pending,.pending-list-table .status-badge.status-pending_approval{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.pending-list-table .status-badge.status-rejected{background:#fee2e2;color:#dc2626}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.overtime-form{padding:25px}.pending-approval-section{padding:20px}.pending-list-table th,.pending-list-table td{padding:10px 12px;font-size:.9em}}.clock-in-out-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.clock-in-out-container{max-width:800px;margin:40px auto;padding:0 20px 40px;flex:1}.clock-card{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.current-time-section{text-align:center;margin-bottom:40px;padding-bottom:30px;border-bottom:2px solid var(--gray-border)}.time-display{font-size:4em;font-weight:900;color:var(--main-blue);margin-bottom:10px;letter-spacing:4px;font-family:Courier New,monospace}.date-display{font-size:1.2em;color:#666;font-weight:500}.clock-buttons{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}.clock-btn{display:flex;align-items:center;gap:20px;padding:25px 30px;border-radius:16px;border:3px solid transparent;background:#fff;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 2px 8px #0000001a}.clock-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #00000026}.clock-btn:disabled{opacity:.6;cursor:not-allowed}.clock-in-btn{border-color:#10b981;background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.clock-in-btn:hover:not(:disabled){border-color:#059669;background:linear-gradient(135deg,#a7f3d0,#6ee7b7)}.clock-in-btn.disabled,.clock-btn.clock-in-btn:disabled{background:#e5e7eb!important;border-color:#9ca3af!important;color:#6b7280!important;opacity:.85;transform:none}.clock-out-btn{border-color:#f59e0b;background:linear-gradient(135deg,#fef3c7,#fde68a)}.clock-out-btn:hover:not(:disabled){border-color:#d97706;background:linear-gradient(135deg,#fde68a,#fcd34d)}.clock-out-btn.active:not(:disabled){border-color:#d97706;background:linear-gradient(135deg,#fde68a,#fbbf24);box-shadow:0 4px 16px #f59e0b66}.clock-out-btn.active:hover:not(:disabled){box-shadow:0 6px 20px #f59e0b80}.clock-out-btn.disabled,.clock-btn.clock-out-btn:disabled{background:#e5e7eb!important;border-color:#9ca3af!important;color:#6b7280!important;opacity:.85;transform:none}.btn-icon{font-size:3em;line-height:1}.btn-content{flex:1;text-align:left}.btn-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin-bottom:5px}.btn-subtitle{font-size:.9em;color:#666}.btn-status{font-size:2em;color:#10b981;font-weight:700}.today-record{margin-bottom:30px;padding:25px;background:#f9fafb;border-radius:12px;border:1px solid var(--gray-border)}.records-subtitle{font-size:1rem;font-weight:600;color:#333;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e0e0e0}.clock-records-list{margin-bottom:1.5rem}.records-table{display:flex;flex-direction:column;gap:.5rem}.record-row{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#fff;border-radius:8px;border:1px solid #e0e0e0;transition:all .2s}.record-row:hover{box-shadow:0 2px 4px #0000001a}.record-number{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#f0f0f0;border-radius:50%;font-size:.875rem;font-weight:600;color:#666}.record-type{min-width:60px;padding:.25rem .75rem;border-radius:6px;font-size:.875rem;font-weight:600;text-align:center}.record-type.type-in{background:#e3f2fd;color:#1976d2}.record-type.type-out{background:#fff3e0;color:#f57c00}.record-time{flex:1;font-size:.9375rem;font-weight:500;color:#333;font-family:Courier New,monospace}.record-leave-badge{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#ffebee;color:#c62828;border-radius:4px;font-size:.75rem;font-weight:500}.record-notes{max-width:200px;font-size:.875rem;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin-bottom:20px;text-align:center}.record-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.record-item{text-align:center}.record-label{font-size:.9em;color:#666;margin-bottom:10px;font-weight:500}.record-value{font-size:1.3em;font-weight:700;color:var(--main-blue);font-family:Courier New,monospace}.record-value.late{color:#dc2626}.record-value.work-hours{color:var(--main-accent);font-size:1.5em}.late-badge{display:inline-block;margin-left:8px;padding:2px 8px;background:#fee2e2;color:#991b1b;border-radius:4px;font-size:.6em;font-weight:600}.tips-section{margin-top:30px}.tip-item{padding:15px 20px;border-radius:8px;margin-bottom:10px;font-size:.95em;line-height:1.6}.tip-info{background:#dbeafe;color:#1e40af;border-left:4px solid #3b82f6}.tip-warning{background:#fef3c7;color:#92400e;border-left:4px solid #f59e0b}.tip-success{background:#d1fae5;color:#065f46;border-left:4px solid #10b981}@media (max-width: 768px){.clock-in-out-container{padding:0 15px 30px}.clock-card{padding:25px}.time-display{font-size:2.5em;letter-spacing:2px}.date-display{font-size:1em}.btn-icon{font-size:2em}.btn-title{font-size:1.2em}.record-grid{grid-template-columns:1fr;gap:15px}.clock-btn{padding:20px}}.performance-goals{width:100%}.goals-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header-actions,.filters{display:flex;gap:12px}.goals-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.goal-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .3s ease}.goal-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.goal-header{margin-bottom:16px}.goal-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.goal-title-row h3{margin:0;font-size:1.1rem;color:#1f2937}.goal-meta{display:flex;gap:12px;font-size:.85rem;color:#6b7280}.goal-type{background:var(--main-blue);color:#fff;padding:2px 8px;border-radius:4px;font-weight:600}.goal-description{color:#4b5563;font-size:.9rem;margin-bottom:16px;line-height:1.5}.goal-progress{margin-bottom:16px}.progress-info{display:flex;justify-content:space-between;font-size:.85rem;color:#6b7280}.goal-actions{display:flex;gap:8px;justify-content:flex-end}.goal-form{display:flex;flex-direction:column;gap:16px}.template-selection{max-height:70vh;display:flex;flex-direction:column}.template-filters{display:flex;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.template-list{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:20px;padding-right:8px}.template-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s}.template-card:hover{border-color:var(--main-blue);background:#f0f7ff;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.template-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.template-header h4{font-size:16px;font-weight:600;color:#333;margin:0;flex:1}.template-type{padding:4px 8px;background:var(--main-blue);color:#fff;border-radius:4px;font-size:11px;font-weight:600}.template-description{font-size:14px;color:#666;margin-bottom:12px;line-height:1.5}.template-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.template-category,.template-department{padding:4px 8px;background:#e5e7eb;border-radius:4px;font-size:12px;color:#666}.template-usage{font-size:12px;color:#999;margin-left:auto}.template-preview{padding-top:12px;border-top:1px solid #e5e7eb;font-size:13px;color:#666}.template-preview strong{color:#333;margin-right:6px}.template-actions{padding-top:16px;border-top:1px solid #e5e7eb;display:flex;justify-content:center}.performance-reviews{width:100%}.reviews-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.reviews-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.review-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .3s ease}.review-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.review-header{margin-bottom:16px}.review-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.review-title-row h3{margin:0;font-size:1.1rem;color:#1f2937}.status-badge{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600}.status-draft{background:#f3f4f6;color:#6b7280}.status-submitted{background:#dbeafe;color:#1e40af}.status-reviewed{background:#fef3c7;color:#92400e}.status-approved{background:#d1fae5;color:#065f46}.status-rejected{background:#fee2e2;color:#991b1b}.review-meta{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:#6b7280}.review-period{font-weight:600}.reviewer{font-size:.8rem}.review-scores{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.score-item{display:flex;align-items:center;gap:8px}.score-label{font-size:.9rem;color:#6b7280}.score-value{font-size:1.1rem;font-weight:700;color:var(--main-blue)}.review-actions{display:flex;gap:8px;justify-content:flex-end}.review-form{display:flex;flex-direction:column;gap:16px}.performance-tracking{width:100%}.tracking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.filter-select{padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:.9rem}.trackings-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.tracking-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .3s ease}.tracking-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.tracking-header-info{margin-bottom:16px}.tracking-header-info h3{margin:0 0 4px;font-size:1.1rem;color:#1f2937}.tracking-date{font-size:.85rem;color:#6b7280}.tracking-progress{margin-bottom:16px}.progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:var(--main-blue);transition:width .3s ease}.progress-info{font-size:.85rem;color:#6b7280}.tracking-content{margin-bottom:12px}.tracking-content strong{display:block;margin-bottom:4px;color:#374151;font-size:.9rem}.tracking-content p{margin:0;color:#6b7280;line-height:1.5;font-size:.9rem}.tracking-actions{display:flex;gap:8px;justify-content:flex-end}.tracking-form{display:flex;flex-direction:column;gap:16px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.performance-interviews{width:100%}.interviews-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.interviews-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.interview-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .3s ease}.interview-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.interview-header{margin-bottom:16px}.interview-header h3{margin:0 0 4px;font-size:1.1rem;color:#1f2937}.interviewer{font-size:.85rem;color:#6b7280}.interview-section{margin-bottom:12px}.interview-section strong{display:block;margin-bottom:6px;color:#374151;font-size:.9rem}.interview-section p{margin:0;color:#6b7280;line-height:1.5;font-size:.9rem}.interview-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.btn-icon{padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:#f3f4f6;border-color:var(--main-blue)}.interview-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:600;color:#374151;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:10px;border:1px solid #e5e7eb;border-radius:6px;font-size:.9rem}.disabled-input{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.btn-primary,.btn-secondary{padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary{background:var(--main-blue);color:#fff;border:none}.btn-primary:hover{opacity:.9}.btn-secondary{background:#fff;color:#6b7280;border:1px solid #e5e7eb}.loading,.no-data{text-align:center;padding:60px 20px;color:#6b7280}.performance-dashboard{padding:24px;background:#f5f7fa;min-height:calc(100vh - 200px)}.dashboard-actions{display:flex;justify-content:flex-end;margin-bottom:24px}.btn-export{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-export:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-export:disabled{opacity:.6;cursor:not-allowed}.dashboard-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.summary-card{background:#fff;border-radius:12px;padding:24px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #00000014;transition:transform .2s,box-shadow .2s}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.card-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.card-icon.goals{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.card-icon.progress{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.card-icon.reviews{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.card-icon.upcoming{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.card-content{flex:1}.card-value{font-size:32px;font-weight:700;color:var(--main-blue);line-height:1;margin-bottom:8px}.card-label{font-size:16px;font-weight:600;color:#333;margin-bottom:4px}.card-sub-label{font-size:13px;color:#666}.dashboard-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:24px;margin-bottom:24px}.dashboard-recent{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:24px}.recent-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #f0f0f0}.section-header h3{font-size:18px;font-weight:600;color:#333;margin:0}.btn-link{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--main-blue);font-size:14px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s}.btn-link:hover{background:var(--main-blue-light)}.recent-list{display:flex;flex-direction:column;gap:12px}.recent-item{padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;cursor:pointer;transition:all .2s}.recent-item:hover{background:#f3f4f6;border-color:var(--main-blue-light);transform:translate(4px)}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.item-title{font-size:15px;font-weight:600;color:#333;flex:1}.item-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-active{background:#dbeafe;color:#1e40af}.status-completed{background:#d1fae5;color:#065f46}.status-draft{background:#f3f4f6;color:#4b5563}.status-submitted{background:#fef3c7;color:#92400e}.status-reviewed,.status-approved{background:#d1fae5;color:#065f46}.item-progress{display:flex;align-items:center;gap:12px;margin-bottom:8px}.progress-bar{flex:1;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4facfe,#00f2fe);transition:width .3s}.progress-text{font-size:13px;font-weight:600;color:#666;min-width:50px;text-align:right}.item-score{display:flex;align-items:center;gap:6px;margin-bottom:8px;color:var(--main-blue);font-weight:600}.item-meta{font-size:13px;color:#666}@media (max-width: 1200px){.dashboard-charts,.dashboard-recent{grid-template-columns:1fr}}@media (max-width: 768px){.performance-dashboard{padding:16px}.dashboard-summary{grid-template-columns:1fr}.chart-card,.recent-section{padding:16px}}.performance-statistics{padding:24px;background:#f5f7fa;min-height:calc(100vh - 200px)}.statistics-filters{display:flex;gap:16px;align-items:flex-end;margin-bottom:24px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.filter-group label{font-size:14px;font-weight:600;color:#333}.filter-group input[type=date]{padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;min-width:160px}.statistics-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:24px}.summary-card{background:#fff;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #00000014}.summary-card .card-icon{width:50px;height:50px;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.summary-card .card-content{flex:1}.summary-card .card-value{font-size:28px;font-weight:700;color:var(--main-blue);line-height:1;margin-bottom:6px}.summary-card .card-label{font-size:14px;color:#666}.statistics-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:24px;margin-bottom:24px}.chart-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.chart-card h3{font-size:18px;font-weight:600;color:#333;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #f0f0f0}.statistics-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014;margin-bottom:24px}.statistics-section h3{font-size:18px;font-weight:600;color:#333;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #f0f0f0}.statistics-table{overflow-x:auto}.statistics-table table{width:100%;border-collapse:collapse}.statistics-table thead{background:#f9fafb}.statistics-table th{padding:12px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #e5e7eb}.statistics-table td{padding:12px;border-bottom:1px solid #f0f0f0;color:#666}.statistics-table tbody tr:hover{background:#f9fafb}.loading,.error,.no-data{text-align:center;padding:40px;color:#666;font-size:16px}@media (max-width: 1200px){.statistics-charts{grid-template-columns:1fr}}@media (max-width: 768px){.performance-statistics{padding:16px}.statistics-filters{flex-direction:column;align-items:stretch}.statistics-summary{grid-template-columns:1fr}.statistics-table{font-size:14px}}.performance-management-page{width:100%;background:transparent;padding:0}.performance-container{width:100%;margin:0}.performance-tabs{display:flex;gap:12px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.performance-content{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);min-height:500px}.coming-soon{text-align:center;color:#6b7280;padding:60px 40px}.coming-soon svg{color:var(--main-blue);margin-bottom:20px}.coming-soon h2{font-size:1.8em;color:var(--main-blue);margin:20px 0 10px}.coming-soon p{font-size:1.1em;line-height:1.6}.performance-management-admin-page{width:100%;min-height:calc(100vh - 120px);background:#f5f7fa}.performance-admin-container{max-width:1600px;margin:0 auto;padding:24px;height:calc(100vh - 120px)}.employee-selector-section{width:320px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden}.employee-selector-header{display:flex;align-items:center;gap:8px;padding:20px;border-bottom:2px solid #e5e7eb;background:linear-gradient(135deg,#147886,#0f5d68);color:#fff}.employee-selector-header h3{margin:0;font-size:1.1em;font-weight:600}.employee-search{position:relative;padding:16px;border-bottom:1px solid #e5e7eb}.employee-search-input{width:100%;padding:10px 40px 10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:.95em;transition:border-color .2s}.employee-search-input:focus{outline:none;border-color:#147886}.search-icon{position:absolute;right:28px;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:1.1em}.employee-list{flex:1;overflow-y:auto;padding:12px}.employee-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:8px;cursor:pointer;transition:all .2s;margin-bottom:8px;border:1px solid #e5e7eb;background:#fff}.employee-item:hover{background:#f9fafb;border-color:#d1d5db}.employee-item.selected{background:#fff7ed;border:2px solid #f97316;box-shadow:0 2px 4px #f9731626}.employee-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#147886,#0f5d68);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;overflow:hidden}.employee-avatar img{width:100%;height:100%;object-fit:cover}.employee-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.employee-name{font-weight:600;color:#1f2937;font-size:1em;line-height:1.4}.employee-meta{display:flex;flex-direction:column;gap:2px;font-size:.875em;color:#6b7280;line-height:1.4}.employee-meta span{display:block}.check-icon{color:#147886;font-size:1.2em;flex-shrink:0}.no-employees{padding:40px 20px;text-align:center;color:#9ca3af}.performance-content-section{flex:1;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden}.selected-employee-header{padding:20px 24px;border-bottom:2px solid #e5e7eb;background:linear-gradient(135deg,#f9fafb,#fff);display:flex;align-items:center;justify-content:space-between;gap:16px}.selected-employee-header h2{margin:0;font-size:1.3em;font-weight:700;color:#147886;display:flex;align-items:center;gap:8px;flex:1}.employee-selector-dropdown{display:flex;align-items:center;gap:12px;min-width:400px}.employee-select-input{padding:8px 12px;border:2px solid #dc2626;border-radius:8px;font-size:.95em;background:#fff;color:#1f2937;cursor:pointer;min-width:200px}.employee-select-input:focus{outline:none;border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.employee-search-wrapper{position:relative;flex:1;min-width:200px}.employee-search-input-inline{width:100%;padding:8px 40px 8px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:.95em;transition:border-color .2s}.employee-search-input-inline:focus{outline:none;border-color:#147886}.search-icon-inline{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:1.1em}.employee-department{font-weight:400;color:#6b7280;font-size:.9em}.no-employee-selected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;padding:60px}.no-employee-selected p{margin-top:16px;font-size:1.1em}.employee-selector-initial{width:100%;max-width:600px}.employee-selector-initial h3{margin:0 0 16px;font-size:1.2em;font-weight:600;color:#1f2937;text-align:center}.employee-list-inline{margin-top:16px;max-height:400px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.employee-item-inline{display:flex;align-items:center;gap:12px;padding:12px;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:all .2s}.employee-item-inline:last-child{border-bottom:none}.employee-item-inline:hover{background:#f9fafb}.employee-avatar-inline{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#147886,#0f5d68);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;overflow:hidden}.employee-avatar-inline img{width:100%;height:100%;object-fit:cover}.employee-info-inline{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.employee-name-inline{font-weight:600;color:#1f2937;font-size:1em;line-height:1.4}.employee-meta-inline{display:flex;flex-direction:column;gap:2px;font-size:.875em;color:#6b7280;line-height:1.4}.employee-meta-inline span{display:block}.performance-admin-tabs{display:flex;gap:8px;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.performance-admin-tabs .tab-button{display:flex;align-items:center;gap:8px;padding:10px 20px;background:transparent;border:none;border-radius:8px;cursor:pointer;font-size:.95em;font-weight:500;color:#6b7280;transition:all .2s}.performance-admin-tabs .tab-button:hover{background:#f3f4f6;color:#147886}.performance-admin-tabs .tab-button.active{background:linear-gradient(135deg,#147886,#0f5d68);color:#fff}.performance-admin-content{flex:1;overflow-y:auto;padding:24px}@media (max-width: 1200px){.performance-admin-container{height:auto}.selected-employee-header{flex-direction:column;align-items:flex-start}.employee-selector-dropdown{width:100%;min-width:auto;flex-direction:column}.employee-select-input,.employee-search-wrapper{width:100%;min-width:auto}.performance-content-section{min-height:600px}}.my-leave-records-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.my-leave-records-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.status-badge.status-pending,.status-badge.status-pending_approval{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.my-overtime-records-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.my-overtime-records-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.records-container{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.filters{display:flex;gap:1rem;margin-bottom:1.5rem;padding:0}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.leave-approval-page{width:100%}.leave-approval-page.embedded{background:transparent}.leave-approval{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.btn-create-leave{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;height:36px;border:none;background:#147886;color:#fff;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-create-leave:hover{background:#0f5f6b}.filter-modal .form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.leaves-table-wrapper{overflow-x:auto}.leaves-table{width:100%;border-collapse:collapse;background:#fff}.leaves-table thead{background:#f9fafb}.leaves-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.leaves-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.leaves-table th.sortable:hover{background-color:#f3f4f6}.leaves-table td{padding:1rem;border-bottom:1px solid #e5e7eb;color:#4b5563}.leaves-table tbody tr:hover{background:#f9fafb}.leave-approval-action-dropdown{position:relative;display:inline-block}.leave-approval-action-dropdown .btn-action-toggle{padding:0;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:#e0f2fe;color:#147886}.leave-approval-action-dropdown .btn-action-toggle:hover{background:#bae6fd;transform:rotate(90deg)}.leave-approval-action-dropdown .btn-action-toggle svg{width:18px;height:18px}.leave-approval-dropdown-menu{position:fixed;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;min-width:140px;z-index:99999;overflow:hidden}.leave-approval-dropdown-menu .dropdown-item{width:100%;padding:10px 16px;border:none;background:#fff;text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:500;transition:background .2s;white-space:nowrap}.leave-approval-dropdown-menu .dropdown-item svg{width:16px;height:16px;flex-shrink:0}.leave-approval-dropdown-menu .dropdown-item-approve{color:#059669}.leave-approval-dropdown-menu .dropdown-item-approve:hover{background:#d1fae5}.leave-approval-dropdown-menu .dropdown-item-reject{color:#dc2626}.leave-approval-dropdown-menu .dropdown-item-reject:hover{background:#fee2e2}.leave-approval-dropdown-menu .dropdown-item-disabled{cursor:default;color:#9ca3af;font-size:.85rem}.leave-approval-dropdown-menu .dropdown-item-delete{color:#dc2626}.leave-approval-dropdown-menu .dropdown-item-delete:hover{background:#fee2e2}.leave-approval-dropdown-menu .dropdown-divider{height:1px;background:#e5e7eb;margin:4px 0}.admin-create-leave-modal{max-height:80vh;overflow-y:auto;padding-right:4px}.admin-create-leave-form .form-group{margin-bottom:1rem}.admin-create-leave-form .form-group label{display:block;margin-bottom:6px;font-size:.875rem;font-weight:600;color:#374151}.admin-create-leave-form .form-group select,.admin-create-leave-form .form-group input[type=date],.admin-create-leave-form .form-group textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;box-sizing:border-box;transition:border-color .2s}.admin-create-leave-form .form-group select:focus,.admin-create-leave-form .form-group input:focus,.admin-create-leave-form .form-group textarea:focus{outline:none;border-color:#147886;box-shadow:0 0 0 3px #1478861a}.admin-create-leave-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-create-leave-form .time-picker-wrapper{position:relative;display:flex;align-items:center}.admin-create-leave-form .time-input{flex:1;cursor:pointer;padding-right:32px!important}.admin-create-leave-form .time-picker-icon{position:absolute;right:10px;color:#6b7280;cursor:pointer;display:flex;align-items:center}.admin-create-leave-form .time-picker-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:9999;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #0000001f;padding:10px;min-width:160px}.admin-create-leave-form .time-picker-row,.admin-create-leave-form .time-selectors{display:flex;gap:8px}.admin-create-leave-form .time-column{display:flex;flex-direction:column;gap:4px}.admin-create-leave-form .time-label{font-size:.75rem;font-weight:600;color:#6b7280;text-align:center}.admin-create-leave-form .time-options{display:flex;flex-direction:column;gap:2px;max-height:160px;overflow-y:auto}.admin-create-leave-form .time-option{padding:4px 10px;border:none;border-radius:4px;background:transparent;cursor:pointer;font-size:.875rem;color:#374151;text-align:center;transition:background .15s}.admin-create-leave-form .time-option:hover{background:#f3f4f6}.admin-create-leave-form .time-option.active{background:#147886;color:#fff;font-weight:600}.admin-create-leave-form .calculated-days-display{padding:8px 12px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb;font-size:.875rem;min-height:36px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-create-leave-form .calculated-days-value{font-weight:700;color:#147886;font-size:1rem}.admin-create-leave-form .calculated-days-hint,.admin-create-leave-form .calculated-days-placeholder,.admin-create-leave-form .calculated-days-loading{font-size:.8rem;color:#6b7280}.admin-create-leave-form .form-hint{display:block;margin-top:4px;font-size:.78rem;color:#6b7280}.admin-create-leave-form .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.admin-leave-balance-wrap{margin-bottom:1rem;padding:10px;background:#f0f9ff;border-radius:8px;border:1px solid #bae6fd}.overtime-approval-page{width:100%}.overtime-approval-page.embedded{background:transparent}.overtime-approval{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.no-permission{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;color:#6c757d}.no-permission svg{font-size:4rem;margin-bottom:1rem;color:#dc3545}.no-permission h2{margin:0 0 1rem;color:#495057;font-size:1.5rem}.no-permission p{margin:0;font-size:1rem;line-height:1.5}.page-header h1{display:flex;align-items:center;gap:.75rem;font-size:1.75rem;font-weight:700;color:#1f2937;margin:0}.filters{display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#f9fafb;border-radius:8px}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:600;color:#4b5563}.filter-group select{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer;transition:all .2s}.filter-group select:hover{border-color:#147886}.filter-group select:focus{outline:none;border-color:#147886;box-shadow:0 0 0 3px #1478861a}.filter-toolbar{display:flex;gap:10px;margin-bottom:1.5rem;align-items:center;flex-wrap:wrap}.btn-create-overtime{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;height:36px;border:none;background:#147886;color:#fff;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-create-overtime:hover{background:#0f5f6b}.btn-export-cw104f{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;height:36px;border:2px solid #e2e8f0;background:#fff;color:#065f46;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-export-cw104f:hover{background:#ecfdf5;border-color:#059669;color:#047857}.filter-modal .form-group select,.filter-modal .form-group input.form-control{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.filter-modal .export-hint{margin:0 0 16px;font-size:13px;color:#6b7280;line-height:1.5}.overtimes-table-wrapper{overflow-x:auto}.overtimes-table{width:100%;border-collapse:collapse;background:#fff}.overtimes-table thead{background:#f9fafb}.overtimes-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.overtimes-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.overtimes-table th.sortable:hover{background-color:#f3f4f6}.overtimes-table td{padding:1rem;border-bottom:1px solid #e5e7eb;color:#4b5563}.overtimes-table tbody tr:hover{background:#f9fafb}.reason-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-name-cell{vertical-align:top}.employee-name-line{font-size:inherit}.employee-number-line{font-size:.75rem;color:#6b7280;margin-top:.15rem}.order-product-cell{max-width:140px;word-wrap:break-word;word-break:break-word;white-space:normal;line-height:1.35;vertical-align:top}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.status-pending_approval{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.approver-info{display:flex;flex-direction:column;gap:.25rem}.approver-name{font-weight:600;color:#1f2937}.approval-time{font-size:.75rem;color:#6b7280}.no-approver{color:#9ca3af}.overtime-approval-action-dropdown{position:relative;display:inline-block}.overtime-approval-action-dropdown .btn-action-toggle{padding:0;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:#e0f2fe;color:#147886}.overtime-approval-action-dropdown .btn-action-toggle:hover{background:#bae6fd;transform:rotate(90deg)}.overtime-approval-action-dropdown .btn-action-toggle svg{width:18px;height:18px}.overtime-approval-dropdown-menu{position:fixed;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;min-width:140px;z-index:99999;overflow:hidden}.overtime-approval-dropdown-menu .dropdown-item{width:100%;padding:10px 16px;border:none;background:#fff;text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:500;transition:background .2s;white-space:nowrap}.overtime-approval-dropdown-menu .dropdown-item svg{width:16px;height:16px;flex-shrink:0}.overtime-approval-dropdown-menu .dropdown-item-approve{color:#059669}.overtime-approval-dropdown-menu .dropdown-item-approve:hover{background:#d1fae5}.overtime-approval-dropdown-menu .dropdown-item-reject{color:#dc2626}.overtime-approval-dropdown-menu .dropdown-item-reject:hover{background:#fee2e2}.overtime-approval-dropdown-menu .dropdown-item-disabled{cursor:default;color:#9ca3af;font-size:.85rem}.overtime-approval-dropdown-menu .dropdown-item-delete{color:#dc2626}.overtime-approval-dropdown-menu .dropdown-item-delete:hover{background:#fee2e2}.overtime-approval-dropdown-menu .dropdown-divider{height:1px;background:#e5e7eb;margin:4px 0}.admin-create-overtime-modal{max-height:80vh;overflow-y:auto;padding-right:4px}.admin-create-overtime-form .form-group{margin-bottom:1rem}.admin-create-overtime-form .form-group label{display:block;margin-bottom:6px;font-size:.875rem;font-weight:600;color:#374151}.admin-create-overtime-form .form-group select,.admin-create-overtime-form .form-group input[type=date],.admin-create-overtime-form .form-group input[type=time],.admin-create-overtime-form .form-group input[type=text],.admin-create-overtime-form .form-group textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;box-sizing:border-box;transition:border-color .2s}.admin-create-overtime-form .form-group select:focus,.admin-create-overtime-form .form-group input:focus,.admin-create-overtime-form .form-group textarea:focus{outline:none;border-color:#147886;box-shadow:0 0 0 3px #1478861a}.admin-create-overtime-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-create-overtime-form .calculated-hours-display{padding:8px 12px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb;font-size:.875rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-create-overtime-form .calculated-hours-value{font-weight:700;color:#147886;font-size:1rem}.admin-create-overtime-form .calculated-hours-hint,.admin-create-overtime-form .calculated-hours-placeholder{font-size:.8rem;color:#6b7280}.admin-create-overtime-form .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-approve{background:#10b981;color:#fff}.btn-approve:hover{background:#059669}.btn-reject{background:#ef4444;color:#fff}.btn-reject:hover{background:#dc2626}.loading,.no-data{text-align:center;padding:3rem;color:#6b7280}.no-data{display:flex;flex-direction:column;align-items:center;gap:1rem}.no-data svg{font-size:3rem;color:#d1d5db}.proxy-combobox{position:relative}.proxy-combobox-input-wrap{position:relative;display:flex;align-items:center}.proxy-combobox-input{width:100%;padding:8px 36px 8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;box-sizing:border-box;transition:border-color .2s,box-shadow .2s;background:#fff}.proxy-combobox-input:focus{outline:none;border-color:#147886;box-shadow:0 0 0 3px #1478861a}.proxy-combobox-clear{position:absolute;right:10px;background:none;border:none;cursor:pointer;font-size:1.1rem;color:#9ca3af;line-height:1;padding:0 2px;transition:color .15s}.proxy-combobox-clear:hover{color:#374151}.proxy-combobox-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:9999;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 8px 20px #0000001f;max-height:220px;overflow-y:auto;list-style:none;margin:0;padding:4px 0}.proxy-combobox-option{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;transition:background .15s;font-size:.875rem}.proxy-combobox-option:hover,.proxy-combobox-option.selected{background:#f0f9ff}.proxy-combobox-option.selected{color:#147886;font-weight:600}.proxy-option-number{color:#6b7280;font-size:.8rem;min-width:64px}.proxy-option-name{color:#1f2937}.proxy-combobox-empty{padding:10px 14px;color:#9ca3af;font-size:.875rem;text-align:center}.hr-approval-center-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.hr-approval-center-container{flex:1;max-width:1400px;margin:0 auto;padding:24px;width:100%}.filters-section{display:flex;gap:16px;align-items:flex-end;margin-bottom:24px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.filter-group{display:flex;flex-direction:column;gap:8px;flex:1;max-width:200px}.filter-group label{font-size:14px;font-weight:600;color:#374151}.filter-group select{padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:all .2s}.filter-group select:hover{border-color:#18454c}.filter-group select:focus{outline:none;border-color:#18454c;box-shadow:0 0 0 3px #18454c1a}.btn-refresh{padding:10px 16px;background:#18454c;color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;transition:all .2s;height:fit-content}.btn-refresh:hover{background:#0f2e33;transform:translateY(-1px)}.stats-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #00000014;text-align:center;transition:transform .2s}.stat-card:hover{transform:translateY(-2px)}.stat-value{font-size:32px;font-weight:700;color:#18454c;margin-bottom:8px}.stat-label{font-size:14px;color:#6b7280;font-weight:500}.approval-forms-list{display:flex;flex-direction:column;gap:16px}.approval-form-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;transition:all .2s}.approval-form-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.form-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.form-title-section{flex:1}.form-type-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:#f0f9ff;color:#18454c;border-radius:6px;font-size:12px;font-weight:600;margin-bottom:8px}.form-title{font-size:18px;font-weight:700;color:#111827;margin:8px 0}.form-meta{display:flex;gap:16px;align-items:center;font-size:13px;color:#6b7280}.form-number{font-weight:600;color:#18454c}.form-status-section{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.form-step-info{font-size:12px;color:#6b7280;padding:4px 8px;background:#f9fafb;border-radius:4px}.form-body{margin-bottom:20px}.applicant-info{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:12px;background:#f9fafb;border-radius:8px;font-size:14px}.applicant-label{font-weight:600;color:#374151}.applicant-name{color:#111827;font-weight:500}.applicant-department{color:#6b7280;font-size:13px}.form-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;padding:16px;background:#f9fafb;border-radius:8px}.detail-row{display:flex;gap:8px;font-size:14px}.detail-label{font-weight:600;color:#6b7280;min-width:60px}.detail-value{color:#111827;flex:1}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:2px solid #f3f4f6}.btn-action{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-view{background:#f3f4f6;color:#374151}.btn-view:hover{background:#e5e7eb}.btn-approve{background:#d1fae5;color:#065f46}.btn-approve:hover{background:#10b981;color:#fff}.btn-reject:hover{background:#ef4444;color:#fff}.btn-return:hover{background:#f59e0b;color:#fff}.status-badge{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600}.status-badge.status-approving{background:#dbeafe;color:#1e40af}.loading,.no-data{text-align:center;padding:60px 20px;color:#6b7280;font-size:16px}.no-data{display:flex;flex-direction:column;align-items:center;gap:16px}.no-data svg{width:64px;height:64px;color:#d1d5db}@media (max-width: 768px){.hr-approval-center-container{padding:16px}.filters-section{flex-direction:column;align-items:stretch}.filter-group{max-width:100%}.form-header{flex-direction:column;gap:12px}.form-status-section{align-items:flex-start}.form-actions{flex-wrap:wrap}.btn-action{flex:1;min-width:120px;justify-content:center}.form-details{grid-template-columns:1fr}}.shift-management-page{padding:2rem;background:#f9fafb;min-height:100vh}.shift-management-page.embedded{padding:0;background:transparent;min-height:auto}.shift-actions{margin-bottom:1.5rem}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#147886;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s}.shift-list{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.code-badge{display:inline-block;padding:.25rem .75rem;background:#dbeafe;color:#1e40af;border-radius:6px;font-size:.75rem;font-weight:700;font-family:Courier New,monospace}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.badge-success{background:#d1fae5;color:#065f46}.badge-secondary{background:#e5e7eb;color:#374151}.badge-danger{background:#fee2e2;color:#991b1b}.btn-edit,.btn-delete{padding:.5rem;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-edit:hover{background:#bfdbfe}.shift-loading{text-align:center;padding:3rem;color:#6b7280}.shift-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:600;color:#374151}.form-group input[type=text],.form-group input[type=time],.form-group input[type=number],.form-group textarea{padding:.625rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#147886}.form-group input[type=checkbox]{margin-right:.5rem}.form-hint{font-size:.75rem;color:#6b7280;margin-top:.25rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.btn-secondary{padding:.75rem 1.5rem;background:#f3f4f6;color:#374151;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.data-table{font-size:.875rem}.data-table th,.data-table td{padding:.75rem .5rem}}.schedule-management-page{padding:2rem;background:#f9fafb;min-height:100vh}.schedule-management-page.embedded{padding:0;background:transparent;min-height:auto}.schedule-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.btn-filter{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;min-width:100px;height:38px;border:2px solid #e2e8f0;background:#fff;color:#1e40af;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.filter-group select,.filter-group input[type=date]{padding:.625rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:border-color .2s;height:38px;box-sizing:border-box}.filter-group select:focus,.filter-group input[type=date]:focus{outline:none;border-color:#147886}.btn-view-toggle{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#147886;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s;height:38px;box-sizing:border-box;white-space:nowrap}.btn-view-toggle:hover{background:#0f5f6b}.schedule-calendar{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1rem}.calendar-day{min-height:120px;padding:.75rem;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;transition:all .2s}.calendar-day:hover{background:#f3f4f6;border-color:#147886}.calendar-day.weekend{background:#fef2f2}.calendar-day.today{border:2px solid #147886;background:#ecfeff}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.day-number{font-size:1.25rem;font-weight:700;color:#1f2937}.day-weekday{font-size:.75rem;color:#6b7280;font-weight:600}.day-schedules{display:flex;flex-direction:column;gap:.5rem}.schedule-item{padding:.5rem;background:#fff;border-radius:6px;border-left:3px solid #147886;font-size:.75rem;cursor:pointer;transition:all .2s}.schedule-item:hover{transform:translate(2px);box-shadow:0 2px 4px #0000001a}.schedule-item.status-scheduled{border-left-color:#3b82f6}.schedule-item.status-confirmed{border-left-color:#10b981}.schedule-item.status-cancelled{border-left-color:#ef4444;opacity:.6}.schedule-item.status-swapped{border-left-color:#f59e0b}.schedule-item.holiday{background:#fef3c7}.schedule-item.overtime{background:#fee2e2}.schedule-employee{font-weight:600;color:#1f2937;margin-bottom:.25rem}.schedule-shift{color:#6b7280;font-size:.7rem}.holiday-icon,.overtime-icon{margin-top:.25rem;font-size:.7rem;color:#f59e0b}.overtime-icon{color:#ef4444}.schedule-list{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.data-table th{padding:1rem;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.data-table td{padding:1rem;border-bottom:1px solid #e5e7eb;color:#6b7280}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.status-badge.status-scheduled{background:#dbeafe;color:#1e40af}.status-badge.status-confirmed{background:#d1fae5;color:#065f46}.status-badge.status-swapped{background:#fef3c7;color:#92400e}.icon-check{color:#10b981}.icon-times{color:#ef4444}.empty-cell{text-align:center;padding:3rem;color:#9ca3af}.schedule-loading{text-align:center;padding:3rem;color:#6b7280}.shift-management-container{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.calendar-grid{grid-template-columns:repeat(1,1fr)}.schedule-filters{flex-direction:column}.filter-group{min-width:100%}}.holiday-list{width:100%}.holiday-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.filters{display:flex;gap:12px}.filter-select{padding:8px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;background:#fff;color:#374151;cursor:pointer}.filter-select:focus{outline:none;border-color:var(--main-blue)}.date-mode-options{display:flex;gap:16px;flex-wrap:wrap}.date-mode-options .radio-label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--main-blue);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.loading,.no-data{text-align:center;padding:40px;color:#6b7280}.holidays-table-container{overflow-x:auto}.holidays-table{width:100%;border-collapse:collapse;font-size:.95rem}.holidays-table th{background:#f9fafb;padding:12px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.holidays-table td{padding:12px;border-bottom:1px solid #e5e7eb}.holidays-table tbody tr:hover{background:#f9fafb}.type-badge,.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85rem;font-weight:600}.type-national{background:#dbeafe;color:#1e40af}.type-company{background:#fef3c7;color:#92400e}.type-other{background:#e0e7ff;color:#3730a3}.type-natural_disaster{background:#ffedd5;color:#9a3412}.status-inactive{background:#fee2e2;color:#991b1b}.holiday-form{display:flex;flex-direction:column;gap:20px}.form-hint{margin:0;font-size:.85rem;font-weight:400;color:#9a3412;line-height:1.4}.form-group input,.form-group select,.form-group textarea{padding:10px;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #3b82f61a}.btn-secondary{padding:10px 20px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#f9fafb}.holiday-makeup-list{width:100%}.work-makeup-list{width:100%}.makeup-list-header{display:flex;justify-content:flex-end;margin-bottom:24px}.makeups-table-container{overflow-x:auto}.makeups-table{width:100%;border-collapse:collapse;font-size:.95rem}.makeups-table th{background:#f9fafb;padding:12px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.makeups-table td{padding:12px;border-bottom:1px solid #e5e7eb}.makeups-table tbody tr:hover{background:#f9fafb}.btn-icon{padding:6px;background:transparent;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:#f3f4f6;border-color:#9ca3af}.btn-icon.btn-danger:hover{background:#fee2e2;border-color:#dc2626;color:#dc2626}.makeup-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-weight:600;color:#374151}.form-group input,.form-group textarea{padding:10px;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.holiday-management-page{display:flex;min-height:100vh;background:#fff}.holiday-management-page.embedded{background:transparent;min-height:auto}.holiday-management-page .hr-sidebar{position:fixed;top:0;left:0;width:280px;height:100vh;background:var(--sidebar-bg);overflow-y:auto;overflow-x:hidden;z-index:1000;box-shadow:4px 0 20px #14788633;display:flex;flex-direction:column}.holiday-management-page .hr-sidebar .sidebar-header{padding:25px 20px;border-bottom:1px solid rgba(255,255,255,.1);text-align:center}.holiday-management-page .hr-sidebar .sidebar-logo{width:50px;height:50px;margin:0 auto 15px;background:linear-gradient(135deg,var(--main-accent) 0%,#ff9540 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:1.5em;box-shadow:0 4px 20px #ff812b4d}.holiday-management-page .hr-sidebar .sidebar-title{color:#fff;font-size:1.1em;font-weight:700;letter-spacing:1px;margin:0}.holiday-management-page .hr-sidebar .sidebar-subtitle{color:#ffffffb3;font-size:.85em;margin:5px 0 0;letter-spacing:.5px}.holiday-management-page .hr-sidebar .sidebar-nav{padding:20px 0;flex:1;overflow-y:auto}.holiday-management-page .hr-sidebar .nav-item{display:flex;align-items:center;gap:12px;color:#ffffffe6;padding:12px 20px;text-decoration:none;transition:all .3s ease;border-left:4px solid transparent;background:none;border-right:none;border-top:none;border-bottom:none;width:100%;text-align:left;cursor:pointer;font-size:1em;font-family:inherit}.holiday-management-page .hr-sidebar .nav-item:hover{background:#ffffff1a;color:#fff}.holiday-management-page .hr-sidebar .nav-item.active{background:var(--sidebar-active-bg);color:#fff;border-left-color:var(--sidebar-active-border);font-weight:600}.holiday-management-page .hr-sidebar .nav-icon{font-size:1.2em;min-width:20px}.holiday-management-page .hr-sidebar .sidebar-footer{padding:20px;border-top:1px solid rgba(255,255,255,.1);margin-top:auto;flex-shrink:0}.holiday-management-page .hr-sidebar .back-to-dashboard{width:100%;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:12px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:0}.holiday-management-page .hr-sidebar .back-to-dashboard:hover{background:#fff3}.holiday-management-page .hr-main{margin-left:280px;width:calc(100% - 280px);padding:30px;min-height:100vh}.holiday-management-page .hr-main-embedded{width:100%;padding:0;min-height:auto}.holiday-container{width:100%;margin:0}.holiday-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:16px 24px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.year-selector{display:flex;align-items:center;gap:12px}.year-selector label{font-weight:600;color:#374151}.year-select{padding:8px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;background:#fff;color:#374151;cursor:pointer;transition:all .2s ease}.year-select:hover{border-color:var(--main-blue)}.year-select:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #3b82f61a}.holiday-tabs{display:flex;gap:12px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.tab-button{display:flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-radius:8px;color:#6b7280;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95rem}.tab-button.active{background:var(--main-blue);color:#fff}.tab-button svg{width:18px;height:18px}.holiday-content{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);min-height:500px}.turnover-rate-analysis{padding:2rem;background:#f9fafb;min-height:100vh}.turnover-rate-analysis.embedded{padding:0;background:transparent;min-height:auto}.page-header{margin-bottom:2rem}.page-title{display:flex;align-items:center;gap:.75rem;font-size:1.75rem;font-weight:700;color:#1f2937}.turnover-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:180px}.filter-group label{font-size:.875rem;font-weight:600;color:#374151}.filter-group input[type=date],.filter-group select{padding:.625rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:border-color .2s}.filter-group input[type=date]:focus,.filter-group select:focus{outline:none;border-color:#147886}.turnover-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;border:2px solid #e5e7eb;transition:all .3s ease}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.summary-card.highlight{border-color:#147886;background:linear-gradient(135deg,#ecfeff,#cffafe)}.summary-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff}.summary-icon.avg-employees{background:linear-gradient(135deg,#3b82f6,#1e40af)}.summary-icon.resignations{background:linear-gradient(135deg,#ef4444,#dc2626)}.summary-icon.turnover-rate{background:linear-gradient(135deg,#147886,#0f5f6b)}.summary-content{flex:1}.summary-label{font-size:.875rem;color:#6b7280;font-weight:600;margin-bottom:.5rem}.summary-value{font-size:2rem;font-weight:800;color:#1f2937;font-family:Courier New,monospace}.turnover-monthly,.turnover-by-type{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.section-title{font-size:1.25rem;font-weight:700;color:#1f2937;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.monthly-table{overflow-x:auto}.monthly-table table{width:100%;border-collapse:collapse}.monthly-table thead{background:#f9fafb}.monthly-table th{padding:1rem;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.monthly-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.monthly-table th.sortable:hover{background-color:#f3f4f6}.monthly-table td{padding:1rem;border-bottom:1px solid #e5e7eb;color:#6b7280}.monthly-table tbody tr:hover{background:#f9fafb}.rate-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600}.rate-badge.low{background:#d1fae5;color:#065f46}.rate-badge.medium{background:#fef3c7;color:#92400e}.rate-badge.high{background:#fee2e2;color:#991b1b}.type-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.type-card{padding:1.5rem;background:#f9fafb;border-radius:8px;text-align:center;border:2px solid #e5e7eb}.type-label{font-size:.875rem;color:#6b7280;font-weight:600;margin-bottom:.75rem}.type-value{font-size:2rem;font-weight:800;color:#1f2937;font-family:Courier New,monospace}.turnover-loading,.turnover-empty{text-align:center;padding:3rem;color:#6b7280}@media (max-width: 768px){.turnover-summary{grid-template-columns:1fr}.turnover-filters{flex-direction:column}.filter-group{min-width:100%}}.cost-analysis-page{padding:2rem;background:#f5f7fa;min-height:100vh}.cost-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid #e0e6ed}.cost-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#64748b;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.cost-tab:hover{color:#3b82f6;background:#f1f5f9}.cost-tab.active{color:#3b82f6;border-bottom-color:#3b82f6;background:#eff6ff}.cost-filters{display:flex;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;flex-wrap:wrap}.btn-filter{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;min-width:100px;height:36px;border:2px solid #e2e8f0;background:#fff;color:#1e40af;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.btn-filter:hover{background:#f8fafc;border-color:#ff811b}.btn-filter .filter-badge{position:absolute;top:4px;right:4px;width:6px;height:6px;background:#ff811b;border-radius:50%}.filter-modal .form-group{margin-bottom:20px}.filter-modal .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.filter-modal .form-group input,.filter-modal .form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.filter-modal .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{font-size:.875rem;font-weight:500;color:#475569}.filter-group input,.filter-group select{padding:.5rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;transition:border-color .2s}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.cost-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}@media (min-width: 1400px){.cost-summary-cards{grid-template-columns:repeat(6,1fr)}}.summary-card{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;transition:transform .2s,box-shadow .2s;min-width:0;overflow:hidden}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.summary-card.highlight .card-label,.summary-card.highlight .card-value{color:#fff}.card-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#eff6ff;border-radius:8px;color:#3b82f6;font-size:1.5rem}.summary-card.highlight .card-icon{background:#fff3;color:#fff}.card-content{flex:1;min-width:0;overflow:hidden}.card-label{font-size:.875rem;color:#64748b;margin-bottom:.25rem}.card-value{font-size:1.05rem;font-weight:700;color:#1e293b;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.02em}.summary-card.highlight .card-value{font-size:1.1rem;color:#fff}@media (max-width: 1200px){.card-value{font-size:.95rem}.summary-card.highlight .card-value{font-size:1rem}}@media (max-width: 768px){.card-value{font-size:.9rem}}.cost-section{margin-bottom:2rem;background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.cost-section h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:#1e293b}.cost-table-wrapper{overflow-x:auto}.cost-table{width:100%;border-collapse:collapse}.cost-table thead{background:#f8fafc}.cost-table th{padding:.75rem 1rem;text-align:left;font-size:.875rem;font-weight:600;color:#475569;border-bottom:2px solid #e2e8f0}.cost-table td{padding:.75rem 1rem;font-size:.875rem;color:#64748b;border-bottom:1px solid #e2e8f0;word-wrap:break-word;overflow-wrap:break-word;vertical-align:middle}.cost-table .cost-value-cell{white-space:nowrap;font-weight:600;color:#1e293b;text-align:right;min-width:130px;padding-right:1.5rem}.cost-table th{white-space:nowrap}.cost-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.cost-table th.sortable:hover{background-color:#f1f5f9}.cost-table th:nth-child(6),.cost-table td:nth-child(6){text-align:right;min-width:140px}.cost-table th:nth-child(7),.cost-table td:nth-child(7){text-align:right;min-width:160px;padding-right:1.5rem}.cost-table th:last-child,.cost-table td:last-child{text-align:right;min-width:160px;padding-right:1.5rem}.cost-table tbody tr:hover{background:#f8fafc}.cost-table tbody tr:last-child td{border-bottom:none}.loading{display:flex;align-items:center;justify-content:center;padding:3rem;font-size:1rem;color:#64748b}@media (max-width: 768px){.cost-analysis-page{padding:1rem}.cost-filters{flex-direction:column}.filter-group{width:100%}.cost-summary-cards{grid-template-columns:1fr}.cost-table-wrapper{overflow-x:scroll}}.job-posting-list-page{min-height:calc(100vh - 200px);padding:2rem 0;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);overflow-x:hidden;width:100%;box-sizing:border-box}.job-posting-list-container{max-width:1600px;margin:0 auto;padding:0 1.5rem;width:100%;box-sizing:border-box}.postings-table-container{background:#fff;border-radius:.75rem;box-shadow:0 2px 4px #00000014;overflow:hidden;width:100%;box-sizing:border-box}.postings-table{width:100%;border-collapse:collapse;font-size:.9rem}.postings-table thead{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.postings-table th{padding:1rem .875rem;text-align:left;font-weight:600;font-size:.9rem;white-space:nowrap}.postings-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s;cursor:pointer}.postings-table tbody tr:hover{background-color:#f8fafc}.postings-table tbody tr:last-child{border-bottom:none}.postings-table td{padding:1rem .875rem;vertical-align:middle;color:#475569}.title-cell strong{font-size:.95rem}.job-type{display:inline-block;padding:.35rem .75rem;background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff;border-radius:.375rem;font-size:.8rem;font-weight:600;white-space:nowrap}@media (max-width: 1200px){.postings-table{font-size:.85rem}.postings-table th,.postings-table td{padding:.875rem .625rem}.title-cell strong{font-size:.9rem}}@media (max-width: 768px){.filters-section{flex-direction:column;align-items:stretch}.search-box{min-width:100%;max-width:100%}.filter-select{width:100%;min-width:100%}.postings-table-container{overflow-x:auto}.postings-table{min-width:800px;font-size:.8rem}.postings-table th,.postings-table td{padding:.75rem .5rem}.job-posting-list-container{padding:0 1rem}}@media (max-width: 480px){.postings-table{min-width:700px;font-size:.75rem}.view-details-btn{padding:.4rem .75rem;font-size:.8rem}.cell-content svg{width:.875rem;height:.875rem}}.job-posting-detail-page{min-height:calc(100vh - 200px);padding:2rem 0;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.job-posting-detail-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.back-button:hover{border-color:#3b82f6;color:#3b82f6}.posting-header{background:#fff;border-radius:1rem;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 6px -1px #0000001a}.header-meta{display:flex;gap:1rem;flex-wrap:wrap}.header-meta span{padding:.5rem 1rem;border-radius:.5rem;font-size:.9rem;font-weight:500}.job-type{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.department,.position{background:#f1f5f9;color:#64748b}.posting-content{display:grid;grid-template-columns:1fr 350px;gap:2rem}.no-content{color:#94a3b8;font-style:italic}.info-card,.contact-card{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a}.info-card h3,.contact-card h3{font-size:1.25rem;font-weight:600;color:#1e293b;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.info-item svg{width:1.25rem;height:1.25rem;color:#3b82f6;margin-top:.25rem;flex-shrink:0}.contact-info{display:flex;align-items:flex-start;gap:.75rem}.contact-info svg{width:1.25rem;height:1.25rem;color:#3b82f6;margin-top:.25rem;flex-shrink:0}.contact-info>div{display:flex;flex-direction:column;gap:.25rem}.contact-info .label{font-size:.875rem;color:#94a3b8}.contact-info .value{font-size:1rem;color:#1e293b;font-weight:500}.back-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s}.back-btn:hover{transform:scale(1.05);box-shadow:0 4px 6px -1px #3b82f64d}@media (max-width: 968px){.posting-content{grid-template-columns:1fr}.sidebar{order:-1}}@media (max-width: 768px){.header-meta{flex-direction:column}.content-section{padding:1.5rem}}.training-course-list-page{min-height:calc(100vh - 200px);padding:2rem 0;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.training-course-list-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.filters-section{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.search-box{flex:1;min-width:300px;position:relative;display:flex;align-items:center}.search-box svg{position:absolute;left:1rem;color:#94a3b8;width:1.25rem;height:1.25rem}.search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:2px solid #e2e8f0;border-radius:.5rem;font-size:1rem;transition:all .3s}.search-input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.filter-select{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:.5rem;font-size:1rem;background:#fff;cursor:pointer;transition:all .3s}.filter-select:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.course-card{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a;transition:all .3s;cursor:pointer;display:flex;flex-direction:column}.course-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a}.header-top{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.status-badge{padding:.25rem .75rem;border-radius:.5rem;font-size:.75rem;font-weight:500;white-space:nowrap}.category-badge{padding:.25rem .75rem;background:#f1f5f9;color:#64748b;border-radius:.5rem;font-size:.75rem;font-weight:500}.card-header h3{font-size:1.25rem;font-weight:600;color:#1e293b;margin:0}.card-body{flex:1;margin-bottom:1rem}.description{color:#64748b;font-size:.9rem;line-height:1.6;margin-bottom:1rem}.course-info{display:flex;flex-direction:column;gap:.75rem}.info-item{display:flex;align-items:center;gap:.5rem;color:#64748b;font-size:.9rem}.info-item svg{width:1rem;height:1rem;color:#10b981}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #e2e8f0}.full-badge{padding:.5rem 1rem;background:#fee2e2;color:#dc2626;border-radius:.5rem;font-size:.875rem;font-weight:500}.view-details-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:.5rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s}.view-details-btn:hover{transform:scale(1.05);box-shadow:0 4px 6px -1px #10b9814d}.view-details-btn svg{width:1rem;height:1rem}.empty-state{grid-column:1 / -1;text-align:center;padding:4rem 2rem;color:#94a3b8}@media (max-width: 768px){.courses-grid{grid-template-columns:1fr}.filters-section{flex-direction:column}.search-box{min-width:100%}.card-footer{flex-direction:column;align-items:flex-start;gap:1rem}}.training-course-detail-page{min-height:calc(100vh - 200px);padding:2rem 0;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.training-course-detail-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.back-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:2px solid #e2e8f0;border-radius:.5rem;font-size:.9rem;color:#64748b;cursor:pointer;transition:all .3s;margin-bottom:1.5rem}.back-button:hover{border-color:#10b981;color:#10b981}.back-button svg{width:1rem;height:1rem}.course-header{background:#fff;border-radius:1rem;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 6px -1px #0000001a}.header-badges{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.status-badge{padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;white-space:nowrap}.status-published{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.status-ongoing{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.status-completed{background:#94a3b8;color:#fff}.status-draft{background:#e2e8f0;color:#64748b}.category-badge{padding:.5rem 1rem;background:#f1f5f9;color:#64748b;border-radius:.5rem;font-size:.875rem;font-weight:500}.header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin-bottom:1rem}.course-description{font-size:1.1rem;color:#64748b;line-height:1.6;margin:0}.course-content{display:grid;grid-template-columns:1fr 350px;gap:2rem}.main-content{display:flex;flex-direction:column;gap:1.5rem}.content-section{background:#fff;border-radius:1rem;padding:2rem;box-shadow:0 4px 6px -1px #0000001a}.content-section h2{font-size:1.5rem;font-weight:600;color:#1e293b;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.description-content{color:#475569;line-height:1.8;font-size:1rem}.description-content p{margin:0;white-space:pre-wrap}.sidebar{display:flex;flex-direction:column;gap:1.5rem}.info-card,.enrollment-card,.action-card{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a}.info-card h3,.enrollment-card h3{font-size:1.25rem;font-weight:600;color:#1e293b;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.info-list{display:flex;flex-direction:column;gap:1rem}.info-item{display:flex;align-items:flex-start;gap:.75rem}.info-item svg{width:1.25rem;height:1.25rem;color:#10b981;margin-top:.25rem;flex-shrink:0}.info-item>div{display:flex;flex-direction:column;gap:.25rem;flex:1}.info-item .label{font-size:.875rem;color:#94a3b8}.info-item .value{font-size:1rem;color:#1e293b;font-weight:500}.enrollment-info{display:flex;flex-direction:column;gap:.75rem}.enrollment-status{padding:.5rem 1rem;border-radius:.5rem;font-size:.9rem;font-weight:500;text-align:center}.enrollment-status.status-pending{background:#fef3c7;color:#d97706}.enrollment-status.status-approved{background:#d1fae5;color:#059669}.enrollment-status.status-rejected{background:#fee2e2;color:#dc2626}.enrollment-status.status-enrolled{background:#dbeafe;color:#2563eb}.enrollment-status.status-completed{background:#e0e7ff;color:#6366f1}.enrollment-date,.approver,.rejection-reason{font-size:.9rem;color:#64748b;margin:0}.rejection-reason{color:#dc2626;font-style:italic}.enroll-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.enroll-button:hover:not(:disabled){transform:scale(1.02);box-shadow:0 4px 6px -1px #10b9814d}.enroll-button:disabled{opacity:.5;cursor:not-allowed}.enroll-button svg{width:1.25rem;height:1.25rem}.full-message{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:#fee2e2;color:#dc2626;border-radius:.5rem;text-align:center}.full-message svg{width:2rem;height:2rem}.full-message p{margin:0;font-weight:500}.enroll-modal-content{padding:1rem 0}.enroll-modal-content p{margin-bottom:1.5rem;color:#475569;line-height:1.6}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.cancel-button,.confirm-button{padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s}.cancel-button{background:#f1f5f9;color:#64748b}.cancel-button:hover:not(:disabled){background:#e2e8f0}.confirm-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.confirm-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 6px -1px #10b9814d}.cancel-button:disabled,.confirm-button:disabled{opacity:.5;cursor:not-allowed}.loading,.error-state{text-align:center;padding:4rem 2rem;color:#64748b}.error-state svg{margin-bottom:1rem;opacity:.5}.error-state p{font-size:1.1rem;margin-bottom:1.5rem}.back-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s}.back-btn:hover{transform:scale(1.05);box-shadow:0 4px 6px -1px #10b9814d}@media (max-width: 968px){.course-content{grid-template-columns:1fr}.sidebar{order:-1}}@media (max-width: 768px){.content-section{padding:1.5rem}}.historical-course-list-page{min-height:calc(100vh - 200px);padding:2rem 0;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);overflow-x:hidden;width:100%;box-sizing:border-box}.historical-course-list-container{max-width:1600px;margin:0 auto;padding:0 1.5rem;width:100%;box-sizing:border-box}.page-header{text-align:center;margin-bottom:2rem}.page-header h1{font-size:2.5rem;font-weight:700;color:#1e293b;margin-bottom:.5rem}.page-description{font-size:1.1rem;color:#64748b}.filters-section{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap;align-items:center;background:#fff;padding:1.25rem;border-radius:.75rem;box-shadow:0 2px 4px #00000014}.search-box{flex:1;min-width:280px;max-width:600px;position:relative;display:flex;align-items:center}.search-box svg{position:absolute;left:1rem;color:#94a3b8;width:1.25rem;height:1.25rem;z-index:1;flex-shrink:0}.search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:2px solid #e2e8f0;border-radius:.5rem;font-size:1rem;transition:all .3s;box-sizing:border-box}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-select{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:.5rem;font-size:1rem;background:#fff;cursor:pointer;transition:all .3s;min-width:150px;box-sizing:border-box}.filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.courses-table-container{background:#fff;border-radius:.75rem;box-shadow:0 2px 4px #00000014;overflow:hidden;width:100%;box-sizing:border-box}.courses-table{width:100%;border-collapse:collapse;font-size:.9rem}.courses-table thead{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.courses-table th{padding:1rem .875rem;text-align:left;font-weight:600;font-size:.9rem;white-space:nowrap}.courses-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s;cursor:pointer}.courses-table tbody tr:hover{background-color:#f8fafc}.courses-table tbody tr:last-child{border-bottom:none}.courses-table td{padding:1rem .875rem;vertical-align:middle;color:#475569}.title-cell{font-weight:600;color:#1e293b}.title-cell strong{font-size:.95rem;display:block;margin-bottom:.25rem}.description-preview{font-size:.8rem;color:#64748b;font-weight:400;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-content{display:flex;align-items:center;gap:.5rem}.cell-content svg{width:1rem;height:1rem;color:#3b82f6;flex-shrink:0}.cell-content span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-block;padding:.35rem .75rem;border-radius:.375rem;font-size:.8rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.status-badge.status-completed{background:#d1fae5;color:#065f46}.status-badge.status-draft{background:#e5e7eb;color:#4b5563}.category-badge{display:inline-block;padding:.35rem .75rem;border-radius:.375rem;font-size:.8rem;font-weight:600;background:#e0e7ff;color:#3730a3;white-space:nowrap}.view-details-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff;border:none;border-radius:.375rem;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .3s;white-space:nowrap}.view-details-btn:hover{transform:scale(1.05);box-shadow:0 4px 6px -1px #3b82f64d}.view-details-btn svg{width:.875rem;height:.875rem;flex-shrink:0}.empty-state{text-align:center;padding:4rem 2rem;color:#94a3b8}.empty-state svg{margin-bottom:1rem;opacity:.5}.empty-state p{font-size:1.1rem}.loading{text-align:center;padding:4rem;font-size:1.2rem;color:#64748b}@media (max-width: 1200px){.courses-table{font-size:.85rem}.courses-table th,.courses-table td{padding:.875rem .625rem}.title-cell strong{font-size:.9rem}}@media (max-width: 768px){.filters-section{flex-direction:column;align-items:stretch}.search-box{min-width:100%;max-width:100%}.filter-select{width:100%;min-width:100%}.courses-table-container{overflow-x:auto}.courses-table{min-width:1000px;font-size:.8rem}.courses-table th,.courses-table td{padding:.75rem .5rem}.historical-course-list-container{padding:0 1rem}}@media (max-width: 480px){.courses-table{min-width:900px;font-size:.75rem}.view-details-btn{padding:.4rem .75rem;font-size:.8rem}.cell-content svg{width:.875rem;height:.875rem}}.my-training-records-page{min-height:100vh;background:#f5f7fa;padding:2rem 0}.my-training-records-container{max-width:1200px;margin:0 auto;padding:0 2rem}.page-header{text-align:center;margin-bottom:2.5rem}.page-header h1{font-size:2.5rem;font-weight:800;color:var(--main-blue);margin:0 0 .5rem}.page-description{font-size:1.1rem;color:#6b7280;margin:0}.tabs-section{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid #e5e7eb}.my-training-records-page .tabs-section .tab-button{display:flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .3s ease;position:relative;top:2px}.my-training-records-page .tabs-section .tab-button:hover{color:var(--main-blue);background:#1478860d}.my-training-records-page .tabs-section .tab-button.active{color:var(--main-blue);border-bottom-color:var(--main-blue)}.my-training-records-page .tabs-section .tab-button .icon{font-size:1.1rem}.records-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 2px 8px #0000001a}.records-list{display:flex;flex-direction:column;gap:1.5rem}.record-card{background:#f9fafb;border-radius:12px;padding:1.5rem;border:2px solid #e5e7eb;transition:all .3s ease;cursor:pointer}.record-card:hover{border-color:var(--main-blue);box-shadow:0 4px 12px #1478861a;transform:translateY(-2px)}.card-header{margin-bottom:1rem}.header-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.card-header h3{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0;flex:1}.status-badge{padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.status-badge.status-completed{background:#dbeafe;color:#1e40af}.status-badge.status-cancelled{background:#f3f4f6;color:#4b5563}.type-badge{padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;background:#e0e7ff;color:#3730a3;white-space:nowrap}.card-body{display:flex;flex-direction:column;gap:1rem}.description{color:#6b7280;font-size:.95rem;line-height:1.6;margin:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.info-item .icon{color:var(--main-blue);width:18px;flex-shrink:0}.info-item .label{color:#6b7280;font-weight:600;min-width:100px}.info-item span:last-child{color:#1f2937;font-weight:500}.certificate-badge{padding:.25rem .5rem;background:#dbeafe;color:#1e40af;border-radius:6px;font-size:.75rem;font-weight:600}.skills-section,.achievements,.notes{padding:1rem;background:#fff;border-radius:8px;border-left:4px solid var(--main-blue)}.skills-section strong,.achievements strong,.notes strong{display:block;margin-bottom:.5rem;color:var(--main-blue);font-size:.9rem}.skills-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.skill-tag{padding:.375rem .75rem;background:#e0e7ff;color:#3730a3;border-radius:12px;font-size:.85rem;font-weight:500}.achievements,.notes{color:#4b5563;font-size:.9rem;line-height:1.6}.empty-state{text-align:center;padding:4rem 2rem;color:#6b7280}.empty-state .icon{margin-bottom:1rem;opacity:.5}.empty-state p{font-size:1.1rem;margin:0}.loading{text-align:center;padding:4rem 2rem;color:#6b7280;font-size:1.1rem}@media (max-width: 768px){.my-training-records-container{padding:0 1rem}.page-header h1{font-size:2rem}.my-training-records-page .tabs-section{flex-direction:column;gap:0}.my-training-records-page .tabs-section .tab-button{width:100%;justify-content:center;border-bottom:1px solid #e5e7eb;border-radius:0}.my-training-records-page .tabs-section .tab-button.active{border-bottom-color:var(--main-blue)}.info-grid{grid-template-columns:1fr}.records-section{padding:1rem}}.template-selector{padding:20px}.template-filters{display:flex;gap:15px;margin-bottom:20px;flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:200px}.search-input{width:100%;padding:10px 40px 10px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em}.search-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#6b7280}.filter-group{display:flex;flex-direction:column;gap:5px;min-width:150px}.filter-select{padding:10px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;max-height:500px;overflow-y:auto;padding:10px}.template-card{padding:20px;background:#fff;border:2px solid var(--gray-border);border-radius:12px;cursor:pointer;transition:all .3s ease}.template-card:hover{border-color:var(--main-accent);box-shadow:0 4px 12px #ff812b26;transform:translateY(-2px)}.template-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.template-name{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.template-category{padding:4px 10px;background:var(--main-blue-light);color:var(--main-blue);border-radius:12px;font-size:.8em;font-weight:600}.template-description{color:#6b7280;font-size:.9em;margin:10px 0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.template-footer{margin-top:15px;padding-top:15px;border-top:1px solid var(--gray-border)}.template-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.template-type{padding:4px 10px;background:#e0f2fe;color:var(--main-blue);border-radius:8px;font-size:.85em;font-weight:600}.template-usage{display:flex;align-items:center;gap:5px;color:#6b7280;font-size:.85em}.template-flow{display:flex;align-items:center;gap:5px;color:var(--main-blue);font-size:.85em;font-weight:500}.empty-state{text-align:center;padding:60px 20px;color:#6b7280}.empty-icon{font-size:4em;margin-bottom:20px;opacity:.5}.loading{text-align:center;padding:40px;color:var(--main-blue)}.approval-dashboard-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.approval-dashboard-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:10px;font-weight:600;font-size:.95em;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;gap:8px}.btn-primary{background:#fff;color:var(--main-blue);border:1px solid var(--main-blue)}.btn-primary:hover{background:var(--main-blue);color:#fff}.btn-secondary{background:#fff;color:var(--main-blue);border:1px solid var(--main-blue)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-icon{font-size:3em;color:var(--main-blue)}.forms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:25px}.form-card{position:relative;background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.forms-list{display:flex;flex-direction:column;gap:15px}.form-list-item{position:relative;display:flex;align-items:center;gap:15px;background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.form-list-item.selected{border:2px solid var(--main-blue);box-shadow:0 4px 12px #18454c33}.form-list-item:hover{transform:translate(5px);box-shadow:0 4px 12px #18454c1f}.form-list-content{flex:1;display:flex;flex-direction:column;gap:10px}.form-list-header{display:flex;justify-content:space-between;align-items:center;gap:15px}.form-list-meta{display:flex;gap:20px;color:#6b7280;font-size:.9em;flex-wrap:wrap;align-items:center}.form-list-meta .form-number{font-weight:600;color:var(--main-blue);background:#f9fafb;padding:4px 8px;border-radius:6px}.form-list-meta .form-type{font-weight:600;color:var(--main-accent)}.form-list-meta .amount{color:var(--main-accent);font-weight:700}.form-list-meta .form-date{color:#9ca3af;margin-left:auto}@media (max-width: 768px){.approval-dashboard-container{padding:20px 15px}.filters-section{flex-direction:column}.filters-left{width:100%}.filters-right{width:100%;justify-content:flex-end}.search-box{min-width:100%}.filter-group{width:100%}.stats-grid,.forms-grid{grid-template-columns:1fr}}.approval-form-list-embedded{display:block;width:100%;background:transparent;padding:0;min-height:auto}.approval-form-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.approval-form-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.approval-form-list-container .list-header-card{background:#fff;border-radius:12px;padding:14px 16px;margin:0 0 16px;box-shadow:0 2px 10px #0000000d;width:100%;box-sizing:border-box}.approval-form-list-container .header-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%}.approval-form-list-container .action-buttons{display:flex;gap:12px;width:auto;min-width:0;margin-left:auto;align-items:center;flex-wrap:wrap}.approval-form-list-container .action-buttons-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.approval-form-list-container .action-buttons-right{margin-left:auto;display:flex;align-items:center}.approval-form-list-container .forms-table-container{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 10px #0000000d;width:100%;margin:0;box-sizing:border-box}.list-header-card{background:#fff;border-radius:12px;padding:18px 20px;margin-bottom:20px;box-shadow:0 2px 10px #0000000d;width:100%}.filter-panel-slot{flex:1;min-width:0}.action-buttons{display:flex;gap:16px;width:100%;margin-left:auto;align-items:center}.action-buttons-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.action-buttons-right{margin-left:auto;display:flex;align-items:center}.btn-filter-toggle{position:relative}.btn-filter-toggle.open{background:var(--main-blue);color:#fff}.filter-dot{width:8px;height:8px;border-radius:50%;background:#ef4444;display:inline-block}.filter-modal .form-group{margin-bottom:12px}.filter-modal .form-group label{display:block;margin-bottom:6px;font-weight:600;color:var(--main-blue)}.filter-modal .filter-input,.filter-modal .filter-select{width:100%}.filter-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.btn-clear-filters{display:flex;align-items:center;gap:6px;height:40px;padding:0 14px;background:#fff;border:1px solid var(--gray-border);border-radius:8px;color:#6b7280;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease}.view-toggle{display:flex;gap:4px;background:#fff;padding:3px;border-radius:8px;box-shadow:0 2px 8px #0000001a;border:1px solid var(--gray-border)}.view-btn{width:34px;height:34px;border:none;background:transparent;cursor:pointer;border-radius:6px;color:#6b7280;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-secondary{height:40px;padding:0 14px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;gap:8px;background:#fff;color:var(--main-blue);border:2px solid var(--main-blue)}.btn-create{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;height:40px;padding:0 14px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9em;white-space:nowrap}.batch-actions-bar{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:var(--main-blue-light);border-radius:8px;margin-bottom:20px}.batch-select{display:flex;align-items:center;gap:10px}.batch-select input[type=checkbox]{width:18px;height:18px;cursor:pointer}.batch-select label{font-weight:600;color:var(--main-blue);cursor:pointer}.selected-count{color:var(--main-blue);font-weight:600;margin-left:10px}.batch-buttons{display:flex;gap:10px}.btn-batch-approve,.btn-batch-reject,.btn-batch-export{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-batch-approve{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-batch-approve:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-batch-reject{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-batch-reject:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-batch-export{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.btn-batch-export:hover:not(:disabled){background:linear-gradient(135deg,var(--main-accent) 0%,#ff7a2e 100%);transform:translateY(-2px);box-shadow:0 4px 12px #18454c4d}.btn-batch-approve:disabled,.btn-batch-reject:disabled,.btn-batch-export:disabled{opacity:.5;cursor:not-allowed}.btn-batch-print{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-batch-print:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #6366f14d}.btn-batch-print:disabled{opacity:.5;cursor:not-allowed}.btn-batch-submit{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-batch-submit:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.btn-batch-submit:disabled{opacity:.5;cursor:not-allowed}.forms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:18px}.form-card{position:relative;background:#fff;border-radius:12px;padding:18px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:12px}.form-card.selected{border:2px solid var(--main-blue);box-shadow:0 4px 12px #18454c33}.form-checkbox{position:absolute;top:15px;right:15px;z-index:10}.form-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--main-blue)}.form-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.form-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.form-number{font-size:.9em;font-weight:600;color:var(--main-blue);padding:8px 12px;background:#f9fafb;border-radius:8px}.form-info{display:flex;flex-direction:column;gap:8px;padding:15px;background:#f9fafb;border-radius:12px}.info-value.amount{color:var(--main-accent);font-weight:700;font-size:1.1em}.form-date{color:#9ca3af;font-size:.85em}.flow-name{color:var(--main-blue);font-size:.85em;font-weight:600}.forms-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 2px 10px #0000000d;overflow-x:auto}.forms-table{width:100%;border-collapse:collapse;min-width:1200px}.forms-table thead{background:#f9fafb}.forms-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap;cursor:default}.forms-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.forms-table th.sortable:hover{background-color:#f3f4f6}.forms-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151;vertical-align:middle}.forms-table tbody tr{transition:all .2s ease}.forms-table tbody tr:hover{background:#f9fafb}.forms-table tbody tr.selected{background:#e0f2fe}.form-title-cell{display:flex;flex-direction:column;gap:6px}.flow-badge{font-size:.75em;color:var(--main-accent);font-weight:600}.amount-value{color:var(--main-accent);font-weight:700}.progress-cell{display:flex;flex-direction:column;gap:6px;min-width:100px}.progress-bar{width:100%;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--main-blue) 0%,var(--main-accent) 100%);transition:width .3s ease}.btn-view{padding:6px 12px;background:var(--main-blue);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.85em}.btn-view:hover{background:var(--main-accent);transform:translateY(-1px);box-shadow:0 2px 8px #18454c33}.action-buttons-cell{display:flex;gap:8px;align-items:center}.btn-submit-small{padding:6px 12px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.85em;display:flex;align-items:center;gap:4px}.btn-submit-small:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f64d}.forms-table input[type=checkbox]:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.forms-table th input[type=checkbox]:disabled{opacity:.3}@media (max-width: 768px){.approval-form-list-container{padding:20px 15px}.filters-section{flex-direction:column}.filters-left{width:100%}.filters-right{width:100%;justify-content:flex-end}.search-box{min-width:100%}.filter-group{width:100%}.forms-grid{grid-template-columns:1fr}.forms-table-container{overflow-x:scroll}}.form-renderer{margin:0 auto;padding:2.5rem 3rem;background:linear-gradient(to bottom,#fff,#fafbfc);border-radius:12px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft JhengHei,PingFang SC,Hiragino Sans GB,sans-serif;box-sizing:border-box}.form-renderer[data-preview-mode=true]{padding:2.5rem 3rem!important;width:100%!important;max-width:100%!important;margin:0 auto!important;background:linear-gradient(to bottom,#fff,#fafbfc)!important;border-radius:12px!important;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d!important;overflow:visible!important}.form-renderer.form-renderer-absolute[data-preview-mode=true]{padding:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;width:100%!important;max-width:100%!important;margin:0 auto!important;overflow:visible!important}.form-renderer-absolute .form-renderer-actions{width:fit-content;margin:0 auto 24px}.form-renderer-pages{display:flex;flex-direction:column;align-items:center;gap:0}.form-renderer-abs-field{padding:0;overflow:visible!important;height:auto!important;min-height:fit-content!important}.form-renderer-abs-field .form-renderer-abs-content{overflow:visible!important;min-height:fit-content!important;height:auto!important}.form-renderer-abs-content{width:100%;min-height:100%;height:auto;box-sizing:border-box;overflow:visible!important;padding:6px 8px;background:#fff9;border-radius:6px;display:flex;flex-direction:column}.form-renderer-absolute .form-renderer-field label{margin-bottom:6px}.form-renderer-abs-content .form-renderer-field .checkbox-group:not(.horizontal),.form-renderer-abs-content .form-renderer-field .radio-group:not(.horizontal),.form-renderer-abs-content .checkbox-group:not(.horizontal),.form-renderer-abs-content .radio-group:not(.horizontal){flex:1;display:flex!important;flex-direction:column;gap:.875rem;padding:1rem;background:#f8fafc;border-radius:8px;border:2px solid #e2e8f0;overflow:visible!important;min-height:0;width:100%;box-sizing:border-box}.form-renderer-abs-content .form-renderer-field .checkbox-group.horizontal,.form-renderer-abs-content .form-renderer-field .radio-group.horizontal,.form-renderer-abs-content .checkbox-group.horizontal,.form-renderer-abs-content .radio-group.horizontal,.form-renderer-abs-field .checkbox-group.horizontal,.form-renderer-abs-field .radio-group.horizontal,.form-renderer-abs-field .form-renderer-field .checkbox-group.horizontal,.form-renderer-abs-field .form-renderer-field .radio-group.horizontal{flex-direction:row!important;flex-wrap:wrap!important;gap:1.25rem!important;overflow:visible!important}.form-renderer-title{margin-top:0;margin-bottom:.75rem;font-size:2rem;font-weight:700;color:#18454c;text-align:center;letter-spacing:-.02em;line-height:1.3;position:relative;padding-bottom:1rem}.form-renderer-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(to right,#18454c,#2d7a8a);border-radius:2px}.form-renderer-description{margin-bottom:2.5rem;color:#64748b;line-height:1.7;text-align:center;font-size:.95rem;padding:0 1rem}.form-renderer-fields{display:flex;flex-direction:column;gap:2.25rem}.form-renderer-row{display:flex;gap:1.5rem;flex-wrap:wrap;align-items:flex-start;width:100%;box-sizing:border-box;position:relative;z-index:auto}.form-renderer-field{display:flex;flex-direction:column;box-sizing:border-box;min-width:0;position:relative;z-index:auto;isolation:isolate}.form-renderer-field label{display:block;margin-bottom:.625rem;font-weight:600;color:#1e293b;font-size:.9375rem;letter-spacing:-.01em}.form-renderer-field .signature-field{width:100%;position:relative;z-index:auto;isolation:isolate;contain:layout style}.form-renderer-field .signature-placeholder{width:100%!important;border:2px dashed #cbd5e1!important;border-radius:10px!important;padding:3rem 2rem!important;text-align:center!important;color:#94a3b8!important;background:linear-gradient(135deg,#f8fafc,#fff)!important;min-height:120px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:.9375rem!important;font-weight:500!important;transition:all .2s ease!important;box-shadow:inset 0 2px 4px #00000005!important;position:relative!important;z-index:auto!important}.form-renderer-field .signature-placeholder:hover{border-color:#18454c!important;background:linear-gradient(135deg,#f1f5f9,#fff)!important;color:#64748b!important}.form-renderer-field .required{color:#d32f2f;margin-left:.25rem}.form-renderer-field input[type=text],.form-renderer-field input[type=number],.form-renderer-field input[type=date],.form-renderer-field input[type=datetime-local],.form-renderer-field input[type=time],.form-renderer-field input[type=file],.form-renderer-field textarea,.form-renderer-field select{width:100%;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.9375rem;font-family:inherit;background:#fff;color:#1e293b;transition:all .2s ease;box-sizing:border-box}.form-renderer-field input::placeholder,.form-renderer-field textarea::placeholder{color:#94a3b8;opacity:1}.form-renderer-field input:focus,.form-renderer-field textarea:focus,.form-renderer-field select:focus{outline:none;border-color:#18454c;box-shadow:0 0 0 3px #18454c1a;background:#fff}.form-renderer-field input.error,.form-renderer-field textarea.error,.form-renderer-field select.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-renderer-field input:disabled,.form-renderer-field textarea:disabled,.form-renderer-field select:disabled{background:#f8fafc;cursor:not-allowed;opacity:.7;color:#64748b;border-color:#e2e8f0}.form-renderer-field.system-field{position:relative}.form-renderer-field.system-field:after{content:"（系統自動帶入）";position:absolute;right:0;top:0;font-size:.75rem;color:#94a3b8;font-style:italic;font-weight:400;background:#ffffffe6;padding:.25rem .5rem;border-radius:4px}.form-renderer-field textarea{resize:vertical;min-height:120px;line-height:1.6}.form-renderer-field select[multiple]{min-height:120px;padding:.5rem}.form-section{margin:2.5rem 0;padding:1.5rem 1.5rem 1rem;background:#f8fafc;border-left:4px solid #18454c;border-radius:8px}.form-section h5{margin:0 0 .5rem;font-size:1.25rem;font-weight:700;color:#18454c;letter-spacing:-.01em}.section-description{margin:.5rem 0 0;color:#64748b;font-size:.9375rem;line-height:1.6}.form-table{margin-top:.5rem}.form-table table{width:100%;border-collapse:collapse;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff}.form-table thead{background:#f8fafc}.form-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e2e8f0;border-right:1px solid #e2e8f0;font-size:.875rem}.form-table th:last-child{border-right:none}.form-table td{padding:.5rem 1rem;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;background:#fff}.form-table td:last-child{border-right:none}.form-table tbody tr:last-child td{border-bottom:none}.form-table td input[type=text],.form-table td input[type=number],.form-table td input[type=date]{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;background:#fff;box-sizing:border-box}.form-table td input[type=text]:focus,.form-table td input[type=number]:focus,.form-table td input[type=date]:focus{outline:none;border-color:#18454c;box-shadow:0 0 0 3px #18454c1a}.form-table td input[type=text]:disabled,.form-table td input[type=number]:disabled,.form-table td input[type=date]:disabled{background:#f9fafb;cursor:not-allowed}.form-table td span{color:#6b7280;font-size:.875rem}.form-divider{margin:2.5rem 0;border:none;border-top:2px solid #e2e8f0;border-radius:1px}.field-description{display:block;margin-top:.5rem;font-size:.8125rem;color:#64748b;line-height:1.5}.field-error{display:block;margin-top:.5rem;font-size:.8125rem;color:#ef4444;font-weight:500;padding:.5rem .75rem;background:#fef2f2;border-radius:6px;border-left:3px solid #ef4444}.form-renderer-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:3rem;padding-top:2rem;border-top:2px solid #e2e8f0}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a;letter-spacing:-.01em}.btn-primary{background:linear-gradient(135deg,#18454c,#2d7a8a);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#0f2e33,#18454c);box-shadow:0 4px 12px #18454c4d;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 4px #18454c33}.btn-secondary{background:#fff;color:#475569;border:2px solid #e2e8f0}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.btn-secondary:active{transform:translateY(0)}.signature-field{width:100%;position:relative;z-index:auto}.signature-display{width:100%;height:120px;min-height:120px;display:flex;justify-content:center;align-items:center;padding:.5rem;background:linear-gradient(135deg,#f8fafc,#fff);border-radius:10px;border:2px solid #e2e8f0;position:relative;z-index:auto;box-shadow:inset 0 2px 4px #00000005}.signature-display img{width:100%;max-width:100%;height:120px;min-height:120px;border:2px solid #e2e8f0;border-radius:8px;object-fit:contain;box-shadow:0 2px 8px #00000014;background:#fff;padding:.5rem;display:block}.signature-placeholder{border:2px dashed #cbd5e1;border-radius:10px;padding:3rem 2rem;text-align:center;color:#94a3b8;background:linear-gradient(135deg,#f8fafc,#fff);height:120px;min-height:120px;display:flex;align-items:center;justify-content:center;width:100%;position:relative;z-index:auto;font-size:.9375rem;font-weight:500;transition:all .2s ease;box-shadow:inset 0 2px 4px #00000005}.signature-placeholder:hover{border-color:#18454c;background:linear-gradient(135deg,#f1f5f9,#fff);color:#64748b}.approval-form-detail-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.approval-form-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.form-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:1px}.status-badge.approving{background:#dbeafe;color:#1e40af}.status-badge.cancelled{background:#e5e7eb;color:#6b7280}.header-actions{display:flex;gap:10px;flex-wrap:wrap}.btn-print,.btn-export-pdf{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;gap:8px}.btn-print{background:#18454c;color:#fff}.btn-print:hover{background:#0f2e33;transform:translateY(-2px);box-shadow:0 4px 8px #18454c4d}.btn-export-pdf{background:#dc2626;color:#fff}.btn-export-pdf:hover{background:#b91c1c;transform:translateY(-2px);box-shadow:0 4px 8px #dc26264d}.btn-progress{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none;background:#52c41a;color:#fff}.btn-progress:hover{background:#73d13d}.btn-delete{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;display:flex;align-items:center;gap:8px}.btn-delete:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-delete:disabled{opacity:.6;cursor:not-allowed}.info-value.amount{color:var(--main-accent);font-weight:700;font-size:1.2em}.form-data-display{background:#f9fafb;border-radius:12px;padding:20px}.form-data-item{display:flex;padding:12px 0;border-bottom:1px solid var(--gray-border)}.form-data-item:last-child{border-bottom:none}.data-label{font-weight:600;color:var(--main-blue);min-width:150px}.data-value{color:#374151;flex:1}.travel-form-table{width:100%;margin:20px 0;background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #00000014}.travel-form-table>div:first-child{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e5e7eb}.travel-form-table h2{font-size:28px;font-weight:700;color:#18454c;margin:0;letter-spacing:1px}.form-table{width:100%;border-collapse:collapse;border:2px solid #d1d5db;font-family:Microsoft JhengHei,Arial,sans-serif;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.form-table td{border:1px solid #e5e7eb;padding:14px 16px;vertical-align:top;font-size:15px;line-height:1.6}.form-table .table-label{width:15%;background:linear-gradient(to bottom,#f9fafb,#f3f4f6);font-weight:600;color:#18454c;text-align:left;border-right:2px solid #e5e7eb;font-size:15px}.form-table .table-value{width:35%;background:#fff;color:#374151;padding-left:20px}.form-table .signature-cell{min-height:100px;text-align:center;vertical-align:middle;display:flex;align-items:center;justify-content:center;background:#fafafa;border:2px dashed #d1d5db;border-radius:8px;padding:12px;transition:all .3s ease;position:relative}.form-table .table-value .signature-cell{margin:0}.form-table .signature-cell.has-signature{background:#fff;border:2px solid #18454c;border-style:solid}.form-table .signature-cell img{max-width:100%;max-height:70px;object-fit:contain;border-radius:4px;display:block;border:none;background:transparent}.form-table .signature-cell span{color:#9ca3af;font-size:14px;font-weight:500;-webkit-user-select:none;user-select:none}.nested-table{width:100%;border-collapse:collapse;border:1px solid #333;margin:0}.nested-table th,.nested-table td{border:1px solid #333;padding:8px;text-align:center}.nested-table th{background:#f0f0f0;font-weight:700}.nested-table thead th{background:#f0f0f0}.nested-table tbody tr:last-child{font-weight:700}.nested-table small{font-weight:400;font-size:.8em}.proposal-display{background:#fff;border:2px solid var(--main-blue);border-radius:8px;padding:30px;position:relative}.proposal-header{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--main-blue)}.proposal-title{font-size:2em;font-weight:800;color:var(--main-blue);margin:0;letter-spacing:2px}.proposal-content{margin-bottom:30px}.proposal-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.proposal-field{margin-bottom:20px}.proposal-field label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px;font-size:.95em}.proposal-field span{display:block;padding:10px;background:#f9fafb;border:1px solid var(--gray-border);border-radius:4px;color:var(--main-blue)}.proposal-subject{font-weight:600;font-size:1.1em}.proposal-description{padding:15px;background:#f9fafb;border:1px solid var(--gray-border);border-radius:4px;color:var(--main-blue);white-space:pre-wrap;line-height:1.6;min-height:100px}.proposal-approval-section{margin-top:40px;padding-top:30px;border-top:2px solid var(--gray-border)}.approval-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.approval-field{margin-bottom:20px}.approval-field label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px;font-size:.95em}.approval-box{min-height:80px;border:2px dashed var(--gray-border);border-radius:4px;background:#fafafa;display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative}.approval-box.has-signature{border:2px solid var(--main-blue);background:#fff;padding:5px}.approval-placeholder{color:#9ca3af;font-size:.9em}.signature-in-box{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;min-height:70px}.signature-in-box img{max-width:100%;max-height:70px;object-fit:contain;border-radius:4px}.btn-remove-signature-in-box{position:absolute;top:-8px;right:-8px;background:var(--error-500, #ef4444);color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;font-weight:700;line-height:1;transition:all .2s ease;box-shadow:0 2px 4px #0003;z-index:10}.btn-remove-signature-in-box:hover{transform:scale(1.1);background:#dc2626}.cosign-boxes{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;justify-content:center;color:#9ca3af;font-size:.9em}@media (max-width: 768px){.proposal-row,.approval-row{grid-template-columns:1fr}}.records-timeline{display:flex;flex-direction:column;gap:20px}.record-item{display:flex;gap:20px;padding:20px;background:#f9fafb;border-radius:12px;border-left:4px solid var(--main-blue)}.record-step{width:40px;height:40px;border-radius:50%;background:var(--main-blue);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.record-content{flex:1}.record-header{display:flex;gap:15px;align-items:center;margin-bottom:10px;flex-wrap:wrap}.record-action{font-weight:700;color:var(--main-blue);font-size:1.1em}.record-approver{color:#6b7280;font-weight:600}.record-date{color:#9ca3af;font-size:.9em;margin-left:auto}.record-comment{margin-top:12px;padding:12px 16px;background:#f0f9ff;border-left:3px solid var(--main-blue);border-radius:8px;box-shadow:0 1px 3px #0000001a}.record-comment-label{display:flex;align-items:center;font-size:.85em;font-weight:600;color:var(--main-blue);margin-bottom:8px}.record-comment-text{color:#374151;line-height:1.6;white-space:pre-wrap;word-break:break-word;font-size:.95em}.record-title{font-weight:400;color:#6b7280;font-size:.9em;margin-left:4px}.record-signature{margin-top:12px;padding:10px;background:#f9fafb;border-radius:8px;border:1px solid var(--gray-border)}.signature-label{font-size:.85em;color:#6b7280;margin-bottom:8px;font-weight:600}.signature-image{max-width:200px;max-height:80px;border:1px solid var(--gray-border);border-radius:4px;background:#fff;padding:5px}.action-section{margin-top:30px;padding-top:30px;border-top:2px solid var(--gray-border);display:flex;flex-direction:column;gap:15px}.action-section>button{align-self:flex-end}.action-comment{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;margin-bottom:15px;resize:vertical}.attachments-list{display:flex;flex-direction:column;gap:12px}.attachment-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 16px;background:#f9fafb;border-radius:8px;border:1px solid var(--gray-border);transition:all .3s ease}.attachment-item:hover{border-color:var(--main-accent);box-shadow:0 2px 8px #ff812b1a}.attachment-info{display:flex;align-items:center;gap:10px;flex:1}.attachment-icon{color:var(--main-blue);font-size:1.2em}.attachment-name{font-size:14px;font-weight:600;color:var(--main-blue);word-break:break-all}.attachment-size{font-size:12px;color:#666;margin-left:10px}.attachment-actions{display:flex;gap:10px;align-items:center}.btn-preview,.btn-download{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-decoration:none;color:#fff;background:var(--main-blue);transition:all .3s ease;border:none;cursor:pointer}.btn-preview:hover,.btn-download:hover{background:var(--main-accent);transform:translateY(-1px)}.btn-preview{background:#52c41a}.btn-preview:hover{background:#73d13d}.action-comment:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.comment-form{margin-bottom:30px;padding:20px;background:#f9fafb;border-radius:12px}.comment-input{width:100%;padding:12px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;resize:vertical;margin-bottom:10px;transition:all .3s ease}.comment-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.btn-comment-submit{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-comment-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #18454c4d}.btn-comment-submit:disabled{opacity:.5;cursor:not-allowed}.comments-list{display:flex;flex-direction:column;gap:20px}.no-comments{text-align:center;padding:40px;color:#6b7280;font-style:italic}.comment-item{padding:20px;background:#fff;border-radius:12px;border:1px solid var(--gray-border)}.comment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.comment-author{display:flex;align-items:center;gap:12px}.comment-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1em;flex-shrink:0}.comment-avatar.small{width:32px;height:32px;font-size:.9em}.comment-author-info{display:flex;flex-direction:column;gap:4px}.comment-author-name{font-weight:700;color:var(--main-blue);font-size:1em}.comment-date{font-size:.85em;color:#6b7280}.comment-content{color:#374151;line-height:1.6;margin-bottom:12px;white-space:pre-wrap;word-break:break-word}.btn-comment-delete{padding:6px 10px;background:transparent;border:none;color:#ef4444;cursor:pointer;transition:all .3s ease;border-radius:6px}.btn-comment-delete:hover{background:#fee2e2}.btn-reply{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:1px solid var(--gray-border);color:var(--main-blue);border-radius:6px;font-size:.9em;cursor:pointer;transition:all .3s ease}.btn-reply:hover{background:var(--main-blue-light);border-color:var(--main-blue)}.reply-form{margin-top:15px;padding:15px;background:#f9fafb;border-radius:8px;border-left:3px solid var(--main-blue)}.reply-input{width:100%;padding:10px;border:2px solid var(--gray-border);border-radius:6px;font-size:.95em;font-family:inherit;resize:vertical;margin-bottom:10px}.reply-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.reply-actions{display:flex;gap:10px;justify-content:flex-end}.btn-reply-submit,.btn-reply-cancel{padding:8px 16px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-reply-submit{background:var(--main-blue);color:#fff}.btn-reply-submit:hover:not(:disabled){background:var(--main-accent)}.btn-reply-submit:disabled{opacity:.5;cursor:not-allowed}.btn-reply-cancel{background:#f3f4f6;color:#6b7280}.btn-reply-cancel:hover{background:#e5e7eb}.replies-list{margin-top:15px;padding-left:20px;border-left:2px solid var(--main-blue-light);display:flex;flex-direction:column;gap:12px}.reply-item{padding:12px;background:#f9fafb;border-radius:8px}.btn-urge{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-urge:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b4d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease;overflow:hidden;width:100%}.modal-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin:0 0 15px}.modal-description{color:#6b7280;font-size:.95em;line-height:1.6;margin:0 0 15px}.modal-actions,.urge-modal-actions{display:flex;gap:20px;justify-content:flex-end;margin-top:20px;padding-top:20px;border-top:1px solid var(--gray-border)}.modal-actions .btn-cancel,.urge-modal-actions .btn-cancel{padding:12px 24px;background:#fff;color:#6b7280;border:2px solid var(--gray-border);border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:100px;margin:0}.modal-actions .btn-cancel:hover,.urge-modal-actions .btn-cancel:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.urge-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}.urge-modal{max-width:500px;width:90%;padding:30px;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;animation:slideUp .3s ease}.urge-message-input{width:100%;padding:12px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;resize:vertical;margin:15px 0;transition:all .3s ease}.urge-message-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.btn-urge-submit{padding:12px 24px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px;margin:0}.btn-urge-submit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b4d}.btn-urge-submit:active{transform:translateY(0)}.comment-input-wrapper,.reply-input-wrapper{position:relative}.mention-highlight{background:linear-gradient(135deg,var(--main-blue-light) 0%,#e0f2fe 100%);color:var(--main-blue);padding:2px 6px;border-radius:4px;font-weight:600;cursor:pointer;transition:all .2s ease}.mention-highlight:hover{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.mention-suggestions{position:fixed;background:#fff;border:2px solid var(--main-blue);border-radius:8px;box-shadow:0 4px 20px #00000026;z-index:1000;max-height:200px;overflow-y:auto;min-width:250px}.mention-suggestion-item{display:flex;align-items:center;gap:10px;padding:10px 15px;cursor:pointer;transition:all .2s ease;border-bottom:1px solid #f0f0f0}.mention-suggestion-item:last-child{border-bottom:none}.mention-suggestion-item:hover{background:var(--main-blue-light)}.mention-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9em;flex-shrink:0}.mention-info{flex:1;min-width:0}.mention-name{font-weight:600;color:var(--main-blue);font-size:.95em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-username{font-size:.85em;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-signature{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-signature:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf64d}.signature-preview{position:relative;display:inline-block;border:2px solid var(--main-blue);border-radius:8px;padding:5px;background:#fff}.signature-preview img{max-width:150px;max-height:60px;display:block}.btn-remove-signature{position:absolute;top:-10px;right:-10px;background:var(--error-500);color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;transition:all .2s ease}.btn-remove-signature:hover{transform:scale(1.1)}.btn-save-signature{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-save-signature:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-save-signature:disabled{opacity:.6;cursor:not-allowed}.signature-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.signature-modal{max-width:90%;max-height:90%;overflow:auto}.action-buttons{display:flex;gap:15px;justify-content:flex-end;align-items:center}.btn-submit,.btn-approve,.btn-reject,.btn-return{padding:12px 24px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;width:100%}.btn-approve{background:#d1fae5;color:#065f46;position:relative}.btn-approve:hover:not(:disabled){background:#10b981;color:#fff}.btn-approve-required{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:2px solid #dc2626;animation:pulse-warning 2s infinite}.btn-approve-required:hover:not(:disabled){box-shadow:0 4px 12px #f59e0b80}.required-badge{position:absolute;top:-8px;right:-8px;background:#dc2626;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;box-shadow:0 2px 4px #0003}@keyframes pulse-warning{0%,to{box-shadow:0 0 #f59e0bb3}50%{box-shadow:0 0 0 8px #f59e0b00}}.btn-reject{background:#fee2e2;color:#991b1b}.btn-reject:hover:not(:disabled){background:#ef4444;color:#fff}.btn-return{background:#fef3c7;color:#92400e}.btn-return:hover:not(:disabled){background:#f59e0b;color:#fff}.btn-withdraw{padding:12px 24px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;gap:8px;box-shadow:0 2px 8px #6366f133}.btn-withdraw:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #6366f14d;background:linear-gradient(135deg,#4f46e5,#7c3aed)}.btn-withdraw:active:not(:disabled){transform:translateY(0)}.btn-withdraw:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-submit:disabled,.btn-approve:disabled,.btn-reject:disabled,.btn-return:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.approval-form-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}}.items-list{margin-top:10px;overflow-x:auto}.items-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.items-table thead{background:var(--main-blue);color:#fff}.items-table th{padding:12px;text-align:left;font-weight:600;font-size:.9em}.items-table td{padding:10px 12px;border-bottom:1px solid #e5e7eb;font-size:.9em}.items-table tbody tr:last-child td{border-bottom:none}.nested-object{background:#f9fafb;border-radius:8px;padding:12px;margin-top:8px;border-left:3px solid var(--main-blue)}.nested-item{display:flex;padding:6px 0;border-bottom:1px solid #e5e7eb}.nested-item:last-child{border-bottom:none}.nested-label{font-weight:600;color:var(--main-blue);min-width:120px;font-size:.9em}.nested-value{color:#374151;flex:1;font-size:.9em}.data-value{color:#374151;flex:1;word-break:break-word}.data-value .items-list,.data-value .nested-object{margin-top:8px}.approval-form-create-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.approval-form-create-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.approval-form-create{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.approval-form-create .form-renderer{margin:0 auto!important;padding:2.5rem 3rem!important;background:linear-gradient(to bottom,#fff,#fafbfc)!important;border-radius:12px!important;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft JhengHei,PingFang SC,Hiragino Sans GB,sans-serif!important;overflow:visible!important}.approval-form-create .form-renderer.form-renderer-absolute{padding:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft JhengHei,PingFang SC,Hiragino Sans GB,sans-serif!important;overflow:visible!important}.approval-form-create .form-renderer .form-renderer-actions{display:none!important}.form-group input[type=text],.form-group input[type=number],.form-group textarea,.form-group select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box;color:var(--main-blue)}.json-textarea{font-family:Courier New,monospace;font-size:.9em;background:#f9fafb}.source-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto;padding:15px;background:#f9fafb;border-radius:12px}.source-item{display:flex;align-items:center;justify-content:space-between;padding:20px;background:#fff;border-radius:8px;border:2px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.source-item:hover{border-color:var(--main-accent);background:#fff7ed}.source-item.selected{border-color:var(--main-blue);background:var(--main-blue-light)}.source-info{flex:1}.source-title{font-weight:700;color:var(--main-blue);font-size:1.1em;margin-bottom:8px}.source-detail{color:#6b7280;font-size:.9em}.check-mark{font-size:1.5em;color:var(--main-blue);font-weight:700}.no-source-data{text-align:center;padding:40px;background:#f9fafb;border-radius:12px}.no-source-data p{color:#6b7280;margin-bottom:15px;font-size:1.1em}.file-input-wrapper{display:flex;align-items:center;gap:12px;width:100%}.file-input-hidden{position:absolute;width:0;height:0;opacity:0;overflow:hidden}.btn-choose-file{padding:10px 20px;background:var(--main-blue);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;flex-shrink:0}.btn-choose-file:hover:not(:disabled){background:var(--main-accent);transform:translateY(-1px);box-shadow:0 2px 8px #18454c33}.btn-choose-file:disabled{opacity:.6;cursor:not-allowed}.file-input-text{color:#6b7280;font-size:14px;flex:1}.file-hint{margin-top:8px;font-size:12px;color:#666}.file-list{margin-top:15px;display:flex;flex-direction:column;gap:10px}.file-item{display:flex;align-items:center;gap:15px;padding:12px;background:#f9fafb;border-radius:6px;border:1px solid var(--gray-border)}.file-name{flex:1;font-size:14px;color:#333;word-break:break-all}.file-size{font-size:12px;color:#666;min-width:60px;text-align:right}.btn-remove-file{padding:4px 8px;background:#fee2e2;color:#991b1b;border:none;border-radius:4px;cursor:pointer;font-size:16px;line-height:1;transition:background .3s;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center}.btn-remove-file:hover{background:#fecaca}.btn-remove-file:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.approval-form-create-container{padding:0 20px}.approval-form-create{padding:25px}.form-row{grid-template-columns:1fr}}.trip-date-container{display:flex;gap:30px;align-items:flex-start}.trip-date-section{flex:1;display:flex;flex-direction:column;gap:10px}.trip-date-label{font-weight:600;color:var(--main-blue);font-size:1em;margin-bottom:5px}.trip-date-inputs{display:flex;flex-direction:column;gap:10px}.trip-date-input{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;transition:all .3s ease;background:#fff;box-sizing:border-box;color:var(--main-blue)}.trip-date-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.trip-time-inputs{display:flex;gap:10px;align-items:flex-end}.trip-time-group{display:flex;flex-direction:column;gap:5px;flex:1}.trip-time-label{font-size:.9em;color:#666;font-weight:500;margin-bottom:2px}.trip-time-input{width:100%;padding:10px 12px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;text-align:center;transition:all .3s ease;background:#fff;box-sizing:border-box;color:var(--main-blue)}.trip-time-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.trip-time-input::-webkit-inner-spin-button,.trip-time-input::-webkit-outer-spin-button{opacity:1;height:20px}@media (max-width: 768px){.trip-date-container{flex-direction:column;gap:20px}}.approval-form-edit-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.approval-form-edit-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.form-number-display{padding:10px 20px;background:var(--main-blue-light);border-radius:8px;font-weight:600;color:var(--main-blue);font-size:1.1em}.approval-form-edit{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.form-data-edit{display:flex;flex-direction:column;gap:15px;padding:20px;background:#f9fafb;border-radius:12px}.form-data-item-edit{display:flex;align-items:center;gap:15px}.form-data-item-edit label{font-weight:600;color:var(--main-blue);min-width:150px;font-size:.95em}.form-data-input{flex:1;padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;color:var(--main-blue)}.form-data-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.form-data-input:disabled{background:#f9fafb;cursor:not-allowed}@media (max-width: 768px){.approval-form-edit-container{padding:0 20px}.approval-form-edit{padding:25px}.form-header{flex-direction:column;align-items:flex-start;gap:15px}}.approval-flow-list-embedded{display:block;width:100%;background:transparent;padding:0;min-height:auto}.approval-flow-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.approval-flow-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.flows-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;border:1px solid var(--gray-border)}.flows-table{width:100%;border-collapse:collapse}.flows-table thead{background:linear-gradient(135deg,#147886,#0f5d68);color:#fff}.flows-table th{padding:16px;text-align:left;font-weight:600;font-size:.95em;border-bottom:2px solid rgba(255,255,255,.2)}.flows-table th:first-child{padding-left:24px}.flows-table th:last-child{padding-right:24px}.flows-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.flows-table tbody tr:hover{background-color:#f9fafb}.flows-table tbody tr:last-child{border-bottom:none}.flows-table td{padding:16px;font-size:.95em;color:#374151;vertical-align:top}.flows-table td:first-child{padding-left:24px}.flows-table td:last-child{padding-right:24px}.flow-name-cell{display:flex;flex-direction:column;gap:6px}.flow-name{font-weight:600;color:var(--main-blue);font-size:1em}.default-badge{padding:2px 8px;border-radius:6px;font-size:.75em;font-weight:600;background:var(--main-accent);color:#fff;white-space:nowrap;display:inline-block;margin-left:8px}.flow-description{color:#6b7280;font-size:.85em;line-height:1.5;margin-top:4px}.status-badge{padding:4px 12px;border-radius:12px;font-size:.8em;font-weight:600;white-space:nowrap;display:inline-block}.status-badge.inactive{background:#e5e7eb;color:#6b7280}.btn-edit,.btn-delete{padding:6px 12px;border-radius:6px;font-weight:600;font-size:.85em;cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;justify-content:center;min-width:36px;height:36px}.btn-edit:hover{background:#e5e7eb;color:var(--main-blue)}.btn-delete:hover{background:#ef4444;color:#fff}@media (max-width: 768px){.approval-flow-list-container{padding:20px 15px}.filters-section{flex-direction:column}.filters-left{width:100%}.filters-right{width:100%;justify-content:flex-end}.search-box{min-width:100%}.filter-group{width:100%}.flows-table-container{overflow-x:auto}.flows-table{min-width:800px}.flows-table th,.flows-table td{padding:12px 8px;font-size:.85em}}.approval-flow-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.approval-flow-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.form-header{display:none}.approval-flow-form{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.section-title{font-size:1.4em;font-weight:700;color:var(--main-blue);margin:0;padding-bottom:10px;border-bottom:2px solid var(--main-blue-light)}.btn-add-step{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none;background:var(--main-blue);color:#fff}.btn-add-step:hover:not(:disabled){background:var(--main-accent);transform:translateY(-1px)}.btn-add-step:disabled{opacity:.6;cursor:not-allowed}.checkbox-group{display:flex;flex-direction:column;gap:15px;margin-top:0}.form-group .checkbox-group{margin-bottom:0}.form-type-row{display:flex;align-items:flex-start;gap:20px}.form-type-row select{flex:1;min-width:0}.checkbox-group-inline{display:flex;flex-direction:column;gap:12px;flex-shrink:0;padding-top:0;margin-top:0}.no-steps{text-align:center;padding:40px;background:#f9fafb;border-radius:12px;color:#6b7280}.steps-list{display:flex;flex-direction:column;gap:20px}.step-item{padding:20px;background:#f9fafb;border-radius:12px;border:2px solid var(--gray-border)}.step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.step-number{width:40px;height:40px;border-radius:50%;background:var(--main-blue);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2em}.btn-remove-step{padding:6px 12px;border-radius:8px;font-size:1em;cursor:pointer;transition:all .3s ease;border:none;background:#fee2e2;color:#991b1b}.btn-remove-step:hover:not(:disabled){background:#ef4444;color:#fff}.btn-remove-step:disabled{opacity:.6;cursor:not-allowed}.step-content{display:flex;flex-direction:column;gap:15px}.approver-info{padding:10px 15px;background:#fff;border-radius:8px;font-weight:600;color:var(--main-blue)}.approver-info.approver-type-desc{font-weight:400;color:var(--text-secondary, #666);background:var(--gray-bg, #f5f5f5)}.form-hint{font-size:.85em;color:#6b7280;margin-top:-5px}.btn-condition{padding:8px 16px;border-radius:8px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;border:2px solid var(--main-blue);background:#fff;color:var(--main-blue);margin-top:10px}.btn-condition:hover:not(:disabled){background:var(--main-blue-light);transform:translateY(-1px)}.btn-condition:disabled{opacity:.6;cursor:not-allowed}.condition-preview{margin-top:10px;padding:10px 15px;background:#e0f2fe;border-radius:8px;font-size:.9em;color:var(--main-blue);font-weight:500}.condition-editor{margin-top:15px;padding:20px;background:#f9fafb;border-radius:12px;border:2px solid var(--main-blue-light)}.condition-editor .form-group{margin-bottom:20px}.condition-editor select[multiple]{min-height:100px;padding:8px}.btn-close-condition{padding:8px 16px;border-radius:8px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;border:2px solid #6b7280;background:#fff;color:#6b7280;margin-top:10px}.btn-close-condition:hover{background:#6b7280;color:#fff}.form-group input[type=checkbox]{width:18px;height:18px;margin-right:8px;cursor:pointer}@media (max-width: 768px){.approval-flow-form-container{padding:0 20px}.approval-flow-form{padding:25px}.form-row{grid-template-columns:1fr}}.proposal-form-page{min-height:100vh;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.proposal-form-container{max-width:1200px;margin:0 auto;padding:40px 20px}.form-header{text-align:center;margin-bottom:40px}.page-title{font-size:2.5em;font-weight:800;color:var(--main-blue);margin:0;letter-spacing:2px;text-shadow:2px 2px 4px rgba(24,69,76,.1)}.proposal-form{background:#fff;border-radius:16px;padding:40px;box-shadow:0 8px 32px #18454c1f;border:2px solid rgba(24,69,76,.1);position:relative}.proposal-form:before{content:"+";position:absolute;top:-2px;left:-2px;width:20px;height:20px;border-left:3px solid var(--main-blue);border-top:3px solid var(--main-blue);font-size:16px;color:var(--main-blue);display:flex;align-items:center;justify-content:center;background:#fff;border-radius:0 0 8px}.proposal-form:after{content:"";position:absolute;top:-2px;right:-2px;width:20px;height:20px;border-right:3px solid var(--main-blue);border-top:3px solid var(--main-blue);background:#fff;border-radius:0 0 0 8px}.form-section{margin-bottom:40px;padding-bottom:30px;border-bottom:1px solid var(--gray-border)}.section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid var(--main-accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px;font-size:.95em}.required{color:#ef4444;margin-left:4px}.form-input,.form-textarea{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;transition:all .3s ease;background:#fff;color:var(--main-blue)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.form-textarea{resize:vertical;min-height:120px;font-family:inherit}.btn-submit{background:linear-gradient(135deg,var(--main-accent) 0%,#ff9540 100%);color:#fff;box-shadow:0 4px 12px #ff812b4d}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ff812b66}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.proposal-form-container{padding:20px 10px}.proposal-form{padding:20px}.page-title{font-size:1.8em}.form-row{grid-template-columns:1fr}}.approval-progress-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.approval-progress-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.progress-header{background:#fff;border-radius:8px;padding:30px;margin-bottom:30px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.form-title{font-size:24px;font-weight:600;color:#333;margin:0 0 10px}.form-number{font-size:14px;color:#666}.header-status{margin-left:20px}.status-badge{display:inline-block;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500}.status-badge.draft{background:#e0e0e0;color:#666}.status-badge.approving{background:#cfe2ff;color:#084298}.status-badge.approved{background:#d1e7dd;color:#0f5132}.status-badge.rejected{background:#f8d7da;color:#842029}.status-badge.cancelled{background:#e0e0e0;color:#666}.progress-bar-section{background:#fff;border-radius:8px;padding:30px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.progress-text{font-size:18px;font-weight:700;color:#333}.progress-percentage{font-size:24px;font-weight:800;color:#1890ff}.progress-bar{width:100%;height:32px;background:#f0f0f0;border-radius:16px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,#1890ff,#52c41a);border-radius:16px;transition:width .3s ease}.steps-timeline{background:#fff;border-radius:8px;padding:30px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.section-title{font-size:22px;font-weight:700;color:#333;margin:0 0 30px;padding-bottom:15px;border-bottom:3px solid #f0f0f0}.timeline-item{display:flex;margin-bottom:30px;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-marker{position:relative;margin-right:30px;flex-shrink:0}.marker-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;background:#f0f0f0;border:4px solid #e0e0e0}.timeline-item.approved .marker-icon{background:#d1e7dd;border-width:4px;border-color:#52c41a}.timeline-item.rejected .marker-icon{background:#f8d7da;border-width:4px;border-color:#ff4d4f}.timeline-item.in_progress .marker-icon{background:#cfe2ff;border-width:4px;border-color:#1890ff;animation:pulse 2s infinite}.timeline-line{position:absolute;left:50%;top:56px;width:4px;height:calc(100% + 30px);background:#e0e0e0;transform:translate(-50%)}.timeline-item:last-child .timeline-line{display:none}.timeline-content{flex:1;background:#fafafa;border-radius:8px;padding:20px;border-left:6px solid #e0e0e0}.timeline-item.approved .timeline-content{border-left-width:6px;border-left-color:#52c41a}.timeline-item.rejected .timeline-content{border-left-width:6px;border-left-color:#ff4d4f}.timeline-item.in_progress .timeline-content{border-left-width:6px;border-left-color:#1890ff}.step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.step-name{font-size:20px;font-weight:700;color:#333;margin:0}.step-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.step-description{font-size:14px;color:#666;margin:10px 0}.step-approver{margin-top:10px;font-size:14px}.approver-label{color:#666}.approver-name{color:#333;font-weight:500;margin:0 10px}.approver-time{color:#999;font-size:12px}.step-comment{margin-top:10px;padding:10px;background:#fff;border-radius:4px;font-size:14px}.comment-label{color:#666;font-weight:500}.comment-text{color:#333;margin-left:8px}.step-action{margin-top:15px}.records-section{background:#fff;border-radius:8px;padding:30px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.records-list{display:flex;flex-direction:column;gap:15px}.record-item{padding:15px;background:#fafafa;border-radius:6px;border-left:4px solid #1890ff}.record-header{display:flex;align-items:center;gap:15px;margin-bottom:10px}.record-step{font-weight:600;color:#333}.record-action{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.record-action.approve{background:#d1e7dd;color:#0f5132}.record-action.reject{background:#f8d7da;color:#842029}.record-action.return{background:#fff3cd;color:#856404}.record-date{margin-left:auto;font-size:12px;color:#999}.record-details{display:flex;flex-direction:column;gap:5px}.record-approver{font-weight:500;color:#333}.record-comment{margin-top:10px;padding:10px 14px;background:#f0f9ff;border-left:3px solid #1890ff;border-radius:6px;box-shadow:0 1px 2px #0000000d}.record-comment-label{display:flex;align-items:center;font-size:.85em;font-weight:600;color:#1890ff;margin-bottom:6px}.record-comment-text{color:#374151;line-height:1.5;white-space:pre-wrap;word-break:break-word;font-size:.9em}.record-title{font-weight:400;color:#6b7280;font-size:.85em;margin-left:4px}.time-info-section{background:#fff;border-radius:8px;padding:30px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.time-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.time-info-item{display:flex;flex-direction:column;gap:5px}.time-label{font-size:14px;color:#666}.time-value{font-size:16px;color:#333;font-weight:500}.action-buttons{display:flex;gap:15px;justify-content:center;margin-top:30px}.btn-secondary{padding:12px 24px;background:#fff;border:2px solid #1890ff;color:#1890ff;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s}.btn-secondary:hover{background:#1890ff;color:#fff}.btn-view{padding:10px 20px;background:#1890ff;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:background .3s}.btn-view:hover{background:#40a9ff}.loading,.error{text-align:center;padding:60px 20px;font-size:18px;color:#666}.error{color:#ff4d4f}.approval-template-management{padding:2rem}.approval-template-management.embedded{padding:1rem}.page-header,.page-header-embedded{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{margin:0;font-size:1.75rem;font-weight:600}.page-header-embedded h2{margin:0;font-size:1.5rem;font-weight:600}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.template-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;transition:all .2s}.template-card:hover{box-shadow:0 4px 8px #0000001a;border-color:#4a90e2}.template-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.template-card-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#333;flex:1}.template-card-actions{display:flex;gap:.25rem}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;cursor:pointer;border-radius:4px;color:#666;transition:all .2s}.template-description{margin:0 0 1rem;color:#666;font-size:.875rem;line-height:1.5}.template-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.template-type,.template-category,.template-status,.template-public{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.template-type{background:#e3f2fd;color:#1976d2}.template-category{background:#f3e5f5;color:#7b1fa2}.template-status.active{background:#e8f5e9;color:#2e7d32}.template-status.inactive{background:#ffebee;color:#c62828}.template-public{background:#fff3e0;color:#e65100}.template-stats{margin-bottom:.75rem;font-size:.875rem;color:#666}.template-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid #f0f0f0;font-size:.75rem;color:#999}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#999}.empty-state svg{width:64px;height:64px;margin-bottom:1rem;opacity:.5}.template-form{max-height:80vh;overflow-y:auto}.form-section{margin-bottom:2rem}.form-section h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#333}.loading{text-align:center;padding:4rem;color:#999}.form-designer-new{display:flex;flex-direction:column;height:100vh;max-height:100vh;background:#f5f7fa;overflow:hidden}.designer-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.toolbar-left{display:flex;align-items:center}.designer-title{margin:0;font-size:20px;font-weight:600;color:#18454c}.toolbar-right{display:flex;gap:8px}.toolbar-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:14px;cursor:pointer;transition:all .2s}.toolbar-btn:hover{background:#f9fafb;border-color:#9ca3af}.toolbar-btn.active,.toolbar-btn.primary{background:#18454c;color:#fff;border-color:#18454c}.toolbar-btn.primary:hover{background:#0f2e33}.designer-content{display:flex;flex:1;overflow:hidden;min-height:0;height:calc(100vh - 80px)}.designer-sidebar-left{width:280px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.sidebar-header{display:flex;align-items:center;gap:8px;padding:16px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.sidebar-header h3{margin:0;font-size:16px;font-weight:600;color:#374151}.field-types-list{flex:1;overflow-y:auto;padding:12px;display:grid;grid-template-columns:1fr;gap:8px}.field-type-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;cursor:grab;transition:all .2s}.field-type-item:hover{border-color:#18454c;background:#f0f9ff;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.field-type-item:active{cursor:grabbing}.field-type-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;font-size:18px}.field-type-label{font-size:14px;color:#374151;font-weight:500}.designer-canvas-container{flex:1;overflow-y:auto;padding:24px;background:#e5e7eb}.pages-container{display:flex;flex-direction:column;gap:40px;align-items:center;padding:40px 0;min-height:100%}.designer-canvas{max-width:900px;margin:0 auto;min-height:100%;width:100%;transition:max-width .3s ease}.page-absolute-canvas{position:relative}.designer-canvas-container .form-renderer-abs-field{box-sizing:border-box;border:1px dashed rgba(24,69,76,.5);background:transparent;cursor:move;padding:0;margin:0}.designer-canvas-container .form-renderer-abs-field.designer-selected{border:2px dashed #18454c;z-index:10}.designer-canvas-container .form-renderer-abs-field.designer-selected .designer-resize-handle{opacity:1;pointer-events:auto}.designer-canvas-container .form-renderer-abs-field:not(.designer-selected) .designer-resize-handle{opacity:0;pointer-events:none;transition:opacity .2s}.designer-canvas-container .form-renderer-abs-field:hover .designer-resize-handle{opacity:1;pointer-events:auto}.designer-preview .form-renderer-abs-field{cursor:default!important;border:none!important;background:transparent!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important}.designer-preview .form-renderer-abs-content{pointer-events:auto!important}.designer-preview .form-renderer-abs-content input,.designer-preview .form-renderer-abs-content textarea,.designer-preview .form-renderer-abs-content select{pointer-events:auto!important;cursor:text!important}.designer-preview .form-renderer-abs-content input[type=date],.designer-preview .form-renderer-abs-content input[type=datetime-local],.designer-preview .form-renderer-abs-content input[type=time]{cursor:pointer!important}.designer-canvas-container .form-renderer-abs-content{pointer-events:none;width:100%!important;height:100%!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important}.designer-canvas-container .form-renderer-abs-content>input,.designer-canvas-container .form-renderer-abs-content>select,.designer-canvas-container .form-renderer-abs-content input[type=text],.designer-canvas-container .form-renderer-abs-content input[type=number],.designer-canvas-container .form-renderer-abs-content input[type=date],.designer-canvas-container .form-renderer-abs-content input[type=datetime-local],.designer-canvas-container .form-renderer-abs-content input[type=time],.designer-canvas-container .form-renderer-abs-content select{pointer-events:none!important;width:100%!important;box-sizing:border-box!important;max-width:100%!important;min-width:0!important;flex-shrink:1!important}.designer-canvas-container .form-renderer-abs-content>textarea,.designer-canvas-container .form-renderer-abs-content textarea{pointer-events:none!important;width:100%!important;height:100%!important;box-sizing:border-box!important;max-width:100%!important;max-height:100%!important;min-width:0!important;min-height:0!important;flex:1 1 auto!important;resize:none!important}.designer-canvas-container .form-renderer-abs-content>label,.designer-canvas-container .form-renderer-abs-content label{pointer-events:none!important;width:100%!important;box-sizing:border-box!important;display:block!important;flex-shrink:0!important}.designer-canvas-container .form-renderer-abs-content .radio-group,.designer-canvas-container .form-renderer-abs-content .checkbox-group{pointer-events:none!important;width:100%!important;box-sizing:border-box!important;flex-shrink:1!important;min-width:0!important}.designer-canvas-container .form-renderer-abs-content .signature-field{pointer-events:none!important;width:100%!important;height:100%!important;box-sizing:border-box!important;flex:1!important;min-width:0!important;min-height:0!important}.designer-canvas-container .form-renderer-abs-content .form-table{width:100%!important;box-sizing:border-box!important;flex:1!important;min-width:0!important;overflow:hidden!important}.designer-canvas-container .form-renderer-abs-content .form-table table{width:100%!important;box-sizing:border-box!important;table-layout:auto!important}.designer-canvas-container .form-renderer-abs-content .form-section,.designer-canvas-container .form-renderer-abs-content .form-divider{width:100%!important;box-sizing:border-box!important;flex-shrink:0!important}.abs-field-label{font-size:calc(.9375rem * var(--font-scale, 1));font-weight:600;color:#1e293b;margin-bottom:calc(.625rem * var(--font-scale, 1));-webkit-user-select:none;user-select:none;letter-spacing:-.01em}.abs-field-section{font-size:1rem;font-weight:600;color:#18454c;-webkit-user-select:none;user-select:none;border-bottom:2px solid rgba(24,69,76,.2);padding-bottom:.5rem;margin:0}.abs-field-divider{height:2px;background:#e2e8f0;margin:.5rem 0;border:none}.abs-field-input,.abs-field-textarea{width:100%;box-sizing:border-box;border:2px solid #e2e8f0;border-radius:8px;padding:calc(.75rem * var(--font-scale, 1)) calc(1rem * var(--font-scale, 1));background:#fff;font-size:calc(.9375rem * var(--font-scale, 1));font-family:inherit;color:#1e293b;outline:none;pointer-events:none;margin:0}.abs-field-textarea{resize:none;min-height:calc(120px * var(--font-scale, 1));line-height:1.6}.abs-field-options{display:flex;flex-direction:column;gap:.875rem;padding:1rem;background:#f8fafc;border-radius:8px;border:2px solid #e2e8f0;pointer-events:none;margin:0}.abs-field-options.horizontal{flex-direction:row;flex-wrap:wrap;gap:1.25rem}.abs-field-option{display:inline-flex;align-items:center;gap:.625rem;font-size:.9375rem;color:#1e293b;padding:.5rem;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.abs-field-signature{width:100%;height:100%;border:2px dashed #cbd5e1;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:.9375rem;font-weight:500;background:linear-gradient(135deg,#f8fafc,#fff);min-height:120px;pointer-events:none;box-shadow:inset 0 2px 4px #00000005;margin:0}.abs-field-table{width:100%;margin:0}.abs-field-table table{width:100%;border-collapse:collapse;font-size:.9375rem;pointer-events:none}.abs-field-table th,.abs-field-table td{border:1px solid #e2e8f0;padding:.5rem}.abs-field-table th{background:#f8fafc;font-weight:600;color:#1e293b}.designer-resize-handle{position:absolute;background:#18454c;z-index:20;transition:background .2s,transform .2s}.designer-resize-handle:hover{background:#0f2e33;transform:scale(1.2)}.designer-resize-handle-corner{right:-2px;bottom:-2px;width:16px;height:16px;cursor:se-resize;border-radius:0 0 6px;box-shadow:0 2px 4px #0003}.designer-resize-handle-corner:after{content:"";position:absolute;right:3px;bottom:3px;width:8px;height:8px;border-right:2px solid white;border-bottom:2px solid white}.designer-resize-handle-width{top:50%;right:-4px;transform:translateY(-50%);width:8px;height:40px;cursor:ew-resize;border-radius:4px;box-shadow:0 1px 3px #0003}.designer-resize-handle-width:hover{transform:translateY(-50%) scaleX(1.3)}.designer-resize-handle-height{left:50%;bottom:-4px;transform:translate(-50%);width:40px;height:8px;cursor:ns-resize;border-radius:4px;box-shadow:0 1px 3px #0003}.designer-resize-handle-height:hover{transform:translate(-50%) scaleY(1.3)}.designer-canvas.drag-over{background:#f0f9ff;border:2px dashed #18454c;border-radius:8px}.canvas-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:20px}.section-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:16px;font-weight:600;color:#374151}.form-group input,.form-group textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#18454c;box-shadow:0 0 0 3px #18454c1a}.empty-canvas{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af;text-align:center}.empty-canvas svg{width:64px;height:64px;margin-bottom:16px;opacity:.5}.layout-controls{margin-bottom:16px;padding:12px;background:#f9fafb;border-radius:6px}.layout-mode-toggle{display:flex;gap:8px}.layout-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#6b7280;font-size:13px;cursor:pointer;transition:all .2s}.layout-btn:hover{border-color:#18454c;color:#18454c}.layout-btn.active{background:#18454c;color:#fff;border-color:#18454c}.fields-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;width:100%;box-sizing:border-box}.field-grid-item{background:transparent;border:1px dashed rgba(24,69,76,.5);border-radius:0;padding:0;margin:0;cursor:pointer;transition:border-color .15s;min-width:0;position:relative;flex-shrink:0;flex-grow:0;box-sizing:border-box;overflow:visible;display:flex;flex-direction:column;z-index:1}.field-grid-item.resizing{-webkit-user-select:none;user-select:none;cursor:ew-resize}.field-grid-item.resizing-height{-webkit-user-select:none;user-select:none;cursor:ns-resize}.field-resize-handle{position:absolute;z-index:5;background:transparent;transition:background .2s}.field-resize-handle-width{top:0;right:-4px;width:8px;height:100%;cursor:ew-resize}.field-resize-handle-height{bottom:-4px;left:0;width:100%;height:8px;cursor:ns-resize;pointer-events:auto}.field-resize-handle:hover,.field-grid-item:hover .field-resize-handle{background:#18454c1a}.field-grid-item.resizing .field-resize-handle,.field-grid-item.resizing-height .field-resize-handle{background:#18454c33}.field-grid-item:hover{border-color:#18454cb3}.field-grid-item.selected{border:2px dashed #18454c;z-index:10}.field-grid-item.drag-over{border-color:#18454cb3}.field-grid-header{display:none}.field-grid-info{display:flex;align-items:center;gap:8px;flex:1}.field-grid-label{font-weight:500;color:#374151;font-size:13px}.field-grid-width{font-size:10px;color:#6b7280;background:transparent;padding:0 4px;border-radius:2px}.field-grid-header-actions{position:relative}.field-gear-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:2px;background:#fff;color:#6b7280;cursor:pointer;transition:border-color .15s;font-size:12px}.field-gear-btn:hover{background:#f9fafb;border-color:#18454c;color:#18454c}.field-grid-actions-popup{position:absolute;top:100%;right:0;margin-top:4px;display:flex;gap:4px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:4px;box-shadow:0 4px 12px #00000026;z-index:10;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.field-grid-preview{padding-top:4px;flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.field-preview-content{pointer-events:none;flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;height:100%}.field-preview-content label{display:block;margin-bottom:4px;font-size:12px;color:#6b7280;font-weight:500}.field-preview-content input,.field-preview-content textarea,.field-preview-content select{width:100%;padding:4px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px;background:#f9fafb}.signature-preview{border:2px dashed #d1d5db;padding:20px;border-radius:4px;background:#fafafa;text-align:center;color:#9ca3af;font-size:12px}.fields-list{display:flex;flex-direction:column;gap:12px}.field-item.drag-over{border-color:#18454c;background:#f0f9ff}.field-item{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s}.field-item:hover{border-color:#18454c;box-shadow:0 2px 8px #0000001a}.field-item.selected{border-color:#18454c;background:#f0f9ff;box-shadow:0 4px 12px #18454c26}.field-item-header{display:flex;justify-content:space-between;align-items:center;position:relative}.field-item-info{display:flex;align-items:center;gap:12px;flex:1}.field-item-label{font-weight:600;color:#374151;font-size:15px}.field-item-type{font-size:12px;color:#9ca3af;background:#f3f4f6;padding:2px 8px;border-radius:4px}.field-item-header-actions{position:relative}.field-item-actions-popup{position:absolute;top:100%;right:0;margin-top:4px;display:flex;gap:4px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:4px;box-shadow:0 4px 12px #00000026;z-index:10;animation:slideDown .2s ease}.field-action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s}.field-action-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af;color:#374151}.field-action-btn:disabled{opacity:.4;cursor:not-allowed}.field-action-btn.danger:hover:not(:disabled){background:#fee2e2;border-color:#ef4444;color:#dc2626}.designer-sidebar-right{width:320px;background:#fff;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden;height:100%;max-height:calc(100vh - 120px)}.sidebar-close-btn{margin-left:auto;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:4px;transition:all .2s}.sidebar-close-btn:hover{background:#f3f4f6;color:#374151}.property-panel{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px 16px 40px;max-height:calc(100vh - 200px)}.property-section{margin-bottom:24px}.property-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.property-group{margin-bottom:16px}.property-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#6b7280}.property-group input,.property-group textarea,.property-group select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.property-group input:focus,.property-group textarea:focus,.property-group select:focus{outline:none;border-color:#18454c;box-shadow:0 0 0 3px #18454c1a}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto;margin:0}.options-list{display:flex;flex-direction:column;gap:8px}.option-item{display:flex;flex-direction:column;gap:8px;align-items:stretch;padding:10px 0;border-bottom:1px solid #e5e7eb}.option-item-row{display:flex;gap:8px;align-items:center}.option-followup-fields{margin-top:4px;border-left:3px solid #059669;background:#f0fdf4;padding:8px 12px;border-radius:4px}.option-followup-label{display:block;font-size:12px;color:#6b7280;margin-bottom:4px}.option-item-row input,.option-item input{flex:1;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:13px}.option-item select{width:100px;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:13px}.option-delete-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#ef4444;cursor:pointer;transition:all .2s}.option-delete-btn:hover{background:#fee2e2;border-color:#ef4444}.add-option-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;border:1px dashed #d1d5db;border-radius:6px;background:#f9fafb;color:#6b7280;font-size:13px;cursor:pointer;transition:all .2s}.add-option-btn:hover{border-color:#18454c;background:#f0f9ff;color:#18454c}.column-span-control{margin-bottom:12px}.column-span-control input[type=range]{width:100%;margin-bottom:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:#e5e7eb;border-radius:3px;outline:none;cursor:pointer}.column-span-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:#18454c;border-radius:50%;cursor:pointer;transition:all .2s}.column-span-control input[type=range]::-webkit-slider-thumb:hover{background:#0f2e33;transform:scale(1.1)}.column-span-control input[type=range]::-moz-range-thumb{width:18px;height:18px;background:#18454c;border-radius:50%;cursor:pointer;border:none;transition:all .2s}.column-span-control input[type=range]::-moz-range-thumb:hover{background:#0f2e33;transform:scale(1.1)}.column-span-control input[type=range]::-moz-range-track{height:6px;background:#e5e7eb;border-radius:3px}.column-span-value{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#6b7280}.column-span-percent{font-weight:600;color:#18454c}.column-span-percent-input{margin-top:12px}.column-span-percent-input label{display:block;margin-bottom:4px;font-size:12px;font-weight:500;color:#6b7280}.percent-input-wrapper{display:flex;align-items:center;gap:6px}.percent-number-input{width:80px;padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;transition:border-color .2s}.percent-number-input:focus{outline:none;border-color:#18454c;box-shadow:0 0 0 3px #18454c1a}.percent-unit{font-size:13px;font-weight:500;color:#6b7280;white-space:nowrap}.orientation-buttons{display:flex;gap:8px}.orientation-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#6b7280;font-size:13px;cursor:pointer;transition:all .2s}.orientation-btn:hover{border-color:#18454c;color:#18454c}.orientation-btn.active{background:#18454c;color:#fff;border-color:#18454c}.margin-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.margin-input-group{display:flex;flex-direction:column;gap:4px}.margin-input-group label{font-size:12px;color:#6b7280;margin:0}.margin-input-group input{padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px}.designer-preview{max-width:100%!important;margin:0 auto;padding:30px;background:transparent;border-radius:0;box-shadow:none;width:100%;transition:max-width .3s ease;overflow-y:auto;overflow-x:auto;box-sizing:border-box;flex:1;max-height:70vh}.designer-preview .form-renderer{margin:0 auto!important;padding:2.5rem 3rem!important;background:linear-gradient(to bottom,#fff,#fafbfc)!important;border-radius:12px!important;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft JhengHei,PingFang SC,Hiragino Sans GB,sans-serif!important;overflow:visible!important}.designer-preview .form-renderer-row{display:flex!important;gap:1.5rem!important;flex-wrap:wrap!important;align-items:flex-start!important;width:100%!important;box-sizing:border-box!important;position:static!important}.designer-preview .form-renderer-field{position:static!important;z-index:auto!important;display:flex!important;flex-direction:column!important;box-sizing:border-box!important}.designer-preview .form-renderer-field .signature-field,.designer-preview .form-renderer-field .signature-display,.designer-preview .form-renderer-field .signature-placeholder{position:relative!important;z-index:auto!important}.designer-preview .form-renderer.form-renderer-absolute{padding:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft JhengHei,PingFang SC,Hiragino Sans GB,sans-serif!important;overflow:visible!important}@media (max-width: 1200px){.designer-sidebar-right{width:280px}}@media (max-width: 768px){.designer-content{flex-direction:column}.designer-sidebar-left,.designer-sidebar-right{width:100%;border-right:none;border-left:none;border-bottom:1px solid #e5e7eb;max-height:300px}.toolbar-right{flex-wrap:wrap}.toolbar-btn{font-size:12px;padding:6px 12px}}.radio-group,.checkbox-group{display:flex;flex-direction:column;gap:.875rem;padding:1rem;background:#f8fafc;border-radius:8px;border:2px solid #e2e8f0}.radio-group.horizontal,.checkbox-group.horizontal{flex-direction:row!important;flex-wrap:wrap!important;gap:1.25rem!important}.radio-option,.checkbox-option{display:flex;align-items:center;gap:.625rem;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.5rem;border-radius:6px;transition:background .2s}.radio-option:hover,.checkbox-option:hover{background:#ffffffb3}.radio-option input[type=radio],.checkbox-option input[type=checkbox]{width:18px;height:18px;margin:0;cursor:pointer;accent-color:#18454c}.radio-option:disabled,.checkbox-option:disabled{opacity:.6;cursor:not-allowed}.form-designer-page{display:flex;flex-direction:column;height:100%;background:#f5f5f5}.form-designer-page.embedded{height:auto;min-height:100%}.page-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #e0e0e0}.page-header h1{margin:0;font-size:1.5rem;font-weight:600}.form-designer-container{display:flex;flex-direction:column;flex:1;overflow:hidden}.form-designer-tabs{display:flex;background:#fff;border-bottom:1px solid #e0e0e0;padding:0 1rem}.tab-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;background:transparent;color:#666;font-size:.875rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab-button:hover{color:#4a90e2;background:#f5f5f5}.tab-button.active{color:#4a90e2;border-bottom-color:#4a90e2;background:#fff}.form-designer-tab-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.form-designer-sidebar-info{flex:1;background:#fff;overflow-y:auto;padding:1.5rem}.form-field input[type=text],.form-field textarea,.form-field select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.form-field input[type=text]:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a}.form-field input[type=checkbox]{margin-right:.5rem}.form-designer-main-content{flex:1;overflow:hidden;display:flex;flex-direction:column;width:100%;height:100%}.loading{display:flex;align-items:center;justify-content:center;height:100%;color:#999}.form-management-page{display:flex;flex-direction:column;height:100%;background:#f5f5f5}.form-management-page.embedded{height:auto;min-height:100%}.filters-section{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:0 1.5rem}.forms-table-container{flex:1;overflow:auto;background:#fff;margin:1rem 1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.forms-table{width:100%;border-collapse:collapse}.forms-table thead{background:#f8f9fa;position:sticky;top:0;z-index:10}.forms-table th{padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.875rem;color:#555;border-bottom:2px solid #e0e0e0}.forms-table td{padding:1rem;border-bottom:1px solid #f0f0f0;font-size:.875rem}.forms-table tbody tr:hover{background:#f8f9fa}.forms-table tbody tr:last-child td{border-bottom:none}.form-name-cell{display:flex;flex-direction:column;gap:.25rem}.form-name-cell strong{color:#333;font-weight:600}.form-description{color:#999;font-size:.75rem}.form-type-badge{display:inline-block;padding:.25rem .5rem;background:#e3f2fd;color:#1976d2;border-radius:4px;font-size:.75rem;font-weight:500}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;margin-right:.5rem}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.inactive{background:#ffebee;color:#c62828}.public-badge{display:inline-block;padding:.25rem .5rem;background:#fff3e0;color:#e65100;border-radius:4px;font-size:.75rem;font-weight:500;margin-left:.5rem}.action-menu-container{position:relative;display:inline-block;z-index:1}.forms-table td:last-child{position:relative}.btn-action-menu{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:6px;background:transparent;cursor:pointer;transition:all .2s;font-size:.875rem;color:#6b7280}.btn-action-menu:hover{background:#f3f4f6;color:#18454c}.btn-action-menu svg{width:16px;height:16px}.action-menu-dropdown{position:fixed;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:10000;min-width:150px;overflow:hidden}.action-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:none;background:transparent;cursor:pointer;font-size:.875rem;color:#374151;transition:background-color .2s;text-align:left}.action-menu-item svg{width:16px;height:16px;color:#6b7280;flex-shrink:0}.action-menu-item-danger{color:#dc2626}.action-menu-item-danger:hover{background:#fee2e2}.action-menu-item-danger svg{color:#dc2626}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:6px;background:transparent;cursor:pointer;transition:all .2s;font-size:.875rem}.btn-icon svg{width:16px;height:16px}.btn-icon:hover{background:#f0f0f0}.btn-edit{color:#4a90e2}.btn-edit:hover{background:#e3f2fd;color:#1976d2}.btn-enable{color:#4caf50}.btn-enable:hover{background:#e8f5e9;color:#2e7d32}.btn-disable{color:#ff9800}.btn-disable:hover{background:#fff3e0;color:#e65100}.no-design{text-align:center;padding:3rem;color:#999}.btn-delete{color:#e53935}.btn-delete:hover{background:#ffebee;color:#c62828}.loading{display:flex;align-items:center;justify-content:center;padding:3rem;color:#999}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#999;text-align:center}.empty-state svg{width:4rem;height:4rem;margin-bottom:1rem;opacity:.5}.empty-state p{margin:0;font-size:.875rem}.form-designer-modal-content{display:flex;gap:1.5rem;max-height:80vh;overflow:hidden}.form-designer-sidebar-info{width:300px;flex-shrink:0;overflow-y:auto;padding-right:1rem}.form-basic-info-section h3{margin-top:0;margin-bottom:1rem;font-size:1rem;font-weight:600;color:#333}.form-basic-info-section .form-field{margin-bottom:1rem}.form-basic-info-section .form-field label{display:block;margin-bottom:.25rem;font-size:.875rem;font-weight:500;color:#555}.form-basic-info-section .form-field input[type=text],.form-basic-info-section .form-field textarea,.form-basic-info-section .form-field select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.form-basic-info-section .form-field input[type=text]:focus,.form-basic-info-section .form-field textarea:focus,.form-basic-info-section .form-field select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a}.form-basic-info-section .form-field input[type=checkbox]{margin-right:.5rem}.form-designer-main-content{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}@media (max-width: 768px){.form-management-page{padding:0}.filters-section{padding:15px;flex-direction:column}.filters-left{width:100%}.filters-right{width:100%;justify-content:flex-end}.search-box{min-width:100%}.filter-group{width:100%}.forms-table-container{margin:15px;overflow-x:auto}}.form-designer{display:flex;flex-direction:column;height:100%;background:#f5f5f5}.form-designer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #e0e0e0}.form-designer-header h2{margin:0;font-size:1.5rem;font-weight:600}.form-designer-actions{display:flex;gap:.5rem}.form-designer-body{display:flex;flex:1;overflow:hidden}.form-designer-sidebar{width:300px;background:#fff;border-right:1px solid #e0e0e0;overflow-y:auto;padding:1rem}.form-designer-main{flex:1;overflow-y:auto;padding:1.5rem;background:#f5f5f5}.form-design-canvas{background:#f5f5f5;border-radius:8px;padding:1.5rem;min-height:600px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;align-items:center}.form-design-canvas h3{margin-top:0;margin-bottom:1rem;font-size:1rem;font-weight:600;color:#333;display:flex;align-items:center;gap:.5rem;width:100%}.form-design-canvas h3:before{content:"";width:4px;height:16px;background:#4a90e2;border-radius:2px}.canvas-container{position:relative;width:794px;height:1123px;background:#fff;background-image:linear-gradient(to right,#e8e8e8 1px,transparent 1px),linear-gradient(to bottom,#e8e8e8 1px,transparent 1px);background-size:20px 20px;border:2px solid #333;border-radius:0;padding:2rem;margin-top:1rem;box-shadow:0 4px 12px #00000026;overflow:hidden;box-sizing:border-box}.drop-indicator{position:absolute;z-index:10000;pointer-events:none;visibility:visible!important;opacity:1!important;display:flex!important}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}.canvas-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#999;font-size:.875rem}.field-block{position:absolute;background:#fff;border:2px solid #ddd;border-radius:6px;cursor:move;transition:all .2s;box-shadow:0 2px 6px #00000014;min-width:200px;max-width:calc(100% - 4px);box-sizing:border-box;overflow:hidden}.field-block:hover{border-color:#4a90e2;box-shadow:0 4px 12px #4a90e226;transform:translateY(-1px)}.field-block.selected{border-color:#4a90e2;border-width:2px;box-shadow:0 0 0 3px #4a90e233,0 4px 12px #4a90e226;z-index:10}.field-block-content{padding:1rem;height:calc(100% - 8px);display:flex;flex-direction:column;gap:.75rem;-webkit-user-select:none;user-select:none;box-sizing:border-box;overflow:hidden}.field-block-header{display:flex;align-items:center;gap:.5rem;padding-bottom:.5rem;border-bottom:1px solid #f0f0f0;font-size:.875rem;font-weight:500;color:#333}.field-block-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.field-block-type{font-size:.7rem;color:#666;background:#f5f5f5;padding:.2rem .5rem;border-radius:12px;white-space:nowrap}.field-block-preview{flex:1;pointer-events:none;min-height:40px;-webkit-user-select:none;user-select:none;width:100%;box-sizing:border-box;overflow:hidden}.field-block-preview input,.field-block-preview textarea,.field-block-preview select{width:100%;padding:.5rem;border:1px solid #e0e0e0;border-radius:4px;font-size:.875rem;background:#fafafa;color:#666;pointer-events:none;-webkit-user-select:none;user-select:none;box-sizing:border-box;max-width:100%;overflow:hidden}.field-block-preview textarea{resize:none;min-height:60px}.field-block-header{pointer-events:auto;cursor:move}.field-resize-handle{position:absolute;background:#4a90e24d;opacity:0;transition:opacity .2s;z-index:10}.field-block:hover .field-resize-handle,.field-block.selected .field-resize-handle{opacity:1}.field-resize-handle:hover{background:#4a90e280}.field-resize-handle-bottom{bottom:0;left:0;right:0;height:10px;cursor:ns-resize;border-radius:0 0 6px 6px}.field-resize-handle-right{top:0;right:0;bottom:0;width:10px;cursor:ew-resize;border-radius:0 6px 6px 0}.field-resize-handle-corner{bottom:0;right:0;width:16px;height:16px;cursor:nwse-resize;border-radius:0 0 6px;background:#4a90e266}.field-resize-handle span{color:#4a90e2;font-size:14px;font-weight:700;-webkit-user-select:none;user-select:none}.form-designer-properties{width:300px;background:#fff;border-left:1px solid #e0e0e0;overflow-y:auto;padding:1rem}.form-designer-preview-mode{flex:1;overflow-y:auto;padding:2rem;background:#f5f5f5}.form-preview-container{max-width:800px;margin:0 auto;background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a}.form-basic-info,.field-types,.field-list{margin-bottom:2rem}.form-basic-info h3,.field-types h3,.field-list h3{font-size:1rem;font-weight:600;margin-bottom:.75rem;color:#333}.form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.25rem;font-size:.875rem;font-weight:500;color:#555}.form-field input[type=text],.form-field input[type=number],.form-field textarea,.form-field select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.form-field input[type=text]:focus,.form-field input[type=number]:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a}.field-type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.field-type-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:grab;transition:all .2s;font-size:.75rem;-webkit-user-select:none;user-select:none}.field-type-btn:hover{border-color:#4a90e2;background:#f0f7ff;color:#4a90e2}.field-type-btn:active{cursor:grabbing}.field-type-btn svg{width:20px;height:20px}.field-list-items{display:flex;flex-direction:column;gap:.5rem}.field-list-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s}.field-list-item:hover{border-color:#4a90e2;background:#f0f7ff}.field-list-item.selected{border-color:#4a90e2;background:#e6f2ff}.field-list-item-content{display:flex;align-items:center;gap:.5rem;flex:1}.field-list-item-content svg{width:16px;height:16px;color:#666}.field-type-badge{font-size:.75rem;color:#999;margin-left:auto}.field-list-item-actions{display:flex;gap:.25rem}.btn-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;cursor:pointer;border-radius:4px;color:#666;transition:all .2s}.btn-icon:hover{background:#f0f0f0;color:#333}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon.btn-danger:hover{background:#fee;color:#d32f2f}.field-list-empty{padding:2rem;text-align:center;color:#999}.form-preview{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.form-preview h3{margin-top:0;margin-bottom:1.5rem;font-size:1.25rem;font-weight:600}.form-preview-content h4{margin-top:0;margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.form-description{color:#666;margin-bottom:1.5rem}.form-preview-field{margin-bottom:1.5rem}.form-preview-field label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-preview-field .required{color:#d32f2f;margin-left:.25rem}.form-preview-field input[type=text],.form-preview-field input[type=number],.form-preview-field input[type=date],.form-preview-field input[type=datetime-local],.form-preview-field input[type=time],.form-preview-field textarea,.form-preview-field select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.form-preview-field input:disabled,.form-preview-field textarea:disabled,.form-preview-field select:disabled{background:#f5f5f5;cursor:not-allowed}.radio-group,.checkbox-group{display:flex;flex-direction:column;gap:.5rem}.radio-option,.checkbox-option{display:flex;align-items:center;gap:.5rem;cursor:pointer}.radio-option input,.checkbox-option input{margin:0}.form-section{margin:1.5rem 0;padding-bottom:.5rem;border-bottom:2px solid #e0e0e0}.form-section h5{margin:0;font-size:1.125rem;font-weight:600;color:#333}.form-divider{margin:1.5rem 0;border:none;border-top:1px solid #e0e0e0}.field-description{display:block;margin-top:.25rem;font-size:.75rem;color:#999}.form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}.field-properties h3{margin-top:0;margin-bottom:1rem;font-size:1rem;font-weight:600}.options-list{display:flex;flex-direction:column;gap:.5rem}.option-item{display:flex;gap:.5rem;align-items:center}.option-item input{flex:1;padding:.375rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.no-selection{padding:2rem;text-align:center;color:#999}.validation-result{margin:1rem 1.5rem;padding:1rem;border-radius:4px}.validation-result.valid{background:#e8f5e9;border:1px solid #4caf50}.validation-result.invalid{background:#ffebee;border:1px solid #f44336}.validation-success,.validation-errors,.validation-warnings{display:flex;align-items:flex-start;gap:.5rem}.validation-success{color:#2e7d32}.validation-errors{color:#c62828}.validation-warnings{color:#f57c00;margin-top:.5rem}.validation-result ul{margin:.5rem 0 0 1.5rem;padding:0}.validation-result li{margin-bottom:.25rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#4a90e2;color:#fff}.btn-primary:hover{background:#357abd}.btn-secondary{background:#f5f5f5;color:#333;border:1px solid #ddd}.btn-secondary:hover{background:#e0e0e0}.btn-sm{padding:.375rem .75rem;font-size:.75rem}.btn:disabled{opacity:.5;cursor:not-allowed}.approval-management-page{display:flex;flex-direction:column;height:100%;background:#f5f7fa}.approval-tabs{display:flex;gap:10px;padding:20px;background:#fff;border-bottom:2px solid #e5e7eb;overflow-x:auto}.approval-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.approval-tab:hover{color:var(--main-blue);background:var(--main-blue-light)}.approval-tab.active{color:var(--main-blue);border-bottom-color:var(--main-blue);background:var(--main-blue-light)}.stat-card{display:flex;align-items:center;gap:20px;padding:24px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:24px;color:#fff}.stat-icon.forms{background:linear-gradient(135deg,#3b82f6,#1e40af)}.stat-label{font-size:.9em;color:#6b7280;margin-bottom:8px}.stat-value{font-size:2em;font-weight:700;color:#1f2937}.stat-detail{font-size:.85em;color:#9ca3af;margin-top:4px}.approval-forms-view,.approval-flows-view,.approval-delegates-view,.approval-templates-view{flex:1;overflow-y:auto;background:#f5f7fa}.coming-soon{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;font-size:1.2em}.coming-soon svg{width:64px;height:64px;margin-bottom:20px;opacity:.5}.loading,.no-data{display:flex;align-items:center;justify-content:center;padding:60px;color:#6b7280;font-size:1.1em}.chart-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.bar-chart{display:flex;align-items:flex-end;justify-content:space-around;height:200px;gap:10px;padding:20px 0}.bar-item{display:flex;flex-direction:column;align-items:center;flex:1;gap:8px}.bar-wrapper{width:100%;height:150px;display:flex;align-items:flex-end;justify-content:center}.bar{width:80%;background:linear-gradient(180deg,var(--main-blue) 0%,var(--main-accent) 100%);border-radius:4px 4px 0 0;transition:all .3s ease;cursor:pointer;min-height:4px}.bar:hover{opacity:.8;transform:scaleY(1.05)}.bar-label{font-size:.85em;color:#6b7280;text-align:center}.bar-value{font-size:.9em;font-weight:600;color:var(--main-blue)}.pie-chart{display:flex;flex-direction:column;gap:12px}.pie-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border-radius:8px}.pie-color{width:20px;height:20px;border-radius:4px;flex-shrink:0}.pie-label{flex:1;font-weight:600;color:var(--main-blue)}.pie-value{font-size:.9em;color:#6b7280;font-weight:600}.department-table th,.department-table td{padding:12px;text-align:left;border-bottom:1px solid var(--gray-border)}.department-table th{background:var(--main-blue-light);color:var(--main-blue);font-weight:700;font-size:.9em}.rate-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:10px;transition:width .3s ease}.rate-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75em;font-weight:700;color:#fff;z-index:1;text-shadow:0 1px 2px rgba(0,0,0,.2)}.personal-performance-section{margin-top:40px;padding-top:30px;border-top:2px solid var(--gray-border)}.personal-performance-section .section-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin:0 0 25px}.performance-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}.performance-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;border:1px solid var(--gray-border)}.performance-title{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0 0 20px;padding-bottom:15px;border-bottom:2px solid var(--main-blue-light)}.performance-stats{display:flex;flex-direction:column;gap:15px}.performance-stat{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f9fafb;border-radius:8px}.performance-label{font-weight:600;color:#6b7280;font-size:.95em}.performance-value{font-size:1.2em;font-weight:700;color:var(--main-blue)}.approval-statistics-view{flex:1;padding:30px;overflow-y:auto}.stat-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:15px}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5em;color:#fff}.stat-icon.forms{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-icon.pending{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon.approved{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.rejected{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-icon.flows{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-label{font-size:.9em;color:#6b7280;margin-bottom:5px}.stat-value{font-size:2em;font-weight:800;color:#1f2937}.stat-detail{font-size:.85em;color:#6b7280;margin-top:5px}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;margin-bottom:30px}.chart-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.chart-title{font-size:1.2em;font-weight:700;color:#1f2937;margin-bottom:20px}.chart-container{margin-top:20px}.bar-chart{display:flex;align-items:flex-end;gap:10px;height:200px;padding:10px}.bar-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px}.bar-wrapper{width:100%;height:100%;display:flex;align-items:flex-end}.bar{width:100%;background:linear-gradient(180deg,var(--main-blue) 0%,var(--main-accent) 100%);border-radius:4px 4px 0 0;transition:all .3s ease}.bar:hover{opacity:.8}.bar-label{font-size:.75em;color:#6b7280;text-align:center}.bar-value{font-size:.85em;font-weight:600;color:#1f2937}.pie-chart{display:flex;flex-direction:column;gap:15px}.pie-item{display:flex;align-items:center;gap:10px}.pie-color{width:20px;height:20px;border-radius:4px}.pie-label{flex:1;font-size:.9em;color:#1f2937}.pie-value{font-size:.9em;font-weight:600;color:#6b7280}.department-table{overflow-x:auto}.department-table table{width:100%;border-collapse:collapse}.department-table th,.department-table td{padding:12px;text-align:left;border-bottom:1px solid #e5e7eb}.department-table th{background:#f9fafb;font-weight:600;color:#1f2937}.department-table td.approved{color:#10b981;font-weight:600}.department-table td.rejected{color:#ef4444;font-weight:600}.rate-bar{position:relative;width:100px;height:20px;background:#e5e7eb;border-radius:10px;overflow:hidden}.rate-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);transition:width .3s ease}.rate-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75em;font-weight:600;color:#1f2937;z-index:1}.personal-performance-section{margin-top:30px}.section-title{font-size:1.5em;font-weight:700;color:#1f2937;margin-bottom:20px}.performance-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.performance-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.performance-title{font-size:1.1em;font-weight:700;color:#1f2937;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #e5e7eb}.performance-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.performance-stat{display:flex;flex-direction:column;gap:5px}.performance-label{font-size:.85em;color:#6b7280}.performance-value{font-size:1.5em;font-weight:700;color:#1f2937}.performance-value.approved{color:#10b981}.performance-value.rejected{color:#ef4444}.performance-value.pending{color:#f59e0b}.approval-delegates-page{padding:30px;background:#f5f7fa;min-height:100%}.filter-select{width:100%;padding:12px 15px;border:1px solid var(--gray-border);border-radius:10px;font-size:.95em;background:#fff;cursor:pointer;transition:all .3s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px}.delegates-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.delegates-table{width:100%;border-collapse:collapse}.delegates-table thead{background:var(--main-blue-light)}.delegates-table th{padding:16px;text-align:left;font-weight:700;color:var(--main-blue);font-size:.9em;border-bottom:2px solid var(--main-blue);cursor:default}.delegates-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.delegates-table th.sortable:hover{background-color:#0000000d}.delegates-table td{padding:16px;border-bottom:1px solid #e5e7eb;color:#1f2937}.delegates-table tbody tr:hover{background:#f9fafb}.btn-icon{padding:6px 10px;border:1px solid #e5e7eb;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;color:#6b7280}.btn-icon:hover{background:#f9fafb;border-color:var(--main-blue);color:var(--main-blue)}.no-data{text-align:center;padding:40px;color:#9ca3af}.delegate-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#1f2937;font-size:.9em}.form-group input[type=text],.form-group input[type=datetime-local],.form-group select,.form-group textarea{padding:10px;border:1px solid #e5e7eb;border-radius:6px;font-size:.9em;transition:all .2s}.form-group input[type=text]:focus,.form-group input[type=datetime-local]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #3b82f61a}.form-group label input[type=checkbox]{margin-right:8px;width:auto}.form-group label{display:flex;align-items:center;cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.btn-primary,.btn-secondary{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s}.btn-primary:hover{background:var(--main-accent)}.btn-secondary{background:#f3f4f6;color:#1f2937}.loading{text-align:center;padding:60px;color:#6b7280;font-size:1.1em}@media (max-width: 768px){.approval-delegates-page{padding:20px 15px}.filters-section{flex-direction:column}.filters-left{width:100%}.filters-right{width:100%;justify-content:flex-end}.search-box{min-width:100%}.filter-group{width:100%}.delegates-table-container{overflow-x:auto}}.mes-dashboard-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.mes-dashboard-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.dashboard-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:30px}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none}.stat-icon{font-size:3em}.stat-value{font-size:2.5em;font-weight:700;color:var(--main-blue)}.quick-actions{margin-bottom:40px}.section-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin-bottom:20px;display:flex;align-items:center;gap:10px}.badge-count{background:var(--main-accent);color:#fff;padding:4px 12px;border-radius:12px;font-size:.7em;font-weight:700;margin-left:8px}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.action-card{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;text-align:center}.action-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.action-icon{font-size:2.5em;margin-bottom:15px;color:var(--main-blue)}.action-title{font-size:1.2em;font-weight:700;color:var(--main-blue);margin-bottom:10px}.action-desc{color:#6b7280;font-size:.9em}.recent-section{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);margin-bottom:30px}.btn-link{background:none;border:none;color:var(--main-blue);font-weight:600;cursor:pointer;font-size:.9em;transition:all .3s ease}.orders-list,.labor-times-list,.work-orders-list,.materials-list,.equipment-list,.inspections-list{display:flex;flex-direction:column;gap:15px}.order-item,.labor-time-item,.work-order-item,.material-item,.equipment-item,.inspection-item{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#f9fafb;border-radius:12px;cursor:pointer;transition:all .3s ease}.order-item:hover,.labor-time-item:hover,.work-order-item:hover,.material-item:hover,.equipment-item:hover,.inspection-item:hover{background:#f3f4f6;transform:translate(5px)}.order-info,.labor-time-info,.work-order-info,.material-info,.equipment-info,.inspection-info{flex:1}.order-number,.employee-name,.work-order-number,.material-code,.equipment-code,.inspection-number{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0 0 8px}.employee-number{font-size:.85em;color:#6b7280;font-weight:400}.order-meta,.labor-time-meta,.work-order-meta,.material-meta,.equipment-meta,.inspection-meta{display:flex;gap:15px;color:#6b7280;font-size:.9em;flex-wrap:wrap;align-items:center}.work-desc{color:#9ca3af;font-style:italic}.stock-info{color:#f59e0b;font-weight:600}.warning-badge,.error-badge{padding:6px 12px;border-radius:8px;font-size:.85em;font-weight:600;white-space:nowrap}.warning-badge{background:#fef3c7;color:#92400e}.error-badge{background:#fee2e2;color:#991b1b}.order-badges,.work-order-badges{display:flex;gap:10px;align-items:center}.status-badge.cancelled{background:#fee2e2;color:#991b1b}.status-badge.pending,.status-badge.assigned,.status-badge.in_progress,.status-badge.paused,.status-badge.completed,.status-badge.abnormal{padding:6px 16px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap}.status-badge.assigned,.status-badge.in_progress{background:#dbeafe;color:#1e40af}.status-badge.abnormal{background:#fee2e2;color:#991b1b}.progress-text{font-size:1.1em;font-weight:700;color:var(--main-accent)}.labor-time-date{color:#9ca3af;font-size:.9em}.alert-section{border-radius:16px;padding:30px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);margin-bottom:30px}.alert-section.warning{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.alert-section.error{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef4444}.alert-section .section-title{color:#92400e}.alert-section.error .section-title{color:#991b1b}@media (max-width: 768px){.mes-dashboard-container{padding:0 20px}.dashboard-header{flex-direction:column;align-items:flex-start;gap:20px}.stats-grid,.actions-grid{grid-template-columns:1fr}}.order-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.order-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.order-list-embedded .order-list-container{padding:0;max-width:100%}.order-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.btn-batch-pdf{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#0d6efd;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-batch-pdf:hover:not(:disabled){background:#0b5ed7}.btn-batch-pdf:disabled{opacity:.6;cursor:not-allowed}.header-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;width:100%}.filter-controls{display:flex;flex-wrap:wrap;gap:15px;align-items:flex-end;flex:1;min-width:300px}.filter-group.search-group{flex:1;min-width:200px;max-width:280px}.filter-group.search-group .search-input{width:100%}.filter-group label{font-weight:600;color:var(--main-blue);white-space:nowrap;font-size:.85em}.filter-select,.filter-input{padding:10px 15px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;min-width:100px;height:42px;box-sizing:border-box}.orders-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 2px 10px #0000000d;overflow-x:auto}.orders-table{width:100%;border-collapse:collapse}.orders-table thead{background:#f9fafb}.orders-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.orders-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.orders-table th.sortable:hover{background-color:#f3f4f6}.orders-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151}.orders-table tbody tr:hover{background:#f9fafb}@media (max-width: 768px){.order-list-container{padding:0 20px}.header-row{flex-direction:column;align-items:stretch;gap:15px}.filter-controls{flex-direction:column;align-items:stretch}.filter-group{width:100%;max-width:none}.filter-group.search-group{max-width:none}.action-buttons{width:100%}.btn-create{width:100%;justify-content:center}.orders-table-container{overflow-x:scroll}}.order-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.order-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.order-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0 0 15px;letter-spacing:1px}.header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.info-grid.two-columns{grid-template-columns:1fr 1fr!important}.basic-info-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1rem!important}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-label{font-weight:600;color:var(--text-secondary);font-size:.9em}.info-value{color:var(--text-primary);font-weight:500;font-size:1.05em}.section-controls{display:flex;align-items:center;gap:1rem}.status-selector{display:flex;align-items:center;gap:.5rem}.status-selector label{font-weight:600;color:#18454c;font-size:.9em}.status-select{padding:.4rem .8rem;border:2px solid #18454c;border-radius:6px;background:#fff;color:#18454c;font-weight:500;font-size:.9em;min-width:120px;cursor:pointer;transition:all .2s ease}.status-select:hover{border-color:#2a7f8a;background:#f8fafb}.status-select:focus{outline:none;border-color:#2a7f8a;box-shadow:0 0 0 3px #2a7f8a1a}.section-badge{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;padding:4px 12px;border-radius:20px;font-size:.85em;font-weight:600;box-shadow:0 2px 8px #18454c33}.work-order-list{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.work-order-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .3s ease}.work-order-item:hover{background:#f1f5f9;border-color:var(--main-blue);transform:translateY(-2px);box-shadow:0 4px 12px #18454c1a}.work-order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.work-order-number-wrapper{display:flex;align-items:center;gap:8px}.work-order-icon{font-size:1.2em;opacity:.8}.work-order-number{font-size:1.1em;font-weight:700;color:var(--main-blue);font-family:Courier New,monospace}.work-order-content{display:flex;flex-direction:column;gap:12px}.work-description{color:var(--text-primary);font-weight:500;line-height:1.4}.work-order-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.quantity-info{display:flex;align-items:center;gap:8px;background:#fff;padding:6px 12px;border-radius:8px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a}.quantity-label{color:var(--text-secondary);font-size:.85em;font-weight:600}.quantity-value{color:var(--main-blue);font-weight:700;font-size:.95em}.assigned-info{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:.9em;background:#f1f5f9;padding:6px 12px;border-radius:8px}.assigned-icon{font-size:.9em}.section-actions{display:flex;gap:16px;margin-top:24px;padding:16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid #e2e8f0}.btn-action.btn-primary{background:linear-gradient(135deg,#18454c,#2a7f8a);color:#fff;border:none;padding:14px 28px;border-radius:12px;font-weight:700;font-size:1.05em;transition:all .3s ease;box-shadow:0 6px 20px #18454c4d;text-transform:uppercase;letter-spacing:.5px;min-width:160px;justify-content:center;position:relative;overflow:hidden}.btn-action.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-action.btn-primary:hover:before{left:100%}.btn-action.btn-primary:hover{background:linear-gradient(135deg,#2a7f8a,#18454c);transform:translateY(-3px);box-shadow:0 8px 25px #18454c66}.btn-action.btn-primary:focus{outline:3px solid #2a7f8a;outline-offset:2px}.btn-action.btn-primary:active{transform:translateY(-1px);box-shadow:0 4px 15px #18454c4d}.btn-action{background:#fff;color:#18454c;border:3px solid #18454c;padding:12px 24px;border-radius:10px;font-weight:700;font-size:1.05em;transition:all .3s ease;display:flex;align-items:center;min-width:160px;justify-content:center;box-shadow:0 4px 15px #18454c26;position:relative;overflow:hidden}.btn-action .btn-icon{font-size:1.3em;margin-right:8px}.btn-action:hover{background:#18454c;color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #18454c4d;border-color:#18454c}.btn-action:focus{outline:3px solid #2a7f8a;outline-offset:2px}.btn-action:active{transform:translateY(-1px);box-shadow:0 4px 15px #18454c40}.btn-icon{font-size:1.3em;margin-right:4px}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-icon{font-size:3em;margin-bottom:16px;opacity:.6}.empty-title{font-size:1.2em;font-weight:600;color:var(--text-primary);margin-bottom:8px}.empty-description{font-size:.95em;color:var(--text-secondary);line-height:1.4}@media (max-width: 768px){.order-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid,.info-grid.two-columns{grid-template-columns:1fr}.basic-info-grid{grid-template-columns:1fr!important}.section-header{flex-direction:column;align-items:flex-start;gap:10px}.section-controls{flex-direction:column;align-items:flex-start;gap:.8rem;width:100%}.status-selector{width:100%}.status-select{width:100%;min-width:auto}.work-order-header,.work-order-meta{flex-direction:column;align-items:flex-start;gap:8px}.quantity-info,.assigned-info{width:100%;justify-content:space-between}.section-actions{flex-direction:column}.btn-action{width:100%;justify-content:center}}.order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.order-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.form-header{margin-bottom:30px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.btn-export-pdf{padding:10px 20px;border-radius:10px;font-weight:600;cursor:pointer;border:none;background:#f3f4f6;color:var(--main-blue, #18454c)}.btn-export-pdf:hover:not(:disabled){background:#e5e7eb}.btn-export-pdf:disabled{opacity:.7;cursor:not-allowed}.pdf-lang-modal-body .pdf-lang-select{width:100%;padding:8px 12px;border:1px solid var(--gray-border, #d1d5db);border-radius:8px;font-size:.9rem;background:#fff;color:var(--main-blue, #18454c);cursor:pointer}.order-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin-bottom:20px;margin-top:0}.form-section>.form-row:not(:last-child){margin-bottom:25px}.btn-manage-link{background:none;border:none;color:#2e7d6f;font-size:.85em;cursor:pointer;margin-left:8px;padding:2px 6px;border-radius:4px;transition:all .2s}.btn-manage-link:hover{background:#e8f5e9;color:#1b5e4a}.form-row .form-group{margin-bottom:0}@media (max-width: 768px){.order-form-container{padding:0 20px}.order-form{padding:25px}.form-row{grid-template-columns:1fr}}.labor-time-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.labor-time-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.labor-time-list-embedded .labor-time-list-container{padding:0;max-width:100%}.labor-time-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.labor-time-tabs{display:flex;gap:0;margin-bottom:20px;background:#fff;border-radius:12px;padding:4px;box-shadow:0 2px 8px #00000014}.labor-time-tabs .tab-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;background:transparent;color:#666;font-size:14px;font-weight:500;cursor:pointer;border-radius:8px;transition:all .2s ease}.labor-time-tabs .tab-btn:hover{background:#f0f4ff;color:#4361ee}.labor-time-tabs .tab-btn.active{background:#4361ee;color:#fff}.labor-time-tabs .tab-btn .test-badge{padding:2px 8px;background:#f59e0b;color:#fff;border-radius:10px;font-size:10px;font-weight:600;animation:pulse 2s infinite}.test-mode-banner{display:flex;align-items:center;gap:12px;padding:12px 20px;background:#fef3c7;border:2px solid #f59e0b;border-radius:8px;margin-bottom:20px;color:#92400e;font-weight:500}.test-mode-banner svg{color:#f59e0b;font-size:18px}.btn-batch-delete{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#dc3545;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s ease}.admin-actions{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.export-import-group{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.import-group{display:flex;gap:8px;align-items:center}.file-name{font-size:14px;color:#666;font-style:italic;padding:0 8px}.labor-times-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.labor-times-table th.sortable:hover{background-color:#f3f4f6}.labor-times-table td:nth-child(5),.labor-times-table th:nth-child(5){max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approver-column{max-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#6b7280;font-size:13px}.order-number{position:relative;display:inline-block}.employee-info{display:flex;flex-direction:column;gap:4px}.work-hours{font-weight:700;color:var(--main-accent)}.status-badge.confirmed{background:#d1fae5;color:#065f46}.btn-approve{background:#10b981;color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:.85em;cursor:pointer;transition:all .3s ease}.btn-reject{background:#ef4444;color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:.85em;cursor:pointer;transition:all .3s ease}.btn-delete{background:#ef4444;color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:.85em;cursor:pointer;transition:all .3s ease}.dropdown-item-success{color:#10b981!important}.dropdown-item-success:hover{background:#d1fae5!important;color:#065f46!important}.dropdown-item-warning{color:#f59e0b!important}.dropdown-item-warning:hover{background:#fef3c7!important;color:#92400e!important}.dropdown-divider{height:1px;background:#dee2e6;margin:4px 0}.btn-action.btn-settings{background:#f8f9fa!important;color:#6c757d!important;border:1px solid #dee2e6;padding:4px 8px;border-radius:6px;font-size:.85em;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:auto}.btn-action.btn-settings svg{width:14px;height:14px}.order-statistics-container{background:#fff;border-radius:4px;padding:8px;margin-bottom:12px;box-shadow:0 1px 3px #0000000a;border:1px solid #e9ecef}.statistics-table{width:100%;border-collapse:collapse;font-size:14px}.statistics-table th,.statistics-table td{padding:10px 15px;text-align:center;border-bottom:1px solid #e9ecef}.statistics-table th{background:#f8f9fa;font-weight:600;color:#495057}.statistics-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s;position:relative}.statistics-table th.sortable:hover{background-color:#e9ecef}.statistics-table th.sortable .sort-indicator{margin-left:4px;color:#007bff;font-weight:700}.statistics-table td{background:#fff;color:#333}.statistics-table tbody tr:hover{background:#f1f3f4}.statistics-table th:nth-child(1),.statistics-table td:nth-child(1){width:10%}.statistics-table th:nth-child(2),.statistics-table td:nth-child(2){width:20%}.statistics-table th:nth-child(3),.statistics-table td:nth-child(3){width:35%;text-align:left}.statistics-table th:nth-child(4),.statistics-table td:nth-child(4){width:20%}.statistics-table th:nth-child(5),.statistics-table td:nth-child(5){width:15%}.statistics-header-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #dee2e6}.header-item{flex:1;text-align:center;min-width:0;font-weight:600;color:#495057;font-size:14px!important}.header-item:first-child{flex:.8}.header-item:nth-child(2){flex:1.2}.header-item:nth-child(3){flex:.8}.header-item:last-child{flex:.6}.statistics-grid{display:flex;flex-direction:column;gap:4px}.statistics-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:3px;padding:6px 8px;transition:border-color .2s ease}.statistics-card:hover{border-color:#007bff}.statistics-content{display:flex;justify-content:space-between;align-items:center;gap:12px}.stat-item{flex:1;text-align:center;min-width:0}.stat-item:first-child{flex:.8}.stat-item:nth-child(2){flex:1.2}.stat-item:nth-child(3){flex:.8}.stat-item:last-child{flex:.6}.stat-value{color:#2c3e50;font-weight:500;font-size:20px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 768px){.labor-time-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.filters{flex-direction:column}.labor-times-table-container{overflow-x:scroll}.statistics-header-row{gap:8px}.header-item{font-size:12px!important}.statistics-content{gap:8px}.stat-item{flex:1}.stat-value{font-size:18px!important}}.labor-time-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.labor-time-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.header-info{flex:1;display:flex;align-items:center;gap:15px}.detail-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:1px}.status-badge{padding:6px 16px;border-radius:8px;font-size:.85em;font-weight:600;white-space:nowrap}.confirmed-badge{padding:6px 16px;border-radius:12px;font-size:.85em;font-weight:600;background:#d1fae5;color:#065f46}.btn-approve{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none;background:#10b981;color:#fff}.btn-approve:hover{background:#059669;transform:translateY(-1px)}.btn-reject{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none;background:#ef4444;color:#fff}.btn-reject:hover{background:#dc2626;transform:translateY(-1px)}.info-value.work-hours{color:var(--main-accent);font-weight:700;font-size:1.2em}.info-value.defective{color:#dc2626;font-weight:600}@media (max-width: 768px){.labor-time-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}}.labor-time-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.labor-time-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.labor-time-form{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.form-group label{font-weight:600;color:var(--main-blue);font-size:1.05em;display:flex;align-items:center;gap:8px}.settings-btn{background:none;border:none;cursor:pointer;font-size:1em;padding:2px 6px;border-radius:4px;transition:all .2s ease;opacity:.7}.settings-btn:hover{opacity:1;background:#0000000d}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group input[type=datetime-local],.form-group textarea,.form-group select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box;color:var(--main-blue)}.time-input-group{display:flex;align-items:center;gap:10px;background:#fff;padding:0}.time-select{flex:1;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1.1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;cursor:pointer;font-weight:500;text-align:center}.time-select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.time-select:disabled{background:#f9fafb;cursor:not-allowed}.time-separator{font-size:1.5em;font-weight:700;color:var(--main-blue);padding:0 8px;line-height:1}.readonly-select,.readonly-input{background:#f9fafb;cursor:not-allowed;color:var(--main-blue);font-weight:600}.form-hint{color:#6b7280;font-size:.9em;margin-top:-5px}.form-group input[type=date],.form-group input[type=number]{cursor:pointer}.form-group input[type=number]:read-only{background:#f9fafb;cursor:not-allowed}.form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.form-row.two-cols{display:flex;gap:20px}.aligned-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.aligned-col{display:flex;flex-direction:column;gap:10px}.aligned-col label{font-weight:600;color:var(--main-blue);font-size:1.05em;display:flex;align-items:center;gap:8px;height:28px}.aligned-col input,.aligned-col select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box;color:var(--main-blue);height:48px}.aligned-col input:focus,.aligned-col select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.date-input-wrapper{display:flex;flex-direction:column;gap:8px}.date-input-wrapper input{width:100%}.date-type-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600;width:fit-content}.date-type-badge.weekday{background:#dbeafe;color:#1e40af}.date-type-badge.saturday{background:#fef3c7;color:#92400e}.date-type-badge.sunday{background:#fee2e2;color:#991b1b}.date-type-badge.holiday{background:#fce7f3;color:#9d174d}.field-hint{font-size:.85em;color:#6b7280;margin-top:4px}@media (max-width: 1024px){.form-row{grid-template-columns:1fr 1fr}}.temp-list-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);padding:20px!important;border-radius:12px;margin-top:30px}.temp-list-container{overflow-x:auto;margin-top:15px}.temp-list-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.temp-list-table thead{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.temp-list-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:.95em;white-space:nowrap}.temp-list-table td{padding:12px 16px;border-top:1px solid var(--gray-border);font-size:.9em}.temp-list-table tbody tr:hover{background:#f9fafb}.employee-cell{display:flex;flex-direction:column;gap:4px}.employee-name{font-weight:600;color:var(--main-blue)}.employee-number{font-size:.85em;color:#6b7280}.date-cell{display:flex;flex-direction:column;gap:4px}.overlap-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.85em;font-weight:600;text-align:center}.overlap-badge.yes{background:#fee2e2;color:#991b1b}.overlap-badge.no{background:#dbeafe;color:#1e40af}.actions-cell{display:flex;gap:8px;justify-content:center}.btn-edit-temp,.btn-delete-temp{background:none;border:none;cursor:pointer;font-size:1.2em;padding:4px 8px;border-radius:4px;transition:all .2s ease}.btn-edit-temp:hover{background:#3b82f61a;transform:scale(1.1)}.btn-delete-temp:hover{background:#ef44441a;transform:scale(1.1)}.btn-add-to-list{padding:12px 30px;border-radius:8px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none}.btn-add-to-list:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #10b9814d}.btn-batch-create{padding:12px 30px;border-radius:8px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none}.btn-batch-create:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #8b5cf64d}.btn-add-to-list:disabled,.btn-batch-create:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.labor-time-form-container{padding:0 20px}.labor-time-form{padding:25px}.form-row,.form-row.two-cols{grid-template-columns:1fr}.time-input-group{flex-wrap:wrap}.time-select{min-width:80px}.temp-list-container{overflow-x:scroll}.temp-list-table{min-width:800px}.form-actions{flex-wrap:wrap}.form-actions button{flex:1 1 auto;min-width:120px}}.work-order-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.work-order-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.work-order-list-embedded .work-order-list-container{padding:0;max-width:100%}.work-order-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.batch-actions{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:15px 20px;border-radius:8px;margin-bottom:15px;box-shadow:0 2px 4px #0000000d}.batch-actions .selected-count{font-weight:500;color:#333}.btn-batch-delete{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#dc3545;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.btn-batch-delete:hover:not(:disabled){background:#c82333}.btn-batch-delete:disabled{opacity:.6;cursor:not-allowed}.checkbox-column{width:50px;text-align:center;padding:12px 8px!important}.checkbox-column input[type=checkbox]{width:18px;height:18px;cursor:pointer}.search-box{min-width:200px;flex:0 0 auto}.search-input{padding:10px 15px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;min-width:200px}.action-buttons{display:flex;gap:10px;align-items:center;flex-shrink:0}.view-toggle{display:flex;gap:4px;background:#f3f4f6;padding:4px;border-radius:8px}.view-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:6px;transition:all .2s ease}.view-btn:hover{background:#e5e7eb;color:var(--main-blue)}.view-btn.active{background:#fff;color:var(--main-blue);box-shadow:0 2px 4px #0000001a}.btn-create{border-radius:10px;font-size:1em;font-family:inherit;background:#f9fafb;color:var(--main-blue);transition:all .3s ease}.search-input:focus{outline:none;border-color:var(--main-accent);background:#fff;box-shadow:0 0 0 4px #18454c1a}.filter-select,.filter-input{padding:12px 18px;border:2px solid #e5e7eb;border-radius:10px;font-size:1em;font-family:inherit;background:#f9fafb;color:var(--main-blue);transition:all .3s ease;min-width:150px}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--main-accent);background:#fff;box-shadow:0 0 0 4px #18454c1a}.work-orders-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 2px 10px #0000000d;overflow-x:auto}.work-orders-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1200px}.work-orders-table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9);position:sticky;top:0;z-index:10}.work-orders-table th{padding:18px 16px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid #e5e7eb;font-size:.85em;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}.work-orders-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.work-orders-table th.sortable:hover{background-color:#f3f4f6}.work-orders-table td{padding:18px 16px;border-bottom:1px solid #f1f5f9;color:#374151;transition:all .2s ease}.work-orders-table tbody tr{transition:all .2s ease}.work-orders-table tbody tr:hover{background:linear-gradient(90deg,#f8fafc,#f0f7ff);transform:scale(1.001);box-shadow:0 2px 8px #18454c0d}.work-orders-table tbody tr:last-child td{border-bottom:none}.description-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(450px,1fr));gap:20px}.work-order-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 12px #18454c14;border:1px solid #e5e7eb;transition:all .3s ease;display:flex;flex-direction:column}.work-order-card:hover{box-shadow:0 4px 20px #18454c26;transform:translateY(-2px)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.header-left{display:flex;flex-direction:column;gap:8px}.work-order-number{font-size:1.2em;font-weight:700;color:var(--main-blue);letter-spacing:.5px}.order-link{font-size:.9em;color:#6b7280;cursor:pointer;text-decoration:underline;transition:color .2s}.order-link:hover{color:var(--main-blue)}.header-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card-body{flex:1;margin-bottom:20px}.info-row{display:flex;gap:8px;margin-bottom:12px;align-items:flex-start}.info-row .info-label{font-weight:600;color:#6b7280;min-width:100px;flex-shrink:0;font-size:.9em}.info-row .info-value{color:#111827;flex:1;word-break:break-word}.info-row .info-value.description{line-height:1.6;max-height:60px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:16px;padding:16px;background:#f9fafb;border-radius:12px}.info-item{display:flex;flex-direction:column;gap:4px}.info-item .info-label{font-size:.85em;font-weight:600;color:#6b7280}.info-item .info-value{font-size:.95em;color:#111827;font-weight:500}.info-item .info-value.quantity{display:flex;align-items:center;gap:4px;font-size:1.1em}.info-item .info-value.quantity .completed{font-weight:700;color:var(--main-accent)}.info-item .info-value.quantity .separator{color:#9ca3af}.info-item .info-value.quantity .planned{color:#6b7280}.progress-section{margin-top:20px;padding-top:16px;border-top:1px solid #f3f4f6}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-label{font-size:.9em;font-weight:600;color:#6b7280}.progress-percentage{font-size:1em;font-weight:700;color:var(--main-blue)}.progress-bar-container{width:100%;height:12px;background:#e5e7eb;border-radius:10px;overflow:hidden;position:relative}.progress-bar{height:100%;background:linear-gradient(90deg,var(--main-accent) 0%,#ff9a56 100%);border-radius:10px;transition:width .5s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #ff812b33}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:2px solid #f3f4f6;flex-wrap:wrap;gap:12px}.footer-left{display:flex;gap:12px;flex-wrap:wrap}.meta-tag{font-size:.85em;color:#6b7280;padding:4px 10px;background:#f3f4f6;border-radius:6px}.footer-actions{display:flex;gap:8px}.work-order-number,.order-number{font-weight:700;color:var(--main-blue);font-size:.95em;letter-spacing:.3px}.employee-info,.product-info{display:flex;flex-direction:column;gap:4px}.employee-name{font-weight:600;color:var(--main-blue);font-size:.95em}.employee-number,.product-code{font-size:.8em;color:#6b7280;font-weight:500}.quantity-info{display:flex;align-items:center;gap:6px;font-size:.95em}.quantity-info .completed{font-weight:700;color:var(--main-accent);font-size:1.05em}.quantity-info .separator{color:#9ca3af;font-weight:500}.quantity-info .planned{color:#6b7280;font-weight:500}.progress-bar-container{display:flex;align-items:center;gap:12px;min-width:150px}.progress-bar{flex:1;height:10px;background:linear-gradient(90deg,var(--main-accent) 0%,#ff9a56 100%);border-radius:10px;min-width:30px;transition:width .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 2px 4px #ff812b33}.progress-text{font-size:.85em;color:var(--main-blue);font-weight:700;min-width:45px;text-align:right}.status-badge,.priority-badge{padding:6px 14px;border-radius:8px;font-size:.8em;font-weight:600;white-space:nowrap;display:inline-block;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.abnormal-badge{margin-left:4px;font-size:1.2em}.dropdown{position:relative;display:inline-block}.dropdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:transparent;pointer-events:auto}.dropdown-menu{position:fixed!important;background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10000!important;min-width:150px;overflow:hidden;animation:fadeInDown .2s ease;pointer-events:auto;isolation:isolate}.btn-action.btn-settings{background:#f8f9fa!important;color:#6c757d!important;border:1px solid #dee2e6;padding:8px 12px;border-radius:8px;font-size:1em;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.btn-action.btn-settings:hover{background:#e9ecef!important;color:#495057!important;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.btn-view{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:.85em;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px #18454c33}.btn-view:hover{background:linear-gradient(135deg,var(--main-accent) 0%,#ff8c42 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}.btn-edit{background:#f3f4f6;color:var(--main-blue);border:1px solid #e5e7eb;padding:8px 12px;border-radius:8px;font-size:1em;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.btn-edit:hover{background:var(--main-blue);color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #18454c33}.btn-delete{background:#ef4444;color:#fff;border:none;padding:8px 12px;border-radius:8px;font-size:1em;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.btn-delete:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 4px 8px #dc262633}.empty-state{text-align:center;padding:80px 20px;background:#fff;border-radius:20px;box-shadow:0 4px 20px #18454c14;border:2px dashed #e5e7eb}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-lg, 20px);margin-top:var(--space-xl, 30px);padding:var(--space-lg, 20px)}.page-info{color:var(--gray-600, #6b7280);font-size:var(--font-size-sm, .9em);font-weight:500}.btn-secondary{background:#fff;color:var(--main-blue, #18454c);border:2px solid var(--gray-border, #dee2e6);padding:8px 16px;border-radius:8px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover:not(:disabled){background:var(--main-blue, #18454c);color:#fff;border-color:var(--main-blue, #18454c);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.work-order-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.filters{flex-direction:column}.search-box{width:100%}.work-orders-grid{grid-template-columns:1fr}.card-header{flex-direction:column;gap:12px}.header-right{width:100%;justify-content:flex-start}.info-grid{grid-template-columns:1fr}.card-footer{flex-direction:column;align-items:stretch}.footer-actions{width:100%;justify-content:stretch}.footer-actions button{flex:1}}@media (max-width: 480px){.work-orders-grid{grid-template-columns:1fr}.work-order-card{padding:16px}}.work-order-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.work-order-detail-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.detail-card{background:#fff;border-radius:20px;padding:45px;box-shadow:0 8px 30px #18454c1f;border:1px solid #e5e7eb}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:35px;padding-bottom:30px;border-bottom:3px solid #f1f5f9;gap:20px}.header-info{flex:1;min-width:0}.work-order-title,.order-title{font-size:2.2em;font-weight:800;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 20px;letter-spacing:.5px;word-break:break-word}.header-badges{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.status-badge,.priority-badge{padding:8px 18px;border-radius:10px;font-size:.85em;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;box-shadow:0 2px 6px #0000001a;transition:all .2s ease}.status-badge.pending{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #fbbf24}.status-badge.in-progress{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border:1px solid #3b82f6}.status-badge.paused{background:linear-gradient(135deg,#e5e7eb,#d1d5db);color:#374151;border:1px solid #9ca3af}.status-badge.completed{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border:1px solid #10b981}.status-badge.cancelled{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;border:1px solid #ef4444}.status-badge.assigned{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#3730a3;border:1px solid #6366f1}.status-badge.abnormal{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#991b1b;border:2px solid #dc2626;animation:pulse 2s infinite}.status-badge.ready{background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#166534;border:1px solid #22c55e}.status-badge.not-started{background:linear-gradient(135deg,#fafafa,#f5f5f5);color:#6b7280;border:1px solid #9ca3af}.status-badge.in-production{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:1px solid #1d4ed8}.status-badge.scheduled{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #f59e0b}.status-badge.waiting-materials{background:linear-gradient(135deg,#fef2f2,#fecaca);color:#dc2626;border:1px solid #ef4444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.abnormal-badge{padding:8px 18px;border-radius:10px;font-size:.85em;font-weight:600;background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#991b1b;border:2px solid #dc2626;display:inline-flex;align-items:center;box-shadow:0 2px 6px #dc262633}.priority-badge.urgent{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;border:1px solid #ef4444}.priority-badge.high{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #fbbf24}.priority-badge.normal{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border:1px solid #3b82f6}.priority-badge.low{background:linear-gradient(135deg,#e5e7eb,#d1d5db);color:#374151;border:1px solid #9ca3af}.header-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-start}.btn-edit,.btn-labor-time,.btn-add,.btn-action{padding:12px 24px;border-radius:10px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px #0000001a}.btn-edit{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:var(--main-blue);border:1px solid #d1d5db}.btn-edit:hover{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #18454c4d}.btn-labor-time,.btn-add{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff}.btn-labor-time:hover,.btn-add:hover{background:linear-gradient(135deg,var(--main-accent) 0%,#ff8c42 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}.btn-action{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff}.btn-action:hover{background:linear-gradient(135deg,var(--main-accent) 0%,#ff8c42 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}.btn-action:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-complete{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-complete:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-abnormal{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-abnormal:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.abnormal-section{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:2px solid #fecaca;border-radius:16px;padding:25px;margin-bottom:30px;box-shadow:0 4px 12px #dc26261a;animation:pulse-border 2s infinite}@keyframes pulse-border{0%,to{border-color:#fecaca}50%{border-color:#f87171}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.modal-content{background:#fff;border-radius:16px;padding:35px;max-width:550px;width:90%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease;border:1px solid #e5e7eb}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h3{margin:0 0 25px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.6em;font-weight:700}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:2px solid #f1f5f9}.form-group label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:10px;font-size:.95em}.form-group select,.form-group textarea,.form-group input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:10px;font-size:1em;font-family:inherit;background:#f9fafb;color:var(--main-blue);transition:all .3s ease}.form-group select:focus,.form-group textarea:focus,.form-group input:focus{outline:none;border-color:var(--main-accent);background:#fff;box-shadow:0 0 0 4px #18454c1a}.form-group textarea{resize:vertical;min-height:100px;line-height:1.6}.btn-cancel,.btn-submit{padding:12px 24px;border-radius:10px;font-weight:600;font-size:.95em;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;box-shadow:0 2px 8px #0000001a}.btn-cancel{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#374151;border:1px solid #d1d5db}.btn-cancel:hover{background:linear-gradient(135deg,#e5e7eb,#d1d5db);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff}.info-section{margin-bottom:35px;padding-bottom:30px;border-bottom:2px solid #f1f5f9;transition:all .3s ease}.info-section:hover{border-bottom-color:#e2e8f0}.info-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.section-title{font-size:1.4em;font-weight:700;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 25px;padding-bottom:12px;border-bottom:2px solid #f1f5f9}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.info-item{display:flex;flex-direction:column;gap:10px;padding:18px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:12px;border:1px solid #e5e7eb;transition:all .3s ease}.info-item:hover{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);transform:translateY(-2px);box-shadow:0 4px 12px #18454c14}.info-label{font-weight:600;color:var(--main-blue);font-size:.9em;text-transform:uppercase;letter-spacing:.5px;font-size:.85em}.info-value{color:#1f2937;font-size:1.1em;font-weight:500;word-break:break-word;line-height:1.6}.quantity-display{display:flex;flex-direction:column;gap:24px;padding:25px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:16px;border:2px solid #e2e8f0}.quantity-item{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;border:1px solid #e5e7eb;transition:all .3s ease}.quantity-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #18454c1a}.quantity-label{font-weight:600;color:var(--main-blue);font-size:1em;text-transform:uppercase;letter-spacing:.5px;font-size:.9em}.quantity-value{font-size:1.5em;font-weight:700;color:var(--main-blue);letter-spacing:.5px}.quantity-value.completed{color:var(--main-accent);font-size:1.6em}.progress-display{display:flex;align-items:center;gap:20px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;border:1px solid #e5e7eb}.progress-bar-container{flex:1;height:24px;background:#e5e7eb;border-radius:12px;overflow:hidden;box-shadow:inset 0 2px 4px #0000001a;position:relative}.progress-bar{height:100%;background:linear-gradient(90deg,var(--main-accent) 0%,#ff9a56 100%);transition:width .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 2px 8px #ff812b4d}.progress-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{font-size:1.2em;font-weight:700;color:var(--main-blue);min-width:60px;text-align:right}.notes-content{color:#374151;font-size:1.05em;line-height:1.8;margin:0;padding:25px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:12px;border:1px solid #e5e7eb;white-space:pre-wrap;word-break:break-word}@media (max-width: 768px){.work-order-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:20px;align-items:stretch}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%;justify-content:center}.info-grid{grid-template-columns:1fr;gap:16px}.info-item{padding:16px}.quantity-display{padding:20px}.quantity-item{padding:16px 20px}.progress-display{flex-direction:column;gap:12px;padding:16px}.progress-text{text-align:center;min-width:auto}.work-order-title,.order-title{font-size:1.6em}.section-title{font-size:1.2em}}.labor-time-summary{display:flex;gap:24px;align-items:center;margin-bottom:20px}.summary-item{display:flex;flex-direction:column;align-items:center;flex:1;text-align:center}.summary-label{font-size:14px;color:#6b7280;font-weight:500;margin-bottom:8px}.summary-value{font-size:18px;font-weight:600;color:#1f2937}.summary-value.confirmed{color:#059669}.summary-value.pending{color:#d97706}.labor-time-actions{display:flex;gap:12px;margin-top:16px}.btn-action{flex:1;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-action:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-action:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.labor-time-summary{flex-direction:column;gap:16px}.labor-time-actions{flex-direction:column}.btn-action{width:100%}}.work-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.work-order-form,.order-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.readonly-value{padding:8px 12px;background:#f3f4f6;border-radius:6px;color:#374151;min-height:38px;display:flex;align-items:center}.form-row.readonly-order-info{grid-template-columns:1fr 1fr 1fr}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.form-row .form-group{display:flex;flex-direction:column;margin-bottom:0}.form-row .form-group label{margin-bottom:8px;min-height:24px;display:flex;align-items:center}.employee-select-input{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .3s ease;box-sizing:border-box;min-height:48px}.employee-select-input:hover{border-color:var(--main-accent)}.employee-select-input:focus-within{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.employee-select-input .placeholder{color:#9ca3af}.employee-select-input svg{width:16px;height:16px;color:#6b7280;transition:transform .2s ease}.employee-select-input:active svg{transform:rotate(180deg)}.employee-select-modal{display:flex;flex-direction:column;height:100%;max-height:600px}.employee-search{display:flex;align-items:center;gap:10px;padding:12px;background:#f9fafb;border-radius:8px;margin-bottom:20px;border:2px solid var(--gray-border)}.employee-search svg{width:18px;height:18px;color:#6b7280;flex-shrink:0}.employee-search input{flex:1;border:none;background:transparent;font-size:1em;color:var(--main-blue);outline:none}.employee-search input::placeholder{color:#9ca3af}.employee-list{flex:1;overflow-y:auto;border:1px solid var(--gray-border);border-radius:8px;max-height:400px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px}.employee-list-empty{grid-column:1 / -1;padding:40px 20px;text-align:center;color:#9ca3af;font-size:.95em}.employee-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px;border:2px solid #f3f4f6;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:center;min-height:80px}.employee-item:hover{background:#f9fafb;border-color:var(--main-accent)}.employee-item.selected{background:#eff6ff;border-color:var(--main-accent);border-width:2px}.employee-checkbox{width:20px;height:20px;border:2px solid var(--gray-border);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease;position:absolute;top:8px;right:8px}.employee-item.selected .employee-checkbox{background:var(--main-accent);border-color:var(--main-accent)}.employee-item.selected .employee-checkbox svg{color:#fff;width:12px;height:12px}.employee-info{flex:1;min-width:0;width:100%;display:flex;flex-direction:column;align-items:center;gap:4px}.employee-name{font-weight:600;color:var(--main-blue);font-size:.9em;word-break:break-word;text-align:center}.employee-number{font-size:.75em;color:#6b7280}.employee-modal-footer{display:flex;align-items:center;justify-content:space-between;padding-top:20px;margin-top:20px;border-top:2px solid var(--gray-border)}.selected-count{font-size:.95em;color:#6b7280;font-weight:500}.btn-confirm{padding:10px 24px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff812b4d}.btn-confirm:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.btn-confirm:active{transform:translateY(0)}@media (max-width: 768px){.employee-list{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.employee-list{grid-template-columns:1fr}}.material-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.material-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.material-list-container,.order-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.materials-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.materials-table th.sortable:hover{background-color:#f3f4f6}.material-form-page,.work-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.material-form,.work-order-form,.order-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.material-detail-page,.order-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.material-detail-container,.order-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.material-title,.order-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0 0 15px;letter-spacing:1px}@media (max-width: 768px){.material-detail-container,.order-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}}.bom-list-page,.material-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.bom-list-embedded,.material-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.bom-list-container,.material-list-container,.order-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.materials-table-container,.orders-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto}.materials-table,.orders-table{width:100%;border-collapse:collapse}.materials-table thead,.orders-table thead{background:#f9fafb}.materials-table th,.orders-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.materials-table td,.orders-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151}.materials-table tbody tr:hover,.orders-table tbody tr:hover{background:#f9fafb}.bom-groups{display:flex;flex-direction:column;gap:20px}.bom-group-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.bom-group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--gray-border)}.group-info{display:flex;align-items:center;gap:15px}.group-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0}.group-version{padding:4px 12px;background:#e5e7eb;color:#374151;border-radius:12px;font-size:.85em;font-weight:600}.bom-items-table-container{overflow-x:auto}.bom-items-table{width:100%;border-collapse:collapse}.bom-items-table thead{background:#f9fafb}.bom-items-table th{padding:12px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.bom-items-table td{padding:12px;border-bottom:1px solid #e5e7eb;color:#374151}.bom-items-table tbody tr:hover{background:#f9fafb}.alternative-item{background-color:#fef3c7}.alternative-badge{background:#fef3c7;color:#92400e}.primary-badge{background:#d1fae5;color:#065f46}.bom-form-page,.material-form-page,.work-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.bom-form,.material-form,.work-order-form,.order-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.material-transaction-list-page,.material-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.material-transaction-list-embedded,.material-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.material-transaction-list-container,.material-list-container,.order-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.transactions-table-container,.materials-table-container,.orders-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto}.transactions-table,.materials-table,.orders-table{width:100%;border-collapse:collapse}.transactions-table thead,.materials-table thead,.orders-table thead{background:#f9fafb}.transactions-table th,.materials-table th,.orders-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.transactions-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.transactions-table th.sortable:hover{background-color:#f3f4f6}.transactions-table td,.materials-table td,.orders-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151}.transactions-table tbody tr:hover,.materials-table tbody tr:hover,.orders-table tbody tr:hover{background:#f9fafb}.material-transaction-form-page,.material-form-page,.work-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.material-transaction-form,.material-form,.work-order-form,.order-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.purchase-order-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.purchase-order-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.purchase-orders-table-container{background:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 12px #18454c14;overflow-x:auto}.purchase-orders-table{width:100%;border-collapse:separate;border-spacing:0}.purchase-orders-table thead{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;position:sticky;top:0;z-index:10}.purchase-orders-table th{padding:15px;text-align:left;font-weight:600;font-size:.9em;letter-spacing:.5px;text-transform:uppercase}.purchase-orders-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.purchase-orders-table th.sortable:hover{background-color:#ffffff1a}.purchase-orders-table tbody tr{transition:all .3s ease;border-bottom:1px solid #e5e7eb}.purchase-orders-table tbody tr:hover{background:linear-gradient(135deg,#f9fafb,#f3f4f6);transform:translate(4px);box-shadow:0 2px 8px #18454c1a}.purchase-orders-table td{padding:15px;color:#374151}.status-badge.ordered{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#3730a3}.status-badge.partial{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}@media (max-width: 1024px){.header-actions,.export-buttons{flex-wrap:wrap}}@media (max-width: 768px){.purchase-order-list-container{padding:0 20px}.list-header{flex-direction:column;gap:15px;align-items:stretch}.header-actions{width:100%;justify-content:center}.btn-export-excel,.btn-export-csv,.btn-import,.btn-create{padding:6px 10px;font-size:.75em;height:32px}.filters{flex-direction:column}.purchase-orders-table{font-size:.85em}.purchase-orders-table th,.purchase-orders-table td{padding:10px}}.purchase-receipt-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.purchase-receipt-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.purchase-receipts-table-container{background:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 12px #18454c14;overflow-x:auto}.purchase-receipts-table{width:100%;border-collapse:separate;border-spacing:0}.purchase-receipts-table thead{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;position:sticky;top:0;z-index:10}.purchase-receipts-table th{padding:15px;text-align:left;font-weight:600;font-size:.9em;letter-spacing:.5px;text-transform:uppercase}.purchase-receipts-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.purchase-receipts-table th.sortable:hover{background-color:#ffffff1a}.purchase-receipts-table tbody tr{transition:all .3s ease;border-bottom:1px solid #e5e7eb}.purchase-receipts-table tbody tr:hover{background:linear-gradient(135deg,#f9fafb,#f3f4f6);transform:translate(4px);box-shadow:0 2px 8px #18454c1a}.purchase-receipts-table td{padding:15px;color:#374151}.receipt-number{font-weight:600;color:var(--main-blue)}.status-badge.received{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}@media (max-width: 768px){.purchase-receipt-list-container{padding:0 20px}.list-header{flex-direction:column;gap:15px;align-items:stretch}.btn-create{width:100%}.filters{flex-direction:column}.purchase-receipts-table{font-size:.85em}.purchase-receipts-table th,.purchase-receipts-table td{padding:10px}}.sales-order-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.sales-order-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.sales-orders-table-container{background:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 12px #18454c14;overflow-x:auto}.sales-orders-table{width:100%;border-collapse:separate;border-spacing:0}.sales-orders-table thead{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;position:sticky;top:0;z-index:10}.sales-orders-table th{padding:15px;text-align:left;font-weight:600;font-size:.9em;letter-spacing:.5px;text-transform:uppercase}.sales-orders-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.sales-orders-table th.sortable:hover{background-color:#ffffff1a}.sales-orders-table tbody tr{transition:all .3s ease;border-bottom:1px solid #e5e7eb}.sales-orders-table tbody tr:hover{background:linear-gradient(135deg,#f9fafb,#f3f4f6);transform:translate(4px);box-shadow:0 2px 8px #18454c1a}.sales-orders-table td{padding:15px;color:#374151}.order-number{font-weight:600;color:var(--main-blue)}.status-badge.pending{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.status-badge.approved{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}@media (max-width: 768px){.sales-order-list-container{padding:0 20px}.list-header{flex-direction:column;gap:15px;align-items:stretch}.btn-create{width:100%}.filters{flex-direction:column}.sales-orders-table{font-size:.85em}.sales-orders-table th,.sales-orders-table td{padding:10px}}.sales-delivery-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.sales-delivery-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.sales-deliveries-table-container{background:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 12px #18454c14;overflow-x:auto}.sales-deliveries-table{width:100%;border-collapse:separate;border-spacing:0}.sales-deliveries-table thead{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;position:sticky;top:0;z-index:10}.sales-deliveries-table th{padding:15px;text-align:left;font-weight:600;font-size:.9em;letter-spacing:.5px;text-transform:uppercase}.sales-deliveries-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.sales-deliveries-table th.sortable:hover{background-color:#ffffff1a}.sales-deliveries-table tbody tr{transition:all .3s ease;border-bottom:1px solid #e5e7eb}.sales-deliveries-table tbody tr:hover{background:linear-gradient(135deg,#f9fafb,#f3f4f6);transform:translate(4px);box-shadow:0 2px 8px #18454c1a}.sales-deliveries-table td{padding:15px;color:#374151}.delivery-number{font-weight:600;color:var(--main-blue)}.status-badge.shipped{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#3730a3}.status-badge.delivered{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}@media (max-width: 768px){.sales-delivery-list-container{padding:0 20px}.list-header{flex-direction:column;gap:15px;align-items:stretch}.btn-create{width:100%}.filters{flex-direction:column}.sales-deliveries-table{font-size:.85em}.sales-deliveries-table th,.sales-deliveries-table td{padding:10px}}.inventory-count-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.inventory-count-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.list-header{display:flex;flex-direction:column;align-items:stretch;margin-bottom:30px;padding:25px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #18454c14;gap:15px}.header-actions{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;justify-content:flex-start}.btn-export-excel,.btn-export-csv,.btn-import,.btn-create{padding:6px 12px;border:none;border-radius:6px;font-size:.8em;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:4px;box-shadow:0 2px 4px #0000001a;white-space:nowrap;height:32px;flex:0 0 auto;width:auto}.btn-export-excel{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.btn-export-excel:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 3px 8px #2563eb4d}.btn-export-csv{background:linear-gradient(135deg,#0891b2,#0e7490);color:#fff}.btn-export-csv:hover:not(:disabled){background:linear-gradient(135deg,#0e7490,#155e75);transform:translateY(-1px);box-shadow:0 3px 8px #0891b24d}.btn-import{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff}.btn-import:hover:not(:disabled){background:linear-gradient(135deg,#15803d,#166534);transform:translateY(-1px);box-shadow:0 3px 8px #16a34a4d}.btn-export-excel:disabled,.btn-export-csv:disabled,.btn-import:disabled,.btn-create:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-create{background:linear-gradient(135deg,var(--main-accent) 0%,#e07839 100%)}.btn-create:hover:not(:disabled){background:linear-gradient(135deg,#e07839,#c96832);transform:translateY(-1px);box-shadow:0 3px 8px #ff812b4d}.filters{display:flex;gap:15px;margin-bottom:25px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #18454c14;flex-wrap:wrap}.search-input,.filter-select,.filter-input{padding:10px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:.95em;transition:all .3s ease;flex:1;min-width:150px}.search-input:focus,.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 4px #ff812b1a}.inventory-counts-table-container{background:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 12px #18454c14;overflow-x:auto}.inventory-counts-table{width:100%;border-collapse:separate;border-spacing:0}.inventory-counts-table thead{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;position:sticky;top:0;z-index:10}.inventory-counts-table th{padding:15px;text-align:left;font-weight:600;font-size:.9em;letter-spacing:.5px;text-transform:uppercase}.inventory-counts-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.inventory-counts-table th.sortable:hover{background-color:#ffffff1a}.inventory-counts-table tbody tr{transition:all .3s ease;border-bottom:1px solid #e5e7eb}.inventory-counts-table tbody tr:hover{background:linear-gradient(135deg,#f9fafb,#f3f4f6);transform:translate(4px);box-shadow:0 2px 8px #18454c1a}.inventory-counts-table td{padding:15px;color:#374151}.count-number{font-weight:600;color:var(--main-blue)}.status-badge{padding:6px 14px;border-radius:8px;font-size:.85em;font-weight:600;display:inline-block}.status-badge.draft{background:linear-gradient(135deg,#e5e7eb,#d1d5db);color:#374151}.status-badge.counting{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.status-badge.reviewed{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.status-badge.adjusted{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.status-badge.cancelled{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.btn-view,.btn-edit{padding:8px 16px;border:none;border-radius:6px;font-weight:600;font-size:.85em;cursor:pointer;transition:all .3s ease}.btn-view{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff}.btn-view:hover{background:linear-gradient(135deg,var(--main-accent) 0%,#ff8c42 100%);transform:translateY(-2px)}.btn-edit{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:var(--main-blue)}.btn-edit:hover{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;transform:translateY(-2px)}.no-data{text-align:center;padding:40px;color:#6b7280;font-size:1.1em}@media (max-width: 768px){.inventory-count-list-container{padding:0 20px}.list-header{flex-direction:column;gap:15px;align-items:stretch}.btn-create{width:100%}.filters{flex-direction:column}.inventory-counts-table{font-size:.85em}.inventory-counts-table th,.inventory-counts-table td{padding:10px}}.material-management-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.material-management-container{max-width:1600px;margin:0 auto;padding:20px;flex:1;width:100%}.main-tab-navigation{display:flex;gap:10px;margin-bottom:15px;padding:15px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #18454c14;flex-wrap:wrap}.main-tab-button{display:flex;align-items:center;gap:8px;padding:12px 24px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:var(--main-blue);font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease}.main-tab-button:hover{border-color:var(--main-accent);background:linear-gradient(135deg,#f9fafb,#f3f4f6);transform:translateY(-2px)}.main-tab-button.active{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;border-color:var(--main-blue);box-shadow:0 4px 12px #18454c4d}.sub-tab-navigation{display:flex;gap:10px;margin-bottom:20px;padding:12px 15px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #18454c14;flex-wrap:wrap;align-items:center}.sub-tab-button{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#6b7280;font-weight:500;font-size:.9em;cursor:pointer;transition:all .3s ease}.sub-tab-button:hover{border-color:var(--main-accent);background:#f9fafb;color:var(--main-blue)}.sub-tab-button.active{background:linear-gradient(135deg,#e8f4f8,#d1e7dd);color:var(--main-blue);border-color:var(--main-accent);font-weight:600}.create-button{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:6px;background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;margin-left:auto;box-shadow:0 2px 6px #18454c33}.create-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #18454c4d}.tab-icon{font-size:1.1em}.list-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #18454c14;padding:20px;min-height:500px}.list-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.btn-navigate{padding:12px 24px;background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-navigate:hover{transform:translateY(-2px);box-shadow:0 4px 12px #18454c4d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow-y:auto}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:2px solid #e8f4f8;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px 12px 0 0}.modal-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin:0}.modal-close{background:none;border:none;font-size:1.5em;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.modal-close:hover{background:#f3f4f6;color:var(--main-blue)}.modal-body{padding:24px;overflow-y:auto;flex:1}@media (max-width: 768px){.material-management-container{padding:10px}.main-tab-navigation,.sub-tab-navigation{flex-direction:column}.main-tab-button,.sub-tab-button{width:100%;justify-content:center}.create-button{width:100%;margin-left:0;margin-top:10px}.modal-content{max-width:100%;max-height:95vh}.modal-body{padding:16px}}.purchase-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.purchase-order-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.purchase-order-form{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 12px #18454c14}@media (max-width: 768px){.purchase-order-form-container{padding:0 20px}.form-row{grid-template-columns:1fr}.items-table{font-size:.85em}.items-table th,.items-table td{padding:8px}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.purchase-order-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#e8f4f8,#d1e7dd)}.purchase-order-detail-container{flex:1;padding:30px 20px;max-width:1400px;margin:0 auto;width:100%}.status-badge.received{background:#cfe2ff;color:#084298}@media (max-width: 768px){.purchase-order-detail-container{padding:15px}.detail-header{flex-direction:column;gap:20px}.header-actions,.btn-edit{width:100%}.info-grid{grid-template-columns:1fr}.items-table-container{overflow-x:scroll}}.purchase-receipt-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.purchase-receipt-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.purchase-receipt-form{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 12px #18454c14}.material-select,.quantity-input,.price-input,.unit-input,.quality-select,.defective-input{width:100%;padding:8px 12px;border:2px solid #e5e7eb;border-radius:6px;font-size:.95em;transition:all .3s ease}.material-select:focus,.quantity-input:focus,.price-input:focus,.unit-input:focus,.quality-select:focus,.defective-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.qualified-quantity{font-size:.85em;color:#059669;font-weight:500;margin-top:4px}@media (max-width: 768px){.purchase-receipt-form-container{padding:0 20px}.form-row{grid-template-columns:1fr}.items-table{font-size:.85em}.items-table th,.items-table td{padding:8px}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.purchase-receipt-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#e8f4f8,#d1e7dd)}.purchase-receipt-detail-container{flex:1;padding:30px 20px;max-width:1400px;margin:0 auto;width:100%}.receipt-title{font-size:2em;font-weight:700;color:#18454c;margin:0 0 15px}.status-badge.received{background:#d4edda;color:#155724}.quality-badge{padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600}.quality-badge.qualified{background:#d4edda;color:#155724}.quality-badge.defective{background:#f8d7da;color:#721c24}@media (max-width: 768px){.purchase-receipt-detail-container{padding:15px}.detail-header{flex-direction:column;gap:20px}.header-actions,.btn-edit{width:100%}.info-grid{grid-template-columns:1fr}.items-table-container{overflow-x:scroll}}.sales-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.sales-order-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.sales-order-form{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 12px #18454c14}@media (max-width: 768px){.sales-order-form-container{padding:0 20px}.form-row{grid-template-columns:1fr}.items-table{font-size:.85em}.items-table th,.items-table td{padding:8px}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.sales-order-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#e8f4f8,#d1e7dd)}.sales-order-detail-container{flex:1;padding:30px 20px;max-width:1400px;margin:0 auto;width:100%}.order-title{font-size:2em;font-weight:700;color:#18454c;margin:0 0 15px}.status-badge.pending{background:#fff3cd;color:#856404}.status-badge.approved{background:#d4edda;color:#155724}.status-badge.delivered{background:#d1e7dd;color:#0f5132}@media (max-width: 768px){.sales-order-detail-container{padding:15px}.detail-header{flex-direction:column;gap:20px}.header-actions,.btn-edit{width:100%}.info-grid{grid-template-columns:1fr}.items-table-container{overflow-x:scroll}}.sales-delivery-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.sales-delivery-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.sales-delivery-form{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 12px #18454c14}.material-select,.quantity-input,.price-input,.unit-input,.notes-input{width:100%;padding:8px 12px;border:2px solid #e5e7eb;border-radius:6px;font-size:.95em;transition:all .3s ease}.material-select:focus,.quantity-input:focus,.price-input:focus,.unit-input:focus,.notes-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.total-cell{font-weight:600;color:var(--main-blue)}.items-table tfoot{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-top:2px solid var(--main-blue)}.items-table tfoot td{padding:15px;font-weight:700}.total-label{text-align:right;font-size:1.1em;color:var(--main-blue)}.total-amount{font-size:1.3em;color:var(--main-accent);text-align:right}@media (max-width: 768px){.sales-delivery-form-container{padding:0 20px}.form-row{grid-template-columns:1fr}.items-table{font-size:.85em}.items-table th,.items-table td{padding:8px}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.sales-delivery-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#e8f4f8,#d1e7dd)}.sales-delivery-detail-container{flex:1;padding:30px 20px;max-width:1400px;margin:0 auto;width:100%}.delivery-title{font-size:2em;font-weight:700;color:#18454c;margin:0 0 15px}.status-badge.shipped{background:#cfe2ff;color:#084298}.status-badge.delivered{background:#d4edda;color:#155724}.header-actions{display:flex;gap:10px;align-items:center}.export-buttons{display:flex;gap:8px;margin-right:10px}.btn-export-pdf,.btn-export-docx,.btn-print{padding:8px 16px;background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border:none;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 6px #dc354533}.btn-export-docx{background:linear-gradient(135deg,#007bff,#0056b3);box-shadow:0 2px 6px #007bff33}.btn-print{background:linear-gradient(135deg,#6c757d,#5a6268);box-shadow:0 2px 6px #6c757d33}.btn-export-pdf:hover,.btn-export-docx:hover,.btn-print:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0003}.items-table tfoot{background:#f8f9fa;font-weight:700}.total-label{text-align:right;padding-right:20px}.total-amount{font-size:1.2em;color:#18454c}@media print{.sales-delivery-detail-page{background:#fff}.sales-delivery-detail-page>nav,.sales-delivery-detail-page>footer,.header-actions{display:none!important}.detail-card{box-shadow:none;border:none}.detail-header{border-bottom:2px solid #000;padding:20px 0}.info-section{page-break-inside:avoid;padding:15px 0}.items-table{page-break-inside:avoid}.items-table thead{background:#f0f0f0!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.status-badge{border:1px solid #000;background:#fff!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media (max-width: 768px){.sales-delivery-detail-container{padding:15px}.detail-header{flex-direction:column;gap:20px}.header-actions{width:100%;flex-wrap:wrap}.export-buttons{width:100%;margin-bottom:10px}.btn-export-pdf,.btn-export-docx,.btn-print{flex:1;min-width:0}.btn-edit{width:100%}.info-grid{grid-template-columns:1fr}.items-table-container{overflow-x:scroll}}.inventory-count-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def)}.inventory-count-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.form-header{margin-bottom:30px;padding:25px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #18454c14}.page-title{font-size:2em;font-weight:800;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.inventory-count-form{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 12px #18454c14}.form-section{margin-bottom:30px;padding-bottom:25px;border-bottom:2px solid #e5e7eb}.section-title{font-size:1.3em;font-weight:700;background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 20px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-weight:600;color:var(--main-blue);margin-bottom:8px;font-size:.95em}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:1em;transition:all .3s ease;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 4px #ff812b1a}.readonly-input{background:#f9fafb!important;color:#6b7280}.btn-add-item{padding:10px 20px;background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #18454c33}.btn-add-item:hover:not(:disabled){background:linear-gradient(135deg,var(--main-accent) 0%,#ff8c42 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}.btn-add-item:disabled{opacity:.5;cursor:not-allowed}.empty-items{text-align:center;padding:40px;background:#f9fafb;border-radius:12px;border:2px dashed #e5e7eb}.empty-items p{color:#6b7280;margin-bottom:20px;font-size:1.1em}.items-table-container{overflow-x:auto;border-radius:12px;border:2px solid #e5e7eb}.items-table thead{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff}.items-table th{padding:15px;text-align:left;font-weight:600;font-size:.9em;letter-spacing:.5px;text-transform:uppercase}.items-table tbody tr{border-bottom:1px solid #e5e7eb;transition:all .3s ease}.items-table tbody tr:hover{background:#f9fafb}.items-table td{padding:12px}.material-select,.system-quantity-input,.counted-quantity-input,.unit-input,.notes-input{width:100%;padding:8px 12px;border:2px solid #e5e7eb;border-radius:6px;font-size:.95em;transition:all .3s ease}.material-select:focus,.system-quantity-input:focus,.counted-quantity-input:focus,.unit-input:focus,.notes-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.difference-cell{font-weight:600;text-align:right}.difference-cell.positive{color:#059669}.difference-cell.negative{color:#dc2626}.difference-cell.zero{color:#6b7280}.btn-remove-item{padding:6px 12px;background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-remove-item:hover:not(:disabled){background:linear-gradient(135deg,#fecaca,#fca5a5);transform:scale(1.1)}.btn-remove-item:disabled{opacity:.5;cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:25px;border-top:2px solid #e5e7eb}.btn-cancel,.btn-submit{padding:12px 32px;border:none;border-radius:10px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease}.btn-cancel{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#374151}.btn-cancel:hover:not(:disabled){background:linear-gradient(135deg,#e5e7eb,#d1d5db);transform:translateY(-2px)}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;box-shadow:0 2px 8px #18454c33}.btn-submit:hover:not(:disabled){background:linear-gradient(135deg,var(--main-accent) 0%,#ff8c42 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}@media (max-width: 768px){.inventory-count-form-container{padding:0 20px}.form-row{grid-template-columns:1fr}.items-table{font-size:.85em}.items-table th,.items-table td{padding:8px}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.inventory-count-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#e8f4f8,#d1e7dd)}.inventory-count-detail-container{flex:1;padding:30px 20px;max-width:1400px;margin:0 auto;width:100%}.detail-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #18454c1f;overflow:hidden}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;padding:30px;border-bottom:2px solid #e8f4f8;background:linear-gradient(135deg,#f8f9fa,#fff)}.count-title{font-size:2em;font-weight:700;color:#18454c;margin:0 0 15px}.status-badge{padding:6px 14px;border-radius:20px;font-size:.9em;font-weight:600;text-transform:uppercase}.status-badge.draft{background:#e9ecef;color:#495057}.status-badge.counting{background:#fff3cd;color:#856404}.status-badge.reviewed{background:#cfe2ff;color:#084298}.status-badge.adjusted{background:#d4edda;color:#155724}.status-badge.cancelled{background:#f8d7da;color:#721c24}.btn-edit{padding:10px 20px;background:linear-gradient(135deg,#18454c,#2d6a7a);color:#fff;border:none;border-radius:8px;font-size:.95em;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #18454c33}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #18454c4d}.info-section{padding:30px;border-bottom:1px solid #e8f4f8}.section-title{font-size:1.3em;font-weight:700;color:#18454c;margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid #18454c}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.info-label{font-size:.9em;color:#6c757d;font-weight:600}.info-value{font-size:1.1em;color:#18454c;font-weight:500}.items-table-container{overflow-x:auto;margin-top:20px}.items-table{width:100%;border-collapse:collapse;background:#fff}.items-table thead{background:linear-gradient(135deg,#18454c,#2d6a7a);color:#fff}.items-table th{padding:15px;text-align:left;font-weight:600;font-size:.95em}.items-table td{padding:15px;border-bottom:1px solid #e8f4f8}.items-table tbody tr:hover{background:#f8f9fa}.difference-cell{font-weight:600}.difference-cell.positive{color:#155724}.difference-cell.negative{color:#dc3545}.difference-cell.zero{color:#6c757d}.notes-content{padding:15px;background:#f8f9fa;border-radius:8px;color:#495057;line-height:1.6;white-space:pre-wrap}.error{color:#dc3545}@media (max-width: 768px){.inventory-count-detail-container{padding:15px}.detail-header{flex-direction:column;gap:20px}.header-actions,.btn-edit{width:100%}.info-grid{grid-template-columns:1fr}.items-table-container{overflow-x:scroll}}.equipment-list-page,.material-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.equipment-list-embedded,.material-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.equipment-list-container,.material-list-container,.order-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.equipment-table-container,.materials-table-container,.orders-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto}.equipment-table,.materials-table,.orders-table{width:100%;border-collapse:collapse}.equipment-table thead,.materials-table thead,.orders-table thead{background:#f9fafb}.equipment-table th,.materials-table th,.orders-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.equipment-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.equipment-table th.sortable:hover{background-color:#f3f4f6}.equipment-table td,.materials-table td,.orders-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151}.equipment-table tbody tr:hover,.materials-table tbody tr:hover,.orders-table tbody tr:hover{background:#f9fafb}@media (max-width: 768px){.equipment-list-container,.material-list-container,.order-list-container{padding:0 20px}.header-row{flex-direction:column;align-items:stretch;gap:15px}.filter-controls{flex-direction:column;align-items:stretch}.filter-group{width:100%;max-width:none}.filter-group.search-group{max-width:none}.action-buttons{width:100%}.btn-create{width:100%;justify-content:center}.equipment-table-container,.orders-table-container{overflow-x:scroll}}.equipment-form-page,.material-form-page,.work-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.work-order-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.equipment-form,.material-form,.work-order-form,.order-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.equipment-detail-page,.material-detail-page,.order-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.equipment-detail-container,.material-detail-container,.order-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.equipment-title,.material-title,.order-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0 0 15px;letter-spacing:1px}.quality-inspection-list-page,.equipment-list-page,.material-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.quality-inspection-list-embedded,.equipment-list-embedded,.material-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.quality-inspection-list-container,.equipment-list-container,.material-list-container,.order-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.list-header-card{background:#fff;border-radius:16px;padding:20px 25px;margin-bottom:20px;box-shadow:0 2px 10px #0000000d}.header-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}.filter-controls{display:flex;flex-wrap:wrap;gap:15px;align-items:flex-end;flex:1}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group.search-group{min-width:180px;max-width:220px}.filter-group label{font-weight:600;color:var(--main-blue);font-size:.85em;white-space:nowrap}.filter-select,.filter-input{padding:10px 15px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;height:42px;box-sizing:border-box;min-width:120px}.btn-create{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;padding:0 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95em;white-space:nowrap;height:42px;box-sizing:border-box}.quality-inspection-table-container,.equipment-table-container,.materials-table-container,.orders-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto}.quality-inspection-table,.equipment-table,.materials-table,.orders-table{width:100%;border-collapse:collapse}.quality-inspection-table thead,.equipment-table thead,.materials-table thead,.orders-table thead{background:#f9fafb}.quality-inspection-table th,.equipment-table th,.materials-table th,.orders-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.quality-inspection-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.quality-inspection-table th.sortable:hover{background-color:#f3f4f6}.quality-inspection-table td,.equipment-table td,.materials-table td,.orders-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151}.quality-inspection-table tbody tr:hover,.equipment-table tbody tr:hover,.materials-table tbody tr:hover,.orders-table tbody tr:hover{background:#f9fafb}.action-dropdown{position:relative;display:inline-block}.btn-action-menu{background:transparent;border:1px solid #e5e7eb;color:var(--main-blue);padding:6px 10px;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.btn-action-menu:hover{background:#f3f4f6;border-color:var(--main-blue)}.action-menu{position:absolute;right:0;top:calc(100% + 4px);background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:140px;overflow:hidden}.action-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:#fff;color:#374151;font-size:.9em;cursor:pointer;transition:background-color .2s;text-align:left}.action-menu-item:hover{background:#f3f4f6}.action-menu-item:not(:last-child){border-bottom:1px solid #e5e7eb}.action-menu-item svg{width:16px;height:16px;color:var(--main-blue)}@media (max-width: 768px){.quality-inspection-list-container,.material-list-container,.order-list-container{padding:0 20px}.header-row{flex-direction:column;align-items:stretch;gap:15px}.filter-controls{flex-direction:column;align-items:stretch}.filter-group{width:100%;max-width:none}.filter-group.search-group{max-width:none}.action-buttons{width:100%}.btn-create{width:100%;justify-content:center}.quality-inspection-table-container,.orders-table-container{overflow-x:scroll}}.inspection-number{font-weight:700;color:var(--main-blue)}.btn-create-defect{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.9em;transition:all .2s}.btn-create-defect:hover{background:#fecaca;color:#7f1d1d}.quality-inspection-form-page,.equipment-form-page,.material-form-page,.work-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.quality-inspection-form-container,.equipment-form-container,.material-form-container,.work-order-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.quality-inspection-form,.equipment-form,.material-form,.work-order-form,.order-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.quality-inspection-detail-page,.equipment-detail-page,.material-detail-page,.order-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.quality-inspection-detail-container,.equipment-detail-container,.material-detail-container,.order-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.inspection-title,.equipment-title,.material-title,.order-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0 0 15px;letter-spacing:1px}.defect-record-list-page,.quality-inspection-list-page,.equipment-list-page,.material-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.defect-record-list-embedded,.quality-inspection-list-embedded,.equipment-list-embedded,.material-list-embedded{display:block;width:100%;background:transparent;min-height:auto}.defect-record-list-container,.quality-inspection-list-container,.equipment-list-container,.material-list-container,.order-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.defect-record-table-container,.quality-inspection-table-container,.equipment-table-container,.materials-table-container,.orders-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto}.defect-record-table,.quality-inspection-table,.equipment-table,.materials-table,.orders-table{width:100%;border-collapse:collapse}.defect-record-table thead,.quality-inspection-table thead,.equipment-table thead,.materials-table thead,.orders-table thead{background:#f9fafb}.defect-record-table th,.quality-inspection-table th,.equipment-table th,.materials-table th,.orders-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.defect-record-table td,.quality-inspection-table td,.equipment-table td,.materials-table td,.orders-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151}.defect-record-table tbody tr:hover,.quality-inspection-table tbody tr:hover,.equipment-table tbody tr:hover,.materials-table tbody tr:hover,.orders-table tbody tr:hover{background:#f9fafb}.low-stock{background-color:#fff3cd!important}.order-number{font-weight:700;color:var(--main-blue)}.product-info{display:flex;flex-direction:column;gap:4px}.product-name{font-weight:600;color:var(--main-blue)}.product-code{font-size:.85em;color:#6b7280}.quantity-info{display:flex;align-items:center;gap:5px}.quantity-info .completed{font-weight:700;color:var(--main-accent)}.quantity-info .separator{color:#9ca3af}.quantity-info .planned{color:#6b7280}.progress-bar-container{display:flex;align-items:center;gap:10px;min-width:120px}.progress-bar{height:8px;background:var(--main-accent);border-radius:4px;min-width:20px;transition:width .3s ease}.progress-text{font-size:.85em;color:#6b7280;font-weight:600;min-width:40px}.btn-view,.btn-work-order{background:var(--main-blue);color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:.85em;cursor:pointer;transition:all .3s ease}.btn-view:hover,.btn-work-order:hover{background:var(--main-accent);transform:translateY(-1px)}@media (max-width: 768px){.material-list-container,.order-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.filters{flex-direction:column}.search-box{width:100%}.orders-table-container{overflow-x:scroll}}.defect-number,.inspection-number{font-weight:700;color:var(--main-blue)}.defect-description{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge.passed{background:#d1fae5;color:#065f46}.status-badge.failed{background:#fee2e2;color:#991b1b}.status-badge.conditional{background:#fef3c7;color:#92400e}.status-badge.pending{background:#e5e7eb;color:#374151}.defect-record-form-page,.quality-inspection-form-page,.equipment-form-page,.material-form-page,.work-order-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.defect-record-form-container,.quality-inspection-form-container,.equipment-form-container,.material-form-container,.work-order-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.defect-record-form,.quality-inspection-form,.equipment-form,.material-form,.work-order-form,.order-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.readonly-input{background:#f9fafb;cursor:not-allowed}@media (max-width: 768px){.work-order-form-container{padding:0 20px}.work-order-form,.order-form{padding:25px}.form-row{grid-template-columns:1fr}}.defect-record-detail-page,.quality-inspection-detail-page,.equipment-detail-page,.material-detail-page,.order-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.defect-record-detail-container,.quality-inspection-detail-container,.equipment-detail-container,.material-detail-container,.order-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.defect-title,.inspection-title,.equipment-title,.material-title,.order-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0 0 15px;letter-spacing:1px}.status-badge,.priority-badge{padding:6px 16px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap}.status-badge.in-progress{background:#dbeafe;color:#1e40af}.status-badge.paused{background:#e5e7eb;color:#374151}.status-badge.completed{background:#d1fae5;color:#065f46}.status-badge.cancelled,.priority-badge.urgent{background:#fee2e2;color:#991b1b}.priority-badge.normal{background:#dbeafe;color:#1e40af}.priority-badge.low{background:#e5e7eb;color:#374151}.btn-edit,.btn-labor-time,.btn-add{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none}.btn-work-order,.btn-labor-time,.btn-add{background:var(--main-blue);color:#fff}.btn-work-order:hover,.btn-labor-time:hover,.btn-add:hover{background:var(--main-accent)}.quantity-display{display:flex;flex-direction:column;gap:20px}.quantity-item{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f9fafb;border-radius:12px}.quantity-label{font-weight:600;color:var(--main-blue)}.quantity-value{font-size:1.3em;font-weight:700;color:var(--main-blue)}.quantity-value.completed{color:var(--main-accent)}.progress-display{display:flex;align-items:center;gap:15px}.progress-bar-container{flex:1;height:20px;background:#e5e7eb;border-radius:10px;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,var(--main-blue) 0%,var(--main-accent) 100%);transition:width .3s ease}.progress-text{font-size:1.1em;font-weight:700;color:var(--main-blue);min-width:50px}.labor-times-list{display:flex;flex-direction:column;gap:15px}.labor-time-item{padding:20px;background:#f9fafb;border-radius:12px;cursor:pointer;transition:all .3s ease}.labor-time-item:hover{background:#f3f4f6;transform:translate(5px)}.labor-time-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.employee-name{font-weight:700;color:var(--main-blue);font-size:1.1em}.employee-number{color:#6b7280;font-size:.9em}.confirmed-badge{padding:2px 8px;border-radius:8px;font-size:.75em;font-weight:600;background:#d1fae5;color:#065f46}.labor-time-meta{display:flex;align-items:center;gap:10px;color:#6b7280;font-size:.9em;margin-bottom:8px}.work-hours{color:var(--main-accent);font-weight:600}.quantity-info{display:flex;gap:15px;font-size:.9em;color:#6b7280}.quantity-info .defective{color:#dc2626}.btn-delete{background:#fee2e2;color:#991b1b;padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none}.btn-delete:hover:not(:disabled){background:#fecaca}.btn-delete:disabled{opacity:.5;cursor:not-allowed}.transactions-table-container{overflow-x:auto;margin-top:20px}.transactions-table{width:100%;border-collapse:collapse}.transactions-table thead{background:#f9fafb}.transactions-table th{padding:12px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.transactions-table td{padding:12px;border-bottom:1px solid #e5e7eb;color:#374151}.transactions-table tbody tr:hover{background:#f9fafb}.transaction-type-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;white-space:nowrap}.transaction-type-badge.in{background:#d1fae5;color:#065f46}.transaction-type-badge.out{background:#fee2e2;color:#991b1b}.transaction-type-badge.adjust{background:#dbeafe;color:#1e40af}.transaction-type-badge.return{background:#fef3c7;color:#92400e}.transaction-type-badge.transfer{background:#e5e7eb;color:#374151}.positive{color:#065f46;font-weight:600}.negative{color:#991b1b;font-weight:600}.low-stock-badge{background-color:#ff9800;color:#fff;margin-left:8px}.low-stock-value{color:#d32f2f;font-weight:700}.status-badge.running{background:#d1fae5;color:#065f46}.status-badge.idle{background:#e5e7eb;color:#374151}.status-badge.maintenance{background:#fef3c7;color:#92400e}.status-badge.fault{background:#fee2e2;color:#991b1b}.status-badge.shutdown{background:#dbeafe;color:#1e40af}.status-badge.resolved{background:#d1fae5;color:#065f46}.status-badge.unresolved{background:#fee2e2;color:#991b1b}.usage-records-table-container,.fault-records-table-container{overflow-x:auto;margin-top:20px}.usage-records-table,.fault-records-table{width:100%;border-collapse:collapse}.usage-records-table thead,.fault-records-table thead{background:#f9fafb}.usage-records-table th,.fault-records-table th{padding:12px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.usage-records-table td,.fault-records-table td{padding:12px;border-bottom:1px solid #e5e7eb;color:#374151}.usage-records-table tbody tr:hover,.fault-records-table tbody tr:hover{background:#f9fafb}.unresolved-fault{background-color:#fef2f2}.btn-link{background:none;border:none;color:var(--main-blue);text-decoration:underline;cursor:pointer;font-size:inherit;padding:0}@media (max-width: 768px){.equipment-detail-container,.material-detail-container,.order-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}}.type-badge{background:#dbeafe;color:#1e40af;padding:6px 12px;border-radius:6px;font-size:.85em;font-weight:600}.info-value.passed{color:#065f46;font-weight:600}.info-value.failed{color:#991b1b;font-weight:600}.defect-records-table-container{overflow-x:auto;margin-top:20px}.defect-records-table{width:100%;border-collapse:collapse}.defect-records-table thead{background:#f9fafb}.defect-records-table th{padding:12px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.defect-records-table td{padding:12px;border-bottom:1px solid #e5e7eb;color:#374151}.defect-records-table tbody tr:hover{background:#f9fafb}.unresolved-defect{background-color:#fef2f2}.defect-number{font-weight:700;color:var(--main-blue)}.severity-badge.critical{background:#fee2e2;color:#991b1b}.severity-badge.major{background:#fef3c7;color:#92400e}.severity-badge.minor{background:#e5e7eb;color:#374151}.status-badge.closed{background:#d1fae5;color:#065f46}.status-badge.open{background:#fee2e2;color:#991b1b}.maintenance-plan-list-page{min-height:100vh;display:flex;flex-direction:column}.maintenance-plan-list-embedded{min-height:auto}.maintenance-plan-list-container{flex:1;max-width:1400px;margin:0 auto;padding:2rem;width:100%}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.btn-create{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-create:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.filters{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.filter-select{padding:.5rem 1rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;background:#fff;cursor:pointer;min-width:150px}.filter-select:focus{outline:none;border-color:#667eea}.maintenance-plan-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.maintenance-plan-table{width:100%;border-collapse:collapse}.maintenance-plan-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.maintenance-plan-table th{padding:1rem;text-align:left;font-weight:600;font-size:.95rem}.maintenance-plan-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s ease}.maintenance-plan-table tbody tr:hover{background-color:#f8f9fa}.maintenance-plan-table td{padding:1rem;font-size:.9rem;color:#333}.plan-number{font-weight:600;color:#667eea}.plan-name{font-weight:500}.status-badge.inactive{background:#f5f5f5;color:#757575}.maintenance-task-list-page{min-height:100vh;display:flex;flex-direction:column}.maintenance-task-list-embedded{min-height:auto}.maintenance-task-list-container{flex:1;max-width:1400px;margin:0 auto;padding:2rem;width:100%}.maintenance-task-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.maintenance-task-table{width:100%;border-collapse:collapse}.maintenance-task-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.maintenance-task-table th{padding:1rem;text-align:left;font-weight:600;font-size:.95rem}.maintenance-task-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.maintenance-task-table th.sortable:hover{background-color:#f3f4f6}.maintenance-task-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s ease}.maintenance-task-table tbody tr:hover{background-color:#f8f9fa}.maintenance-task-table td{padding:1rem;font-size:.9rem;color:#333}.task-number{font-weight:600;color:#667eea}.task-name{font-weight:500}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500;margin-right:.5rem}.status-badge.planned{background:#e3f2fd;color:#1976d2}.status-badge.scheduled{background:#fff3e0;color:#f57c00}.status-badge.overdue{background:#fce4ec;color:#c2185b}.repair-order-list-page{min-height:100vh;display:flex;flex-direction:column}.repair-order-list-embedded{min-height:auto}.repair-order-list-container{flex:1;max-width:1400px;margin:0 auto;padding:2rem;width:100%}.repair-order-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.repair-order-table{width:100%;border-collapse:collapse}.repair-order-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.repair-order-table th{padding:1rem;text-align:left;font-weight:600;font-size:.95rem}.repair-order-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s ease}.repair-order-table tbody tr:hover{background-color:#f8f9fa}.repair-order-table td{padding:1rem;font-size:.9rem;color:#333}.repair-order-number{font-weight:600;color:#667eea}.fault-description{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.equipment-code{font-weight:600;color:#667eea;font-size:.85rem}.equipment-name{font-size:.85rem;color:#666;margin-top:.25rem}.priority-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.priority-badge.urgent{background:#ffebee;color:#c62828}.priority-badge.high{background:#fff3e0;color:#e65100}.priority-badge.normal{background:#e3f2fd;color:#1976d2}.priority-badge.low{background:#f1f8e9;color:#558b2f}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-badge.pending{background:#e3f2fd;color:#1976d2}.status-badge.assigned{background:#fff3e0;color:#f57c00}.status-badge.in_progress{background:#e8f5e9;color:#388e3c}.status-badge.waiting_parts{background:#fce4ec;color:#c2185b}.status-badge.completed{background:#c8e6c9;color:#2e7d32}.status-badge.cancelled{background:#ffebee;color:#d32f2f}.btn-view,.btn-edit{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-view{background:#e3f2fd;color:#1976d2}.btn-view:hover{background:#bbdefb}.btn-edit{background:#fff3e0;color:#f57c00}.btn-edit:hover{background:#ffe0b2}.no-data{text-align:center;padding:3rem;color:#999;font-style:italic}.mes-reports-page{min-height:100vh;display:flex;flex-direction:column}.mes-reports-embedded{min-height:auto}.mes-reports-container{flex:1;max-width:1400px;margin:0 auto;padding:2rem;width:100%}.reports-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.page-title{font-size:2rem;font-weight:600;color:#1a1a1a;margin:0}.date-range{display:flex;align-items:center;gap:1rem}.date-range label{font-weight:500;color:#666}.date-input{padding:.5rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem}.btn-refresh{padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-refresh:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #eee}.tab{padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:500;color:#666;cursor:pointer;transition:all .3s ease}.tab:hover{color:#667eea;background:#f8f9fa}.tab.active{color:#667eea;border-bottom-color:#667eea;background:#f8f9fa}.report-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem}.report-section h2{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin-bottom:1.5rem}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:1.5rem;text-align:center;transition:all .3s ease}.summary-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.summary-card.highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.card-label{font-size:.9rem;font-weight:500;color:#666;margin-bottom:.5rem}.summary-card.highlight .card-label{color:#ffffffe6}.card-value{font-size:1.8rem;font-weight:700;color:#1a1a1a}.summary-card.highlight .card-value{color:#fff}.stats-table{margin-top:2rem}.stats-table h3{font-size:1.2rem;font-weight:600;color:#1a1a1a;margin-bottom:1rem}.stats-table table{width:100%;border-collapse:collapse}.stats-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stats-table th{padding:1rem;text-align:left;font-weight:600;font-size:.95rem}.stats-table tbody tr{border-bottom:1px solid #eee}.stats-table tbody tr:hover{background-color:#f8f9fa}.stats-table td{padding:1rem;font-size:.9rem;color:#333}.loading{text-align:center;padding:3rem;color:#667eea;font-size:1.1rem}.daily-report-export-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f7fa}.daily-report-container{flex:1;max-width:900px;margin:0 auto;padding:24px;width:100%}.report-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #00000014}.section-title{font-size:18px;font-weight:600;color:#1a1a2e;margin:0 0 8px;display:flex;align-items:center;gap:8px}.section-title svg{color:#4361ee}.section-desc{color:#666;font-size:14px;margin:0 0 20px}.form-row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.form-group{flex:1;min-width:150px}.form-group label{display:block;font-size:13px;font-weight:500;color:#444;margin-bottom:6px}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4361ee;box-shadow:0 0 0 3px #4361ee1a}.form-group.btn-group{flex:0 0 auto}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#4361ee,#3a56d4);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#3a56d4,#2f48c0);transform:translateY(-1px);box-shadow:0 4px 12px #4361ee4d}.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;color:#4361ee;border:1px solid #4361ee;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f0f4ff}.import-area{margin-bottom:16px}.btn-upload{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-upload:hover:not(.disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-upload.disabled{opacity:.6;cursor:not-allowed}.import-result{padding:16px;border-radius:8px;margin-top:16px}.import-result.success{background:#ecfdf5;border:1px solid #10b981}.import-result.error{background:#fef2f2;border:1px solid #ef4444}.result-message{display:flex;align-items:center;gap:8px;font-weight:500;margin-bottom:8px}.import-result.success .result-message{color:#059669}.import-result.error .result-message{color:#dc2626}.result-stats{display:flex;gap:16px;font-size:14px;color:#666}.result-errors{margin-top:12px;font-size:13px;color:#dc2626}.result-errors ul{margin:8px 0 0;padding-left:20px}.result-errors li{margin-bottom:4px}.quick-links{display:flex;gap:12px;justify-content:center;margin-top:32px}.auto-selected-indicator{display:flex;align-items:center;gap:6px;margin-top:8px;padding:4px 8px;background-color:#d4edda;color:#155724;border-radius:4px;font-size:12px;font-weight:500;animation:fadeIn .3s ease-in-out}.auto-selected-indicator svg{color:#28a745}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.spin{animation:spin 1s linear infinite}@media (max-width: 768px){.daily-report-container{padding:16px}.form-row{flex-direction:column}.form-group{width:100%}.quick-links{flex-direction:column}.quick-links button{width:100%;justify-content:center}}.test-mode-section{background:#fef3c7;border:2px solid #f59e0b;border-radius:12px;padding:16px 24px;margin-bottom:24px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.test-mode-section .test-mode-checkbox{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:2px solid #f59e0b;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;color:#92400e;transition:all .2s ease}.test-mode-section .test-mode-checkbox:hover{background:#fde68a;border-color:#d97706}.test-mode-section .test-mode-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#f59e0b;cursor:pointer}.test-mode-section .test-mode-badge{padding:2px 8px;background:#dc2626;color:#fff;border-radius:10px;font-size:11px;font-weight:600;animation:pulse 2s infinite}.test-mode-section .test-mode-hint{color:#92400e;font-size:13px}.section-title .test-badge{padding:4px 12px;background:#f5a637;color:#fff;border-radius:12px;font-size:13px;font-weight:700;margin-left:10px;letter-spacing:.5px;text-shadow:0 1px 1px rgba(0,0,0,.2);box-shadow:0 1px 3px #00000026}.order-type-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f5f5}.order-type-page .page-container{flex:1;padding:20px;max-width:1200px;margin:0 auto;width:100%}.order-type-management{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.order-type-management .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.order-type-management .page-header h1{margin:0;font-size:1.5rem;color:#333}.order-type-management .btn-add{background:#2e7d6f;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.order-type-management .btn-add:hover{background:#256b5f}.order-type-management .form-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:24px}.order-type-management .form-card h3{margin:0 0 16px;font-size:1.1rem;color:#333}.order-type-management .form-row{display:flex;gap:16px;margin-bottom:16px}.order-type-management .form-group{flex:1}.order-type-management .form-group.full-width{flex:3}.order-type-management .form-group label{display:block;margin-bottom:6px;font-size:14px;color:#555}.order-type-management .form-group input[type=text],.order-type-management .form-group input[type=number]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.order-type-management .form-group input[type=text]:focus,.order-type-management .form-group input[type=number]:focus{outline:none;border-color:#2e7d6f}.order-type-management .form-group input[type=checkbox]{margin-right:6px}.order-type-management .form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.order-type-management .btn-cancel{background:#f5f5f5;color:#666;border:1px solid #ddd;padding:8px 20px;border-radius:4px;cursor:pointer;font-size:14px}.order-type-management .btn-cancel:hover{background:#e8e8e8}.order-type-management .btn-save{background:#2e7d6f;color:#fff;border:none;padding:8px 20px;border-radius:4px;cursor:pointer;font-size:14px}.order-type-management .btn-save:hover{background:#256b5f}.order-type-management .table-container{overflow-x:auto}.order-type-management .order-type-table{width:100%;border-collapse:collapse}.order-type-management .order-type-table th,.order-type-management .order-type-table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.order-type-management .order-type-table th{background:#f5f5f5;font-weight:600;color:#333;font-size:14px}.order-type-management .order-type-table td{font-size:14px;color:#555}.order-type-management .order-type-table td.empty{text-align:center;color:#999;padding:40px}.order-type-management .order-type-table input[type=text],.order-type-management .order-type-table input[type=number]{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;width:100%;box-sizing:border-box}.order-type-management .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.order-type-management .status-badge.active{background:#e8f5e9;color:#2e7d32}.order-type-management .status-badge.inactive{background:#ffebee;color:#c62828}.order-type-management .action-buttons{display:flex;gap:8px}.order-type-management .btn-edit{background:#1976d2;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px}.order-type-management .btn-edit:hover{background:#1565c0}.order-type-management .btn-delete{background:#d32f2f;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px}.order-type-management .btn-delete:hover{background:#c62828}.order-type-management .btn-save-small{background:#2e7d6f;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px}.order-type-management .btn-save-small:hover{background:#256b5f}.order-type-management .btn-cancel-small{background:#f5f5f5;color:#666;border:1px solid #ddd;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px}.order-type-management .btn-cancel-small:hover{background:#e8e8e8}.order-type-management .loading{text-align:center;padding:40px;color:#666}@media (max-width: 768px){.order-type-management .form-row{flex-direction:column}.order-type-management .form-group.full-width{flex:1}.order-type-management .page-header{flex-direction:column;gap:12px;align-items:flex-start}}.work-area-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f5f5}.work-area-page .page-container{flex:1;padding:20px;max-width:1200px;margin:0 auto;width:100%}.work-area-management{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.work-area-management .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.work-area-management .page-header h1{margin:0;font-size:1.5rem;color:#333}.work-area-management .btn-add{background:#2e7d6f;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.work-area-management .btn-add:hover{background:#256b5f}.work-area-management .form-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:24px}.work-area-management .form-card h3{margin:0 0 16px;font-size:1.1rem;color:#333}.work-area-management .form-row{display:flex;gap:16px;margin-bottom:16px}.work-area-management .form-group{flex:1}.work-area-management .form-group.full-width{flex:3}.work-area-management .form-group label{display:block;margin-bottom:6px;font-size:14px;color:#555}.work-area-management .form-group input[type=text],.work-area-management .form-group input[type=number]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.work-area-management .form-group input[type=text]:focus,.work-area-management .form-group input[type=number]:focus{outline:none;border-color:#2e7d6f}.work-area-management .form-group input[type=checkbox]{margin-right:6px}.work-area-management .form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.work-area-management .btn-cancel{background:#f5f5f5;color:#666;border:1px solid #ddd;padding:8px 20px;border-radius:4px;cursor:pointer;font-size:14px}.work-area-management .btn-cancel:hover{background:#e8e8e8}.work-area-management .btn-save{background:#2e7d6f;color:#fff;border:none;padding:8px 20px;border-radius:4px;cursor:pointer;font-size:14px}.work-area-management .btn-save:hover{background:#256b5f}.work-area-management .table-container{overflow-x:auto}.work-area-management .work-area-table{width:100%;border-collapse:collapse}.work-area-management .work-area-table th,.work-area-management .work-area-table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.work-area-management .work-area-table th{background:#f5f5f5;font-weight:600;color:#333;font-size:14px}.work-area-management .work-area-table td{font-size:14px;color:#555}.work-area-management .work-area-table td.empty{text-align:center;color:#999;padding:40px}.work-area-management .work-area-table input[type=text],.work-area-management .work-area-table input[type=number]{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;width:100%;box-sizing:border-box}.work-area-management .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.work-area-management .status-badge.active{background:#e8f5e9;color:#2e7d32}.work-area-management .status-badge.inactive{background:#ffebee;color:#c62828}.work-area-management .action-buttons{display:flex;gap:8px}.work-area-management .btn-edit{background:#1976d2;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px}.work-area-management .btn-edit:hover{background:#1565c0}.work-area-management .btn-delete{background:#d32f2f;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px}.work-area-management .btn-delete:hover{background:#c62828}.work-area-management .btn-save-small{background:#2e7d6f;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px}.work-area-management .btn-save-small:hover{background:#256b5f}.work-area-management .btn-cancel-small{background:#f5f5f5;color:#666;border:1px solid #ddd;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px}.work-area-management .btn-cancel-small:hover{background:#e8e8e8}.work-area-management .loading{text-align:center;padding:40px;color:#666}@media (max-width: 768px){.work-area-management .form-row{flex-direction:column}.work-area-management .form-group.full-width{flex:1}.work-area-management .page-header{flex-direction:column;gap:12px;align-items:flex-start}}.card-type-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f5f5}.card-type-page .page-container{flex:1;padding:24px;max-width:1200px;margin:0 auto;width:100%}.card-type-management{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.card-type-management .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.card-type-management .page-header h1{font-size:24px;color:#333;margin:0}.card-type-management .btn-add{background:#e67e22;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.card-type-management .btn-add:hover{background:#d35400}.card-type-management .form-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:24px}.card-type-management .form-card h3{margin:0 0 16px;color:#333;font-size:18px}.card-type-management .form-row{display:flex;gap:16px;margin-bottom:16px}.card-type-management .form-group{flex:1}.card-type-management .form-group.full-width{flex:3}.card-type-management .form-group label{display:block;margin-bottom:6px;color:#555;font-size:14px}.card-type-management .form-group input[type=text],.card-type-management .form-group input[type=number]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.card-type-management .form-group input:focus{outline:none;border-color:#e67e22}.card-type-management .form-actions{display:flex;gap:12px;justify-content:flex-end}.card-type-management .btn-cancel,.card-type-management .btn-save{padding:10px 24px;border-radius:6px;cursor:pointer;font-size:14px;border:none;transition:background .2s}.card-type-management .btn-cancel{background:#e0e0e0;color:#333}.card-type-management .btn-cancel:hover{background:#d0d0d0}.card-type-management .btn-save{background:#e67e22;color:#fff}.card-type-management .btn-save:hover{background:#d35400}.card-type-management .loading{text-align:center;padding:40px;color:#666}.card-type-management .table-container{overflow-x:auto}.card-type-management .card-type-table{width:100%;border-collapse:collapse}.card-type-management .card-type-table th,.card-type-management .card-type-table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.card-type-management .card-type-table th{background:#f5f5f5;font-weight:600;color:#333}.card-type-management .card-type-table td{color:#555}.card-type-management .card-type-table td.empty{text-align:center;color:#999;padding:40px}.card-type-management .card-type-table input[type=text],.card-type-management .card-type-table input[type=number]{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;width:100%;box-sizing:border-box}.card-type-management .status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px}.card-type-management .status-badge.active{background:#e8f5e9;color:#2e7d32}.card-type-management .status-badge.inactive{background:#ffebee;color:#c62828}.card-type-management .action-buttons{display:flex;gap:8px}.card-type-management .btn-edit,.card-type-management .btn-delete,.card-type-management .btn-save-small,.card-type-management .btn-cancel-small{padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;border:none;transition:background .2s}.card-type-management .btn-edit{background:#e3f2fd;color:#1976d2}.card-type-management .btn-edit:hover{background:#bbdefb}.card-type-management .btn-delete{background:#ffebee;color:#c62828}.card-type-management .btn-delete:hover{background:#ffcdd2}.card-type-management .btn-save-small{background:#e8f5e9;color:#2e7d32}.card-type-management .btn-save-small:hover{background:#c8e6c9}.card-type-management .btn-cancel-small{background:#f5f5f5;color:#666}.card-type-management .btn-cancel-small:hover{background:#e0e0e0}.work-group-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f5f5}.work-group-page .page-container{flex:1;padding:24px;max-width:1200px;margin:0 auto;width:100%}.work-group-management{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.work-group-management .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.work-group-management .page-header h1{font-size:24px;color:#333;margin:0}.work-group-management .page-header-actions{display:flex;align-items:center;gap:12px}.work-group-management .btn-barcode-pdf{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:#0d6efd;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.work-group-management .btn-barcode-pdf:hover:not(:disabled){background:#0b5ed7}.work-group-management .btn-barcode-pdf:disabled{opacity:.6;cursor:not-allowed}.work-group-management .btn-add{background:#e67e22;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.work-group-management .btn-add:hover{background:#d35400}.work-group-management .form-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:24px}.work-group-management .form-card h3{margin:0 0 16px;color:#333;font-size:18px}.work-group-management .form-row{display:flex;gap:16px;margin-bottom:16px}.work-group-management .form-group{flex:1}.work-group-management .form-group.full-width{flex:3}.work-group-management .form-group label{display:block;margin-bottom:6px;color:#555;font-size:14px}.work-group-management .form-group input[type=text],.work-group-management .form-group input[type=number]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.work-group-management .form-group input:focus{outline:none;border-color:#e67e22}.work-group-management .form-actions{display:flex;gap:12px;justify-content:flex-end}.work-group-management .btn-cancel,.work-group-management .btn-save{padding:10px 24px;border-radius:6px;cursor:pointer;font-size:14px;border:none;transition:background .2s}.work-group-management .btn-cancel{background:#e0e0e0;color:#333}.work-group-management .btn-cancel:hover{background:#d0d0d0}.work-group-management .btn-save{background:#e67e22;color:#fff}.work-group-management .btn-save:hover{background:#d35400}.work-group-management .loading{text-align:center;padding:40px;color:#666}.work-group-management .table-container{overflow-x:auto}.work-group-management .work-group-table{width:100%;border-collapse:collapse}.work-group-management .work-group-table th,.work-group-management .work-group-table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.work-group-management .work-group-table th{background:#f5f5f5;font-weight:600;color:#333}.work-group-management .work-group-table td{color:#555}.work-group-management .work-group-table td.empty{text-align:center;color:#999;padding:40px}.work-group-management .work-group-table input[type=text],.work-group-management .work-group-table input[type=number]{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;width:100%;box-sizing:border-box}.work-group-management .status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px}.work-group-management .status-badge.active{background:#e8f5e9;color:#2e7d32}.work-group-management .status-badge.inactive{background:#ffebee;color:#c62828}.work-group-management .action-buttons{display:flex;gap:8px}.work-group-management .btn-edit,.work-group-management .btn-delete,.work-group-management .btn-save-small,.work-group-management .btn-cancel-small{padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;border:none;transition:background .2s}.work-group-management .btn-edit{background:#e3f2fd;color:#1976d2}.work-group-management .btn-edit:hover{background:#bbdefb}.work-group-management .btn-delete{background:#ffebee;color:#c62828}.work-group-management .btn-delete:hover{background:#ffcdd2}.work-group-management .btn-save-small{background:#e8f5e9;color:#2e7d32}.work-group-management .btn-save-small:hover{background:#c8e6c9}.work-group-management .btn-cancel-small{background:#f5f5f5;color:#666}.work-group-management .btn-cancel-small:hover{background:#e0e0e0}.pdf-lang-select{padding:8px 12px;border:1px solid var(--gray-border, #d1d5db);border-radius:8px;font-size:.9rem;background:#fff;color:var(--main-blue, #18454c);min-width:120px;cursor:pointer}.pdf-lang-select:focus{outline:none;border-color:var(--main-blue, #18454c);box-shadow:0 0 0 2px #18454c26}.pdf-lang-modal-body{display:flex;flex-direction:column;gap:20px}.pdf-lang-modal-body .pdf-lang-select{width:100%;min-width:unset}.pdf-lang-modal-actions{display:flex;justify-content:flex-end;gap:10px}.pdf-lang-modal-actions .btn-primary{padding:10px 20px;background:#0d6efd;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.pdf-lang-modal-actions .btn-primary:hover:not(:disabled){background:#0b5ed7}.pdf-lang-modal-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed}.barcode-clock-in-page{min-height:100vh;background:#f5f7fa}.barcode-clock-in-page.kiosk-mode{min-height:100vh;height:100vh;overflow:hidden;background:#1f2937;display:flex;flex-direction:column}.barcode-clock-in-container{max-width:1200px;margin:0 auto;padding:20px}.barcode-clock-in-container.kiosk-container{max-width:100%;width:100%;height:100%;padding:40px;display:flex;align-items:center;justify-content:center}.clock-in-card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}.kiosk-mode .clock-in-card{width:100%;max-width:1600px;padding:60px;border-radius:20px;box-shadow:0 8px 32px #0000004d}.card-title{font-size:24px;font-weight:600;color:#1f2937;margin-bottom:30px;text-align:center}.kiosk-mode .card-title{font-size:48px;margin-bottom:50px;color:#1f2937}.message{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.kiosk-mode .message{padding:24px 32px;border-radius:12px;margin-bottom:30px;font-size:24px}.kiosk-mode .message svg{width:32px;height:32px}.message.success{background:#d1fae5;color:#065f46;border:1px solid #10b981}.message.error{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.message.info{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.form-section{margin-bottom:24px}.kiosk-mode .form-section{margin-bottom:40px}.barcode-input-wrap{position:relative;width:100%}.barcode-input-with-icon{padding-right:56px}.barcode-scan-button{position:absolute;top:50%;right:10px;transform:translateY(-50%);width:40px;height:40px;border-radius:10px;border:2px solid #e5e7eb;background:#fff;color:#3b82f6;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.barcode-scan-button:hover:not(:disabled){border-color:#3b82f6;background:#eff6ff}.barcode-scan-button:disabled{opacity:.5;cursor:not-allowed}.barcode-scan-button svg{width:18px;height:18px}.kiosk-mode .barcode-input-with-icon{padding-right:88px}.kiosk-mode .barcode-scan-button{width:64px;height:64px;border-radius:14px;border-width:3px;right:12px}.kiosk-mode .barcode-scan-button svg{width:28px;height:28px}.scanner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:16px;z-index:100000}.scanner-modal{width:min(680px,96vw);background:#111827;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 60px #00000073}.scanner-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;color:#fff;background:#111827e6}.scanner-title{font-weight:700;font-size:16px}.scanner-close{width:36px;height:36px;border:none;border-radius:10px;background:#ffffff1a;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.scanner-close:hover{background:#ffffff2e}.scanner-body{padding:14px}.scanner-error{display:flex;align-items:center;gap:10px;padding:14px;border-radius:12px;background:#ef444426;color:#fecaca;border:1px solid rgba(239,68,68,.25)}.scanner-preview{position:relative;border-radius:12px;overflow:hidden;background:#000}.scanner-video{width:100%;height:min(60vh,520px);object-fit:cover;display:block}.scanner-frame{position:absolute;top:16%;right:16%;bottom:16%;left:16%;border:2px solid rgba(255,255,255,.7);border-radius:16px;box-shadow:0 0 0 999px #00000040 inset;pointer-events:none}.scanner-hint{position:absolute;left:12px;right:12px;bottom:12px;color:#ffffffeb;font-size:14px;text-align:center;padding:8px 10px;background:#00000059;border-radius:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.form-label{display:flex;align-items:center;gap:8px;font-weight:600;color:#374151;margin-bottom:8px;font-size:14px}.kiosk-mode .form-label{font-size:28px;margin-bottom:16px;gap:12px}.kiosk-mode .form-label svg{width:32px;height:32px}.barcode-input,.form-select{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;transition:border-color .2s}.kiosk-mode .barcode-input,.kiosk-mode .form-select{padding:20px 24px;font-size:24px;border-width:3px;border-radius:12px}.barcode-input:focus,.form-select:focus{outline:none;border-color:#3b82f6}.barcode-input:disabled,.form-select:disabled{background:#f3f4f6;cursor:not-allowed}.info-display{margin-top:12px;padding:12px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.kiosk-mode .info-display{margin-top:20px;padding:24px;border-radius:12px;border-width:2px}.info-list{margin-top:12px;padding:0!important;margin-bottom:0;list-style:none;background:none!important;border:none!important;border-radius:0!important;box-shadow:none!important;display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px}.kiosk-mode .info-list{margin-top:20px;gap:12px}.info-table{margin-top:12px;width:100%;border-collapse:collapse;background:none!important;border:none!important}.kiosk-mode .info-table{margin-top:20px}.info-table td{padding:0;border:none!important;background:none!important;font-size:18px;color:#2563eb;white-space:nowrap;vertical-align:middle;font-weight:500}.kiosk-mode .info-table td{font-size:32px}.info-table td strong{color:#1e40af;margin-right:8px;font-weight:700}.info-separator-cell{padding:0 12px!important;color:#9ca3af;text-align:center;width:auto;font-weight:600}.kiosk-mode .info-separator-cell{padding:0 16px!important;font-size:32px}.info-item{margin-bottom:8px;font-size:14px;color:#4b5563}.kiosk-mode .info-item{margin-bottom:16px;font-size:24px}.info-item:last-child{margin-bottom:0}.info-list .info-item{margin-bottom:0;padding:0!important;background:none!important;border:none!important;border-radius:0!important;box-shadow:none!important;display:inline-flex;align-items:center}.info-item strong{color:#1f2937;margin-right:8px}.info-item-inline{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:0!important}.kiosk-mode .info-item-inline{gap:12px}.info-separator{color:#d1d5db;margin:0 4px}.kiosk-mode .info-separator{margin:0 8px}.time-display{margin:24px 0;padding:20px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.time-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.time-item:last-child{margin-bottom:0}.time-label{font-size:12px;color:#6b7280;margin-bottom:4px}.time-value{font-size:18px;font-weight:600;color:#1f2937}.kiosk-mode .time-value{font-size:36px}.card-type{margin-top:4px;font-size:14px;color:#3b82f6;font-weight:500}.action-buttons{display:flex;gap:16px;margin-top:30px}.btn-start,.btn-end{flex:1;padding:16px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.kiosk-mode .btn-start,.kiosk-mode .btn-end{padding:32px 48px;border-radius:16px;font-size:32px;gap:16px;min-height:100px}.kiosk-mode .btn-start svg,.kiosk-mode .btn-end svg{width:40px;height:40px}.btn-start{background:#10b981;color:#fff}.btn-start:hover:not(:disabled){background:#059669;transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-end{background:#ef4444;color:#fff}.btn-end:hover:not(:disabled){background:#dc2626;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-start:disabled,.btn-end:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed;transform:none}.kiosk-header{text-align:center;margin-bottom:50px;padding-bottom:30px;border-bottom:3px solid #e5e7eb}.kiosk-title{font-size:56px;font-weight:700;color:#1f2937;margin-bottom:16px}.kiosk-subtitle{font-size:28px;color:#6b7280;font-weight:500}.kiosk-mode .time-display{padding:40px;border-radius:16px;border-width:3px}.kiosk-mode .time-label,.kiosk-mode .card-type{font-size:20px}.form-header-actions{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-bottom:20px}.kiosk-mode .form-header-actions{margin-bottom:30px}.test-mode-checkbox{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fef3c7;border:2px solid #f59e0b;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:#92400e;transition:all .2s ease}.test-mode-checkbox:hover{background:#fde68a;border-color:#d97706}.test-mode-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#f59e0b;cursor:pointer}.test-mode-checkbox .test-mode-badge{padding:2px 8px;background:#dc2626;color:#fff;border-radius:10px;font-size:11px;font-weight:600;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.test-mode-checkbox .test-mode-loading{font-size:12px;color:#9ca3af}.test-mode-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fef3c7;border:2px solid #f59e0b;border-radius:8px;font-size:13px;font-weight:500;color:#92400e}.test-mode-indicator svg{color:#f59e0b}.btn-next-employee{display:flex;align-items:center;gap:8px;padding:10px 16px;border:2px solid #3b82f6;border-radius:8px;background:#eff6ff;color:#2563eb;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-next-employee:hover:not(:disabled){background:#dbeafe;border-color:#2563eb;color:#1d4ed8}.btn-next-employee:disabled{opacity:.5;cursor:not-allowed}.kiosk-mode .btn-next-employee{padding:16px 24px;border-radius:12px;font-size:24px;gap:12px}.kiosk-mode .btn-next-employee svg{width:24px;height:24px}.keep-order-hint{margin-top:8px;font-size:13px;color:#6b7280}.selected-employees-list{margin-top:12px;border:1px solid #e5e7eb;border-radius:8px;padding:12px;background:#f9fafb}.selected-employees-header{font-size:13px;font-weight:600;color:#374151;margin-bottom:8px}.selected-employees-ul{list-style:none;margin:0;padding:0}.selected-employee-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;background:#fff;margin-bottom:4px;font-size:14px}.selected-employee-item .emp-number{color:#6b7280;font-size:13px}.selected-employee-item .btn-remove-employee{margin-left:auto;background:none;border:none;color:#dc3545;cursor:pointer;padding:2px 6px;border-radius:4px}.selected-employee-item .btn-remove-employee:hover{background:#fef2f2}.btn-clear{display:flex;align-items:center;gap:8px;padding:10px 16px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.kiosk-mode .btn-clear{padding:16px 24px;border-radius:12px;font-size:24px;gap:12px;border-width:3px}.btn-clear:hover:not(:disabled){border-color:#ef4444;color:#ef4444;background:#fef2f2}.btn-clear:disabled{opacity:.5;cursor:not-allowed}.btn-clear svg{width:14px;height:14px}.kiosk-mode .btn-clear svg{width:24px;height:24px}.ongoing-records-section{margin-top:40px;background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.kiosk-mode .ongoing-records-section{margin-top:60px;padding:40px;border-radius:20px}.ongoing-records-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.ongoing-records-title{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:600;color:#1f2937;margin:0}.kiosk-mode .ongoing-records-title{font-size:32px;gap:16px}.btn-refresh{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s}.kiosk-mode .btn-refresh{width:48px;height:48px;border-radius:12px}.btn-refresh:hover:not(:disabled){border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.btn-refresh:disabled{opacity:.5;cursor:not-allowed}.btn-refresh svg{width:18px;height:18px}.kiosk-mode .btn-refresh svg{width:24px;height:24px}.ongoing-records-loading,.ongoing-records-empty{text-align:center;padding:40px 20px;color:#6b7280;font-size:14px}.kiosk-mode .ongoing-records-loading,.kiosk-mode .ongoing-records-empty{padding:60px 20px;font-size:24px}.ongoing-records-list{display:flex;flex-direction:column;gap:12px}.kiosk-mode .ongoing-records-list{gap:20px}.ongoing-record-item{display:flex;align-items:center;gap:16px;padding:16px;border:2px solid #e5e7eb;border-radius:8px;background:#f9fafb;cursor:pointer;transition:all .2s}.kiosk-mode .ongoing-record-item{padding:24px;border-radius:12px;border-width:3px;gap:24px}.ongoing-record-item:hover{border-color:#3b82f6;background:#eff6ff;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f626}.ongoing-record-item-optimistic{cursor:default;opacity:.92}.ongoing-record-item-optimistic:hover{transform:none;border-color:#e5e7eb;background:#f9fafb}.ongoing-record-saving-badge{font-size:12px;color:#6b7280;margin-left:8px}.ongoing-record-content{flex:1;display:flex;flex-direction:column;gap:8px}.kiosk-mode .ongoing-record-content{gap:12px}.ongoing-record-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.kiosk-mode .ongoing-record-header{gap:16px}.ongoing-record-employee,.ongoing-record-order{display:flex;align-items:center;gap:8px;font-size:14px;color:#1f2937}.kiosk-mode .ongoing-record-employee,.kiosk-mode .ongoing-record-order{font-size:24px;gap:12px}.ongoing-record-employee svg,.ongoing-record-order svg{width:16px;height:16px;color:#6b7280}.kiosk-mode .ongoing-record-employee svg,.kiosk-mode .ongoing-record-order svg{width:24px;height:24px}.employee-name,.order-number{font-weight:600;color:#1f2937}.employee-number,.product-name{color:#6b7280;font-size:12px}.kiosk-mode .employee-number,.kiosk-mode .product-name{font-size:20px}.ongoing-record-orders{display:flex;flex-direction:column;gap:4px;width:100%;padding-left:24px}.kiosk-mode .ongoing-record-orders{padding-left:36px}.orders-count-badge{display:inline-flex;align-items:center;padding:3px 10px;background:#3b82f6;color:#fff;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}.kiosk-mode .orders-count-badge{padding:6px 16px;font-size:18px;border-radius:16px}.orders-list{display:flex;flex-direction:column;gap:4px;width:100%}.orders-list .ongoing-record-order{display:flex;align-items:center;gap:6px;padding:4px 0;width:100%}.kiosk-mode .orders-list .ongoing-record-order{padding:6px 0;gap:8px}.orders-list .ongoing-record-order svg{flex-shrink:0}.orders-list .ongoing-record-order .order-number{flex-shrink:0;min-width:120px}.kiosk-mode .orders-list .ongoing-record-order .order-number{min-width:200px}.orders-list .ongoing-record-order .product-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders-list .ongoing-record-order .work-center{display:flex;align-items:center;gap:4px;color:#059669;font-size:12px;font-weight:500;background-color:#0596691a;padding:2px 8px;border-radius:4px;white-space:nowrap}.kiosk-mode .orders-list .ongoing-record-order .work-center{font-size:18px;padding:4px 12px}.ongoing-record-info{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-left:auto}.kiosk-mode .ongoing-record-info{gap:16px}.ongoing-record-time,.ongoing-record-group,.ongoing-record-card-type{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280;padding:4px 8px;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.kiosk-mode .ongoing-record-time,.kiosk-mode .ongoing-record-group,.kiosk-mode .ongoing-record-card-type{font-size:18px;padding:8px 12px;border-radius:8px;gap:8px}.ongoing-record-time svg,.ongoing-record-group svg,.ongoing-record-card-type svg{width:12px;height:12px}.kiosk-mode .ongoing-record-time svg,.kiosk-mode .ongoing-record-group svg,.kiosk-mode .ongoing-record-card-type svg{width:18px;height:18px}.ongoing-record-action{display:flex;align-items:center;color:#9ca3af}.ongoing-record-action svg{width:20px;height:20px}.kiosk-mode .ongoing-record-action svg{width:28px;height:28px}.unfinished-labor-times-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.unfinished-labor-times-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.unfinished-labor-times-card{background:#fff;border-radius:16px;padding:25px 30px;box-shadow:0 2px 10px #0000000d}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;flex-wrap:wrap;gap:20px;padding-bottom:20px;border-bottom:2px solid #f3f4f6}.card-title{font-size:1.5em;font-weight:700;color:var(--main-blue, #18454c);margin:0;letter-spacing:.3px}.header-actions{display:flex;gap:12px;align-items:center}.date-input{padding:10px 15px;border:2px solid var(--gray-border, #e5e7eb);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue, #18454c);transition:all .3s ease;min-width:150px}.date-input:focus{outline:none;border-color:var(--main-accent, #ff812b);box-shadow:0 0 0 4px #18454c1a}.message{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:6px;margin-bottom:20px}.message.success{background-color:#d1fae5;color:#065f46}.message.error{background-color:#fee2e2;color:#991b1b}.message.info{background-color:#dbeafe;color:#1e40af}.empty-state{text-align:center;padding:80px 20px;background:#fff;border-radius:20px;box-shadow:0 4px 20px #18454c14;border:2px dashed #e5e7eb;color:#6b7280}.empty-state svg{font-size:4em;color:#10b981;margin-bottom:20px}.labor-times-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 2px 10px #0000000d;overflow-x:auto}.labor-times-table{width:100%;border-collapse:collapse}.labor-times-table thead{background:#f9fafb}.labor-times-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.labor-times-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151}.labor-times-table tbody tr:hover{background:#f9fafb}.order-number{font-weight:700;color:var(--main-blue);position:relative;display:inline-block}.order-number:hover:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:6px 10px;border-radius:4px;font-size:12px;white-space:nowrap;z-index:1000;margin-bottom:4px}.order-number:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#000c;margin-bottom:-4px}.btn-edit{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;border-radius:8px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.btn-edit:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-edit:hover:not(:disabled){background:linear-gradient(135deg,var(--main-accent, #ff812b) 0%,#ff8c42 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ff812b4d}.btn-edit:disabled{background-color:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.edit-form{padding:20px 0}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#374151}.form-group input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.form-group input:disabled{background-color:#f3f4f6;color:#6b7280}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.btn-cancel{padding:10px 20px;background-color:#f3f4f6;color:#374151;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.btn-cancel:hover:not(:disabled){background-color:#e5e7eb}.btn-save{padding:10px 20px;background-color:#10b981;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.btn-save:hover:not(:disabled){background-color:#059669}.btn-save:disabled{background-color:#9ca3af;cursor:not-allowed}.mes-management-page{padding:30px;background:#f9fafb;min-height:calc(100vh - 80px)}.mes-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--gray-border);flex-wrap:wrap}.mes-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.mes-tab:hover{color:var(--main-blue);background:#1478860d}.mes-tab.active{color:var(--main-blue);border-bottom-color:var(--main-accent)}.mes-statistics-view{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--main-blue)}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.8em;flex-shrink:0}.stat-icon.orders{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.stat-icon.in-progress{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.stat-icon.completed{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.stat-icon.labor-times{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.stat-icon.pending{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.stat-label{font-size:.9em;color:#6b7280;margin-bottom:8px;font-weight:500}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;margin-top:30px}.chart-card{background:#f9fafb;border-radius:12px;padding:24px;border:2px solid var(--gray-border)}.chart-title{font-size:1.2em;font-weight:700;color:var(--main-blue);margin:0 0 20px}.chart-placeholder{height:200px;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.95em}.mes-content-view{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a;min-height:500px}.coming-soon{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#9ca3af;text-align:center}.coming-soon svg{font-size:4em;margin-bottom:20px;opacity:.5}.coming-soon h3{font-size:1.5em;color:var(--main-blue);margin:0 0 10px}.coming-soon p{font-size:1.1em;margin:0}.loading,.error{text-align:center;padding:60px 20px;font-size:1.1em;color:#6b7280}.error{color:#ef4444}.material-management-admin-page{padding:30px;background:linear-gradient(135deg,#f0f7ff,#e8f4ff,#def);min-height:100vh}.admin-tabs{display:flex;flex-wrap:nowrap;gap:4px;margin-bottom:30px;background:#fff;border-radius:12px;padding:6px;box-shadow:0 2px 8px #18454c14;overflow-x:auto}.tab-button{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:none;background:transparent;border-radius:6px;font-size:.8em;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex:1;min-width:0}.tab-button svg{font-size:.9em;flex-shrink:0}.tab-button:hover{background:#f3f4f6;color:var(--main-blue)}.tab-button.active{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;box-shadow:0 2px 6px #18454c33}.admin-content{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 12px #18454c14;min-height:500px}.overview-view{display:flex;flex-direction:column;gap:30px}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.stat-card{display:flex;align-items:center;gap:20px;padding:25px;background:linear-gradient(135deg,#fff,#f9fafb);border-radius:12px;border:2px solid #e5e7eb;transition:all .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--main-blue) 0%,var(--main-accent) 100%);transition:width .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #18454c26;border-color:var(--main-blue)}.stat-card:hover:before{width:100%;opacity:.05}.stat-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;font-size:1.5em;flex-shrink:0;box-shadow:0 4px 12px #18454c33}.stat-card.purchase-orders .stat-icon{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-card.purchase-receipts .stat-icon{background:linear-gradient(135deg,#10b981,#059669)}.stat-card.sales-orders .stat-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-card.sales-deliveries .stat-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-card.inventory-counts .stat-icon{background:linear-gradient(135deg,#ec4899,#db2777)}.stat-value{font-size:2.2em;font-weight:800;color:var(--main-blue);line-height:1;margin-bottom:4px}.stat-sublabel{font-size:.85em;color:#9ca3af;margin-top:4px}.stat-action{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:none;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:8px;color:var(--main-blue);cursor:pointer;transition:all .3s ease;flex-shrink:0}.stat-action:hover{background:linear-gradient(135deg,var(--main-blue) 0%,#2c5f7a 100%);color:#fff;transform:translate(4px)}.quick-actions{margin-top:20px}.section-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin-bottom:20px}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.action-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;transition:all .3s ease;font-size:.95em;font-weight:600;color:var(--main-blue)}.action-card:hover{border-color:var(--main-accent);background:linear-gradient(135deg,#fff5f0,#ffe8d6);transform:translateY(-4px);box-shadow:0 8px 24px #ff812b33}.action-card svg{font-size:2em;color:var(--main-accent)}.list-view{width:100%}.list-view.embedded{margin-top:0}.list-view.embedded>*{background:transparent;box-shadow:none;padding:0}.list-view.embedded .purchase-order-list-page,.list-view.embedded .purchase-receipt-list-page,.list-view.embedded .sales-order-list-page,.list-view.embedded .sales-delivery-list-page,.list-view.embedded .inventory-count-list-page{background:transparent;min-height:auto}.list-view.embedded .purchase-order-list-container,.list-view.embedded .purchase-receipt-list-container,.list-view.embedded .sales-order-list-container,.list-view.embedded .sales-delivery-list-container,.list-view.embedded .inventory-count-list-container{max-width:100%;margin:0;padding:0}.list-view.embedded .list-header{margin-bottom:20px}.list-view.embedded .page-title{display:none}.list-view.embedded .purchase-order-list-page>nav:first-child,.list-view.embedded .purchase-order-list-page>footer:last-child,.list-view.embedded .purchase-receipt-list-page>nav:first-child,.list-view.embedded .purchase-receipt-list-page>footer:last-child,.list-view.embedded .sales-order-list-page>nav:first-child,.list-view.embedded .sales-order-list-page>footer:last-child,.list-view.embedded .sales-delivery-list-page>nav:first-child,.list-view.embedded .sales-delivery-list-page>footer:last-child,.list-view.embedded .inventory-count-list-page>nav:first-child,.list-view.embedded .inventory-count-list-page>footer:last-child,.list-view.embedded .bom-list-page>nav:first-child,.list-view.embedded .bom-list-page>footer:last-child,.list-view.embedded .material-transaction-list-page>nav:first-child,.list-view.embedded .material-transaction-list-page>footer:last-child{display:none}@media (max-width: 768px){.material-management-admin-page{padding:15px}.admin-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:2px;padding:4px}.tab-button{padding:6px 8px;font-size:.7em;flex:0 0 auto;min-width:fit-content}.tab-button svg{display:none}.statistics-grid,.actions-grid{grid-template-columns:1fr}}.mps-dashboard{min-height:100vh;display:flex;flex-direction:column}.mps-dashboard.embedded{min-height:auto}.dashboard-content{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.mps-dashboard.embedded .dashboard-content{padding:0;max-width:100%}.dashboard-header{margin-bottom:2rem}.mps-dashboard.embedded .dashboard-header{display:none}.dashboard-header h1{font-size:2rem;font-weight:600;margin-bottom:.5rem}.dashboard-header p{color:#666;font-size:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;cursor:pointer;transition:transform .2s,box-shadow .2s;display:flex;align-items:center;gap:1rem}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.stat-icon{font-size:2rem;color:#4a90e2}.stat-content h3{font-size:2rem;font-weight:600;margin:0}.stat-content p{color:#666;margin:.25rem 0 0;font-size:.9rem}.recent-section{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.recent-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.schedule-list{display:flex;flex-direction:column;gap:1rem}.schedule-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;transition:background-color .2s}.schedule-item:hover{background-color:#f5f5f5}.schedule-info h3{font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.schedule-info p{color:#666;font-size:.9rem;margin:0}.loading{text-align:center;padding:2rem;color:#666}.quick-actions-section{margin-bottom:2rem}.section-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:#333}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.action-card{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a;cursor:pointer;transition:transform .2s,box-shadow .2s;text-align:center}.action-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #00000026}.action-icon{font-size:3rem;color:#f97316;margin-bottom:1rem}.action-card h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:#333}.action-card p{color:#666;font-size:.95rem;margin:0;line-height:1.5}.mps-schedule-list{min-height:100vh;display:flex;flex-direction:column}.mps-schedule-list.embedded{min-height:auto}.mps-schedule-list.embedded .content{padding:0;max-width:100%}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{font-size:2rem;font-weight:600}.search-input,.status-select{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.schedule-table{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.schedule-table table{width:100%;border-collapse:collapse}.schedule-table thead{background-color:#f5f5f5}.schedule-table th,.schedule-table td{padding:1rem;text-align:left;border-bottom:1px solid #e0e0e0}.schedule-table tbody tr:hover{background-color:#f9f9f9}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-draft{background-color:#e0e0e0;color:#666}.status-planned{background-color:#fff3cd;color:#856404}.status-approved{background-color:#d1ecf1;color:#0c5460}.status-released{background-color:#d4edda;color:#155724}.status-in_progress{background-color:#cce5ff;color:#004085}.status-completed{background-color:#d4edda;color:#155724}.status-cancelled{background-color:#f8d7da;color:#721c24}.btn-link.text-success{color:#28a745}.btn-link.text-success:hover{color:#218838}.btn-link.text-primary{color:#007bff}.btn-link.text-primary:hover{color:#0056b3}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.form-group select{background-color:#fff;cursor:pointer}.mps-schedule-detail{min-height:100vh;display:flex;flex-direction:column}.page-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.btn-back{padding:.5rem 1rem;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:1rem}.btn-back:hover{background-color:#e0e0e0}.schedule-info{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.schedule-info p{margin:.5rem 0}.mps-schedule-form{min-height:100vh;display:flex;flex-direction:column}.content{flex:1;padding:2rem;max-width:800px;margin:0 auto;width:100%}.content h1{font-size:2rem;font-weight:600;margin-bottom:2rem}form{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.form-group{margin-bottom:1.5rem}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.form-actions button{padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.form-actions button[type=submit]{background-color:#4a90e2;color:#fff}.form-actions button[type=submit]:hover{background-color:#357abd}.form-actions button[type=button]{background-color:#f5f5f5;color:#666}.form-actions button[type=button]:hover{background-color:#e0e0e0}.demand-forecast-list{min-height:100vh;display:flex;flex-direction:column}.demand-forecast-list.embedded{min-height:auto}.demand-forecast-list.embedded .content{padding:0;max-width:100%}.forecast-table{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.forecast-table table{width:100%;border-collapse:collapse}.forecast-table thead{background-color:#f5f5f5}.forecast-table th,.forecast-table td{padding:1rem;text-align:left;border-bottom:1px solid #e0e0e0}.forecast-table tbody tr:hover{background-color:#f9f9f9}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.capacity-plan-list{min-height:100vh;display:flex;flex-direction:column}.capacity-plan-list.embedded{min-height:auto}.capacity-plan-list.embedded .content{padding:0;max-width:100%}.page-header-embedded{display:flex;justify-content:flex-end;align-items:center;margin-bottom:1.5rem}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#4a90e2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s}.btn-primary:hover{background-color:#357abd}.filters{display:flex;gap:1rem;margin-bottom:1.5rem}.search-input,.date-input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.search-input{flex:1}.plan-table{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.plan-table table{width:100%;border-collapse:collapse}.plan-table thead{background-color:#f5f5f5}.plan-table th,.plan-table td{padding:1rem;text-align:left;border-bottom:1px solid #e0e0e0}.plan-table tbody tr:hover{background-color:#f9f9f9}.action-buttons{display:flex;gap:.5rem}.btn-link{background:none;border:none;color:#4a90e2;cursor:pointer;text-decoration:underline;font-size:1rem}.btn-link:hover{color:#357abd}.btn-link.text-danger{color:#dc3545}.btn-link.text-danger:hover{color:#c82333}.loading,.no-data{text-align:center;padding:2rem;color:#666}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:700px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#333}.btn-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:.25rem;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:4px;transition:background-color .2s}.btn-close:hover{color:#333;background-color:#f5f5f5}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.btn-secondary{padding:.75rem 1.5rem;background-color:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.mps-management{min-height:100vh;display:flex;flex-direction:column}.content{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.content h1{font-size:2rem;font-weight:600;margin-bottom:1rem}.mps-management-dashboard{padding:1.5rem}.mps-management-dashboard .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.mps-management-dashboard .stat-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s}.mps-management-dashboard .stat-card:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.mps-management-dashboard .stat-icon{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#f5f5f5;color:#666}.mps-management-dashboard .stat-content h3{font-size:1.5rem;font-weight:600;margin:0;color:#333}.mps-management-dashboard .stat-content p{margin:.25rem 0 0;color:#666;font-size:.9rem}.mps-management-dashboard .recent-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.mps-management-dashboard .recent-section h2{font-size:1.25rem;font-weight:600;margin:0 0 1rem;color:#333}.mps-management-dashboard .schedule-list{display:flex;flex-direction:column;gap:1rem}.mps-management-dashboard .schedule-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:all .2s}.mps-management-dashboard .schedule-item:hover{background:#f5f5f5}.mps-management-dashboard .schedule-info h3{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:#333}.mps-management-dashboard .schedule-info p{margin:0;color:#666;font-size:.9rem}.mps-management-dashboard .status-badge{padding:.25rem .75rem;border-radius:4px;font-size:.85rem;font-weight:500}.mps-management-dashboard .loading{text-align:center;padding:2rem;color:#666}.it-repair-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.it-repair-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.btn-create{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--main-blue) 0%,#0d5d6b 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95em;white-space:nowrap}.btn-create:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.stats-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid var(--gray-border);display:flex;align-items:center;gap:15px;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;transition:width .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f}.stat-card:hover:before{width:100%;opacity:.1}.stat-total:before{background:var(--main-blue)}.stat-pending:before{background:#f59e0b}.stat-progress:before{background:#3b82f6}.stat-resolved:before{background:#10b981}.stat-urgent:before{background:#ef4444}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-total .stat-icon{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.stat-pending .stat-icon{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.stat-progress .stat-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.stat-resolved .stat-icon{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.stat-urgent .stat-icon{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.stat-value{font-size:2em;font-weight:700;color:var(--main-blue);line-height:1;margin-bottom:5px}.stat-label{font-size:.9em;color:#6b7280;font-weight:500}.repairs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px}.repairs-list{display:flex;flex-direction:column;gap:15px}.repair-card,.repair-list-item{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.repair-card:hover,.repair-list-item:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f;border-color:var(--main-blue)}.repair-list-item{display:flex;align-items:center;gap:20px}.repair-list-item .card-header{flex:0 0 200px;margin-bottom:0}.repair-list-item .repair-title{flex:1;margin:0;font-size:1.1em}.repair-list-item .repair-description{flex:2;margin:0;max-width:500px}.repair-list-item .card-meta{flex:1;margin:0;background:transparent;padding:0;flex-direction:row;gap:15px}.repair-list-item .card-footer{flex:0 0 150px;padding-top:0;border-top:none;flex-direction:column;align-items:flex-end;gap:8px}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;gap:15px}.ticket-info{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:1}.priority-badge{padding:4px 10px;border-radius:12px;font-size:.75em;font-weight:600;white-space:nowrap}.priority-urgent{background:#fee2e2;color:#991b1b}.priority-high{background:#fef3c7;color:#92400e}.priority-normal{background:var(--main-blue-light);color:var(--main-blue)}.priority-low{background:#f3f4f6;color:#6b7280}.overdue-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#fee2e2;color:#991b1b;border-radius:12px;font-size:.75em;font-weight:600}.status-badge{padding:6px 12px;border-radius:12px;font-size:.8em;font-weight:600;white-space:nowrap}.status-assigned{background:#ddd6fe;color:#7c3aed}.status-in-progress{background:#dbeafe;color:#1e40af}.status-resolved{background:#d1fae5;color:#059669}.status-closed{background:#f3f4f6;color:#6b7280}.status-cancelled{background:#fee2e2;color:#991b1b}.repair-title{font-size:1.2em;font-weight:600;color:var(--main-blue);margin:0 0 10px;line-height:1.4}.repair-description{color:#6b7280;font-size:.9em;line-height:1.6;margin:0 0 15px}.card-meta{margin:15px 0;padding:12px;background:#f9fafb;border-radius:8px;display:flex;flex-direction:column;gap:8px}.meta-item{display:flex;align-items:center;gap:8px;font-size:.9em}.meta-item svg{color:#9ca3af;width:16px;flex-shrink:0}.meta-label{font-weight:500;color:#6b7280;min-width:60px}.meta-value{color:#374151;font-weight:500}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid var(--gray-border);gap:15px}.sla-info{display:flex;align-items:center;gap:6px;color:#059669;font-size:.85em;font-weight:600}.sla-info svg{width:14px}.repair-date{display:flex;align-items:center;gap:6px;color:#9ca3af;font-size:.85em}.repair-date svg{width:14px}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}@media (max-width: 768px){.it-repair-list-container{padding:20px 15px}.page-header{flex-direction:column;gap:15px}.page-title{font-size:1.5em}.stats-section{grid-template-columns:repeat(2,1fr);gap:15px}.filters-section{flex-direction:column}.search-box{min-width:100%}.filter-group{width:100%}.repairs-grid{grid-template-columns:1fr}.repair-list-item{flex-direction:column;align-items:flex-start}.repair-list-item .card-header,.repair-list-item .card-meta,.repair-list-item .card-footer{width:100%}}.it-repair-form-page{min-height:100vh;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8);display:flex;flex-direction:column}.it-repair-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.repair-form{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.form-group input,.form-group textarea,.form-group select{padding:14px 18px;border:2px solid var(--gray-border);border-radius:8px;font-size:1.05em;font-family:inherit;transition:all .3s ease;background:#fff}.form-group textarea{resize:vertical;min-height:200px;font-size:1.05em;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.form-group input[type=text],.form-group textarea,.form-group select,.form-group input[type=file]{width:100%;box-sizing:border-box}.checkbox-group{display:flex;flex-wrap:wrap;gap:15px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:1em;padding:8px 12px;background:#fff;border-radius:8px;border:2px solid var(--gray-border);transition:all .3s ease}.checkbox-label:hover{border-color:var(--main-accent);background:var(--main-blue-light)}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer;width:18px;height:18px}.checkbox-label input[type=checkbox]:checked+span{font-weight:600;color:var(--main-blue)}.form-actions{display:flex;justify-content:flex-end;gap:20px;margin-top:40px;padding-top:30px;border-top:2px solid var(--gray-border)}.btn-cancel{background:#fff;color:var(--main-blue);border:2px solid var(--gray-border);padding:14px 28px;border-radius:8px;font-weight:600;font-size:1.05em;cursor:pointer;transition:all .3s ease}.btn-cancel:hover{background:var(--main-blue-light);border-color:var(--main-blue)}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:14px 28px;border-radius:8px;font-weight:600;font-size:1.05em;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff812b4d}.readonly-input{background-color:#f5f5f5;cursor:not-allowed;color:#6b7280}.readonly-input:focus{border-color:var(--gray-border);box-shadow:none}.upload-status{padding:10px;background:#fef3c7;color:#92400e;border-radius:8px;text-align:center;font-weight:600;margin-top:10px}.attachments-list{margin-top:20px;padding:15px;background:#fff;border-radius:8px;border:1px solid var(--gray-border)}.attachment-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 15px;background:#f9fafb;border-radius:8px;margin-bottom:10px;border:1px solid var(--gray-border)}@media (max-width: 768px){.it-repair-form-container{padding:0 20px}.form-row{grid-template-columns:1fr}}.it-repair-detail-page{min-height:100vh;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8);display:flex;flex-direction:column}.it-repair-detail-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.header-left{flex:1}.repair-title{font-size:2em;font-weight:800;color:var(--main-blue);margin:0 0 15px}.ticket-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ticket-number{font-weight:700;color:var(--main-blue);font-size:1.1em}.priority-badge,.status-badge{padding:6px 12px;border-radius:12px;font-size:.85em;font-weight:600}.btn-edit{background:var(--main-blue-light);color:var(--main-blue);border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.detail-content{display:flex;flex-direction:column;gap:25px}.info-section{margin-bottom:20px}.description-text,.resolution-text{color:#374151;line-height:1.8;font-size:1.1em;white-space:pre-wrap;padding:15px;background:#f9fafb;border-radius:8px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin:20px 0}.equipment-badge{display:inline-block;padding:8px 16px;background:var(--main-blue-light);color:var(--main-blue);border-radius:8px;font-weight:600;font-size:1em}.attachment-info{margin-top:10px}.attachment-links{display:flex;flex-direction:column;gap:10px}.attachment-link{display:inline-flex;align-items:center;gap:8px;color:var(--main-blue);text-decoration:none;padding:8px 12px;background:#fff;border-radius:8px;border:1px solid var(--gray-border);transition:all .3s ease}.attachment-link:hover{background:var(--main-blue-light);border-color:var(--main-blue)}.attachment-status{color:#059669;font-weight:600}.sla-overdue{color:#dc2626;font-weight:600}.sla-remaining{color:#059669;font-weight:600}.sla-overdue-badge{display:inline-block;padding:4px 12px;background:#fee2e2;color:#991b1b;border-radius:12px;font-size:.85em;font-weight:600}.processing-method{margin-top:15px}.processing-method label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px}.processing-text{background:#fff;padding:12px;border-radius:8px;border:1px solid var(--gray-border);color:#374151;line-height:1.6;white-space:pre-wrap;margin:0}.feedback-section{background:var(--main-blue-light);padding:20px;border-radius:12px;margin-top:20px}.feedback-section h3{margin-top:0}.rating-input,.feedback-input{margin-bottom:15px}.rating-input label,.feedback-input label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px}.stars{display:flex;gap:5px}.star-btn{background:none;border:none;font-size:2em;cursor:pointer;transition:transform .2s ease;padding:0;line-height:1}.star-btn:hover{transform:scale(1.2)}.star-btn.active{filter:drop-shadow(0 0 3px rgba(255,193,7,.8))}.feedback-input textarea{width:100%;padding:14px 18px;border:2px solid var(--gray-border);border-radius:8px;font-family:inherit;font-size:1.05em;resize:vertical;min-height:120px;line-height:1.6}.feedback-input textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.btn-submit-feedback{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-submit-feedback:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.btn-submit-feedback:disabled{opacity:.6;cursor:not-allowed}.feedback-display{background:#f9fafb;padding:20px;border-radius:12px;margin-top:20px}.rating-display{display:flex;align-items:center;gap:10px;margin-bottom:10px}.rating-stars{font-size:1.5em}.rating-value{font-weight:600;color:var(--main-blue)}.feedback-text{color:#374151;line-height:1.6;margin:0}@media (max-width: 768px){.it-repair-detail-container{padding:0 20px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}}.it-repair-management-page{min-height:100vh;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8);display:flex;flex-direction:column}.it-repair-management-embedded{display:block;width:100%;background:transparent;padding:0;min-height:auto;position:relative;z-index:0;max-width:100%;overflow:visible}.it-repair-management-container{max-width:1600px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.it-repair-management{max-width:100%;margin:0;width:100%;background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a;position:relative;z-index:0}.management-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:30px;width:100%}.btn-export-excel,.btn-export-csv,.btn-export-pdf,.btn-export-docx{padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95em;display:flex;align-items:center;gap:8px}.btn-export-pdf{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-export-pdf:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-export-docx{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.btn-export-docx:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf64d}.filters-section{display:flex;gap:20px;margin-bottom:30px;flex-wrap:wrap;background:#fff;padding:20px;border-radius:12px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:8px;min-width:150px;flex:1}.filter-group select{padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;font-family:inherit;transition:all .3s ease;background:#fff}.filter-group select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.repairs-table-container{background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto}.repairs-table{width:100%;border-collapse:collapse}.repairs-table thead{background:var(--main-blue-light)}.repairs-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);font-size:.9em;letter-spacing:.5px;border-bottom:2px solid var(--gray-border)}.repairs-table td{padding:15px;border-bottom:1px solid var(--gray-border);color:#374151}.repairs-table tbody tr:hover{background:var(--main-blue-light)}.ticket-number{font-weight:700;color:var(--main-blue)}.repair-title-link{color:var(--main-blue);cursor:pointer;text-decoration:underline;transition:color .3s ease}.repair-title-link:hover{color:var(--main-accent)}.priority-badge,.status-badge{padding:4px 10px;border-radius:12px;font-size:.75em;font-weight:600;display:inline-block}.priority-badge.priority-urgent{background:#fee2e2;color:#991b1b}.priority-badge.priority-high{background:#fef3c7;color:#92400e}.priority-badge.priority-normal{background:var(--main-blue-light);color:var(--main-blue)}.priority-badge.priority-low{background:#f3f4f6;color:#6b7280}.status-badge.status-assigned{background:#ddd6fe;color:#7c3aed}.status-badge.status-in-progress{background:#dbeafe;color:#1e40af}.status-badge.status-resolved{background:#d1fae5;color:#059669}.status-badge.status-closed{background:#f3f4f6;color:#6b7280}.status-badge.status-cancelled{background:#fee2e2;color:#991b1b}.assign-select,.status-select{padding:6px 10px;border:2px solid var(--gray-border);border-radius:6px;font-size:.85em;font-family:inherit;background:#fff;cursor:pointer;transition:all .3s ease}.assign-select:focus,.status-select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.empty-table{text-align:center;padding:40px;color:#6b7280;font-size:1.1em}.requester-info,.assignee-info{display:flex;flex-direction:column;gap:4px}.requester-name,.assignee-name{font-weight:600;color:var(--main-blue)}.requester-username,.assignee-username{font-size:.85em;color:#6b7280}.requester-employee{font-size:.85em;color:#059669;font-weight:600}.dropdown-menu{position:fixed;background:#fff;border:1px solid #dee2e6;border-radius:10px;box-shadow:0 10px 40px #0003;z-index:9999;min-width:180px;overflow:hidden;animation:fadeInDown .2s ease}.dropdown-section{padding:8px 0;border-bottom:1px solid #e5e7eb}.dropdown-label{padding:6px 15px;font-size:.75em;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.dropdown-divider{height:1px;background:#e5e7eb;margin:0}.dropdown-item.active{background:var(--main-blue-light);font-weight:600}.dropdown-item svg{width:16px;height:16px;color:#6b7280}.dropdown-item:hover svg{color:var(--main-blue)}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.status-pending{background:#f59e0b}.status-dot.status-assigned{background:#8b5cf6}.status-dot.status-in-progress{background:#3b82f6}.status-dot.status-resolved{background:#10b981}.status-dot.status-closed{background:#6b7280}.action-buttons{display:flex;align-items:center;gap:8px}.btn-edit-processing{background:var(--main-blue-light);color:var(--main-blue);border:none;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:1em;transition:all .3s ease}.btn-edit-processing:hover{background:var(--main-blue);color:#fff}.btn-export-image{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:1em;transition:all .3s ease}.btn-export-image:hover{background:#0369a1;color:#fff;border-color:#0369a1}.processing-edit-row{background:#f9fafb}.processing-edit-form{padding:20px;background:#fff;border-radius:12px;border:2px solid var(--main-blue);margin:10px 0}.processing-edit-form h4{margin:0 0 20px;color:var(--main-blue);font-size:1.2em}.processing-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:15px}.processing-form-group{display:flex;flex-direction:column;gap:8px}.processing-form-group label{font-weight:600;color:var(--main-blue);font-size:.9em}.processing-form-group input,.processing-form-group textarea{padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;font-family:inherit;transition:all .3s ease}.processing-form-group input:focus,.processing-form-group textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.processing-form-group textarea{resize:vertical;min-height:80px}.processing-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid var(--gray-border)}.btn-cancel-processing,.btn-save-processing{padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9em}.btn-cancel-processing{background:#fff;color:#6b7280;border:2px solid var(--gray-border)}.btn-cancel-processing:hover{background:#f3f4f6}.btn-save-processing{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none}.btn-save-processing:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.title-with-attachment{display:flex;align-items:center;gap:8px}.attachment-indicator{font-size:.9em;color:#059669;cursor:help}.sla-info{display:flex;flex-direction:column;gap:4px;font-size:.85em}.sla-time{font-weight:600}.sla-overdue-text{color:#dc2626}.sla-warning-text{color:#f59e0b}.sla-normal-text{color:#059669}.sla-hours{font-size:.75em;color:#6b7280}.sla-na{color:#9ca3af;font-style:italic}.sla-overdue-badge-small{display:inline-block;margin-left:6px;padding:2px 8px;background:#fee2e2;color:#991b1b;border-radius:8px;font-size:.7em;font-weight:600}@media (max-width: 768px){.it-repair-management-container{padding:0 20px}.filters-section{flex-direction:column}.repairs-table-container{overflow-x:scroll}}.asset-form-modal{width:100%}.asset-form-modal .form-section{margin-bottom:25px}.asset-form-modal .section-title{font-size:1.1em;font-weight:600;color:var(--main-blue);margin-bottom:15px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.asset-form-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.asset-form-modal .form-group{display:flex;flex-direction:column}.asset-form-modal .form-group label{font-weight:500;color:#374151;margin-bottom:6px;font-size:.9em}.asset-form-modal .form-group input,.asset-form-modal .form-group select,.asset-form-modal .form-group textarea{padding:10px 12px;border:1px solid var(--gray-border);border-radius:6px;font-size:.95em;font-family:inherit;transition:all .2s;background:#fff}.asset-form-modal .form-group input:focus,.asset-form-modal .form-group select:focus,.asset-form-modal .form-group textarea:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #3b82f61a}.asset-form-modal .form-group input:disabled,.asset-form-modal .form-group select:disabled,.asset-form-modal .form-group textarea:disabled{background:#f3f4f6;cursor:not-allowed}.asset-form-modal .form-group textarea{resize:vertical;min-height:80px}.asset-form-modal .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px;padding-top:20px;border-top:1px solid #e5e7eb}.asset-form-modal .btn-primary,.asset-form-modal .btn-secondary{padding:10px 24px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95em}.asset-form-modal .btn-primary{background:var(--main-blue);color:#fff}.asset-form-modal .btn-primary:hover:not(:disabled){background:var(--main-blue-light);transform:translateY(-1px);box-shadow:0 4px 8px #3b82f64d}.asset-form-modal .btn-primary:disabled{opacity:.5;cursor:not-allowed}.asset-form-modal .btn-secondary{background:#fff;color:#6b7280;border:1px solid var(--gray-border)}.asset-form-modal .btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.asset-form-modal .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.asset-detail-modal{width:100%;max-height:80vh;overflow-y:auto}.asset-detail-modal-loading,.asset-detail-modal-error{display:flex;justify-content:center;align-items:center;min-height:200px;color:#6b7280}.detail-header-actions{display:flex;justify-content:flex-end;gap:10px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e5e7eb}.btn-edit,.btn-delete{padding:8px 16px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;font-size:.9em;display:flex;align-items:center;gap:6px}.btn-edit{background:var(--main-blue);color:#fff}.btn-edit:hover{background:var(--main-blue-light);transform:translateY(-1px)}.btn-delete{background:#ef4444;color:#fff}.btn-delete:hover{background:#dc2626;transform:translateY(-1px)}.detail-content{display:flex;flex-direction:column;gap:20px}.detail-section{background:#f9fafb;border-radius:8px;padding:20px;border:1px solid #e5e7eb}.section-title{display:flex;align-items:center;gap:8px;font-size:1.1em;font-weight:600;color:var(--main-blue);margin:0 0 15px;padding-bottom:10px;border-bottom:2px solid #e5e7eb}.section-title svg{width:18px;color:var(--main-blue)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.detail-item{display:flex;flex-direction:column;gap:5px}.detail-item.full-width{grid-column:1 / -1}.detail-item label{font-weight:500;color:#6b7280;font-size:.85em}.detail-item span{color:#1f2937;font-size:.95em}.json-display{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:12px;font-family:Courier New,monospace;font-size:.85em;color:#374151;max-height:200px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:500}.status-inactive{background:#e5e7eb;color:#4b5563}.it-asset-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.it-asset-list-page.embedded{min-height:auto;background:transparent}.it-asset-list-container{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:30px 20px}.list-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:25px}.btn-export-excel,.btn-export-csv,.btn-import{padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95em;display:flex;align-items:center;gap:8px}.btn-export-excel:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-export-excel:disabled{opacity:.5;cursor:not-allowed}.btn-export-csv:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.btn-export-csv:disabled{opacity:.5;cursor:not-allowed}.btn-import{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;cursor:pointer}.btn-import:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b4d}.btn-import:disabled{opacity:.5;cursor:not-allowed}.filter-select,.filter-input{padding:10px 15px;border:1px solid var(--gray-border);border-radius:8px;font-size:.95em;min-width:150px}.assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.asset-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;transition:all .3s;border:1px solid var(--gray-border);position:relative}.asset-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f;border-color:var(--main-blue)}.asset-actions{display:flex;gap:8px;margin-top:15px;padding-top:15px;border-top:1px solid #e5e7eb;justify-content:flex-end}.btn-action{padding:6px 12px;border:none;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;font-size:.9em}.btn-action.btn-view{background:#e0f2fe;color:#0369a1}.btn-action.btn-view:hover{background:#bae6fd;transform:translateY(-1px)}.btn-action.btn-edit:hover{background:#bfdbfe;transform:translateY(-1px)}.btn-action.btn-delete:hover{background:#fecaca;transform:translateY(-1px)}.btn-settings{background:#f8f9fa!important;color:#6c757d!important}.btn-settings:hover{background:#e9ecef!important;color:#495057!important;transform:translateY(-1px)}.dropdown{position:static;display:inline-block}.dropdown-menu{position:fixed;background:#fff;border:1px solid #dee2e6;border-radius:10px;box-shadow:0 10px 40px #0003;z-index:9999;min-width:160px;overflow:hidden;animation:fadeInDown .2s ease}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 15px;border:none;background:#fff;color:#333;font-size:.9em;cursor:pointer;transition:all .2s ease;text-align:left}.dropdown-item:hover{background:#f8f9fa;color:#333}.dropdown-item-danger{color:#dc3545!important}.dropdown-item-danger:hover{background:#f8d7da!important;color:#721c24!important}.dropdown-item svg{width:16px;height:16px}.table-actions{display:flex;gap:8px;align-items:center}.asset-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.asset-number{font-weight:600;color:var(--main-blue);font-size:1.1em}.asset-name{font-size:1.2em;font-weight:600;color:#1f2937;margin:0 0 15px}.asset-info{display:flex;flex-direction:column;gap:10px}.sync-time{margin-top:15px;padding-top:15px;border-top:1px solid #e5e7eb;font-size:.85em;color:#9ca3af}.assets-table-container{background:#fff;border-radius:12px;overflow:visible;box-shadow:0 2px 8px #00000014}.assets-table{width:100%;border-collapse:collapse}.assets-table thead{background:#f9fafb}.assets-table th{padding:15px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.assets-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#6b7280}.assets-table tbody tr:hover{background:#f9fafb}.it-asset-detail-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.it-asset-detail-container{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:30px 20px}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.btn-back{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;border:1px solid var(--gray-border);border-radius:8px;cursor:pointer;color:var(--main-blue);font-size:.95em;transition:all .2s}.detail-content{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #00000014}.detail-section{margin-bottom:30px}.section-title{font-size:1.5em;font-weight:600;color:var(--main-blue);margin:0 0 20px}.status-badge-container{margin:15px 0}.status-badge{padding:6px 16px;border-radius:12px;font-size:.9em;font-weight:500;display:inline-block}.status-active{background:#d1fae5;color:#065f46}.status-inactive{background:#f3f4f6;color:#6b7280}.status-maintenance{background:#fef3c7;color:#92400e}.status-retired{background:#fee2e2;color:#991b1b}.status-lost{background:#fce7f3;color:#9f1239}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-bottom:30px}.info-section{background:#f9fafb;padding:20px;border-radius:8px}.info-section h3{font-size:1.2em;font-weight:600;color:#374151;margin:0 0 15px;padding-bottom:10px;border-bottom:2px solid #e5e7eb}.info-item{margin-bottom:15px}.info-item label{display:block;font-size:.85em;color:#6b7280;margin-bottom:5px;font-weight:500}.info-item div{color:#1f2937;font-size:1em}.disk-item{background:#fff;padding:15px;border-radius:6px;margin-bottom:15px;border:1px solid #e5e7eb}.software-list{max-height:400px;overflow-y:auto}.software-item{padding:10px 15px;background:#fff;border-radius:6px;margin-bottom:8px;display:flex;align-items:center;gap:10px;border:1px solid #e5e7eb}.software-item strong{flex:1;color:#1f2937}.software-version{padding:2px 8px;background:#e0e7ff;color:var(--main-blue);border-radius:4px;font-size:.85em}.software-vendor{color:#6b7280;font-size:.9em}.software-more{text-align:center;padding:10px;color:#6b7280;font-style:italic}.notes-content{background:#f9fafb;padding:15px;border-radius:6px;color:#374151;line-height:1.6;white-space:pre-wrap}.loading-container,.error-container{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:400px}.error-container p{color:#6b7280;margin-bottom:20px}.it-asset-form-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.it-asset-form-container{flex:1;max-width:900px;width:100%;margin:0 auto;padding:30px 20px}.form-header{margin-bottom:25px}.btn-back{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid var(--gray-border);border-radius:8px;cursor:pointer;color:var(--main-blue);font-size:.95em;margin-bottom:15px;transition:all .2s}.btn-back:hover{background:#f9fafb;border-color:var(--main-blue)}.page-title{font-size:1.8em;font-weight:700;color:var(--main-blue);margin:0}.asset-form{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #00000014}.form-section{margin-bottom:30px;padding-bottom:30px;border-bottom:1px solid #e5e7eb}.section-title{font-size:1.3em;font-weight:600;color:var(--main-blue);margin:0 0 20px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.9em;font-weight:500;color:#374151;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{padding:10px 15px;border:1px solid var(--gray-border);border-radius:8px;font-size:.95em;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #18454c1a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f3f4f6;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:80px}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:30px;border-top:1px solid #e5e7eb}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:8px;font-size:.95em;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:var(--main-blue);color:#fff}.btn-primary:hover:not(:disabled){background:#0f3a42}.btn-secondary{background:#fff;color:var(--main-blue);border:1px solid var(--gray-border)}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:var(--main-blue)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.device-io-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.device-io-container{flex:1;width:100%;height:100%;display:flex;flex-direction:column}.device-io-container.embedded{padding:0;background:transparent}.device-io-container.embedded .admin-tabs{border-radius:0;box-shadow:none;border-bottom:1px solid #e5e7eb}.device-io-container.embedded .admin-content{border-radius:0;box-shadow:none;background:#f9fafb}.devices-tab{display:flex;flex-direction:column;gap:20px}.devices-tab .tab-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:0;padding-bottom:0;border-bottom:none}.search-box{position:relative;display:flex;align-items:center;max-width:400px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:0 15px;transition:all .3s ease}.search-box:focus-within{border-color:#147886;box-shadow:0 0 0 3px #1478861a}.search-box svg{color:#9ca3af;margin-right:10px;flex-shrink:0;width:16px}.io-content{display:flex;gap:20px;flex:1;min-height:600px}.device-list-panel{flex:0 0 350px;background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.panel-title{font-size:1.2em;font-weight:600;color:#147886;margin:0 0 20px}.device-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.device-item{padding:15px;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .3s ease;background:#f9fafb}.device-item:hover{background:#f3f4f6;border-color:#147886;transform:translate(4px)}.device-item.active{background:#e0f2f1;border-color:#147886;box-shadow:0 2px 8px #14788633}.device-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.device-number{font-weight:600;color:#147886;font-size:1em}.sync-badge{display:flex;align-items:center;gap:4px;padding:4px 8px;background:#d1fae5;color:#065f46;border-radius:12px;font-size:.75em;font-weight:600}.sync-badge svg{width:12px;height:12px}.device-name{font-size:.95em;color:#374151;margin-bottom:8px;font-weight:500}.device-sync-time{font-size:.85em;color:#9ca3af}.empty-state-small{text-align:center;padding:40px 20px;color:#9ca3af}.empty-state-small svg{color:#d1d5db;margin-bottom:10px}.device-detail-panel{flex:1;background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e5e7eb}.btn-refresh{padding:8px 12px;background:#147886;color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:.9em;transition:all .3s ease}.btn-refresh:hover{background:#1a94a6;transform:translateY(-2px)}.btn-refresh svg{width:14px;height:14px}.detail-content{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:20px;padding-right:5px}.detail-content::-webkit-scrollbar{width:6px}.detail-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.detail-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.detail-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.info-section{background:#f9fafb;border-radius:8px;padding:20px;border:1px solid #e5e7eb}.section-title{display:flex;align-items:center;gap:8px;font-size:1.1em;font-weight:600;color:#147886;margin:0 0 15px}.section-title svg{width:18px;height:18px;flex-shrink:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.info-item label{font-size:.85em;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.info-item span{font-size:.95em;color:#374151;font-weight:500}.json-display{background:#1f2937;color:#f9fafb;padding:15px;border-radius:8px;font-size:.85em;line-height:1.6;overflow-x:auto;font-family:Courier New,monospace;margin:0;white-space:pre-wrap;word-wrap:break-word;max-height:400px;overflow-y:auto}.json-display::-webkit-scrollbar{width:6px;height:6px}.json-display::-webkit-scrollbar-track{background:#374151;border-radius:3px}.json-display::-webkit-scrollbar-thumb{background:#6b7280;border-radius:3px}.json-display::-webkit-scrollbar-thumb:hover{background:#9ca3af}.no-selection{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;padding:60px 20px}.no-selection svg{color:#d1d5db;margin-bottom:20px}.no-selection p{font-size:1.1em}.loading-state{text-align:center;padding:60px 20px;color:#147886;font-size:1.2em}.device-list::-webkit-scrollbar{width:6px}.device-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.device-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.device-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.controls-tab,.print-logs-tab,.email-logs-tab{width:100%}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e5e7eb}.tab-header h2{font-size:1.3em;font-weight:600;color:#147886;margin:0}.table-container{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #e5e7eb;overflow-x:auto}.data-table th{text-align:left;padding:12px;background:#f9fafb;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;font-size:.9em;text-transform:uppercase;letter-spacing:.5px}.data-table td{padding:12px;border-bottom:1px solid #e5e7eb;color:#374151;font-size:.95em}.data-table tr:hover{background:#f9fafb}.empty-cell{text-align:center;color:#9ca3af;padding:40px 20px}.action-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600}.action-badge.action-allow{background:#d1fae5;color:#065f46}.action-badge.action-deny{background:#fee2e2;color:#991b1b}.action-badge.action-audit_only{background:#fef3c7;color:#92400e}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600}.status-badge.error{background:#fee2e2;color:#991b1b}.btn-action{padding:6px 10px;border:none;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;margin-right:8px;transition:all .3s ease}.btn-action.btn-edit{background:#dbeafe;color:#1e40af}.btn-action.btn-edit:hover{background:#bfdbfe}.btn-action.btn-delete{background:#fee2e2;color:#991b1b}.btn-action.btn-delete:hover{background:#fecaca}.btn-action svg{width:14px;height:14px}.modal-content{background:#fff;border-radius:12px;padding:30px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e5e7eb}.modal-header h3{font-size:1.3em;font-weight:600;color:#147886;margin:0}.btn-close{background:none;border:none;font-size:1.5em;color:#9ca3af;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .3s ease}.btn-close:hover{background:#f3f4f6;color:#374151}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#374151;font-size:.95em}.form-group input[type=text],.form-group input[type=number],.form-group select{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:.95em;transition:all .3s ease}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group select:focus{outline:none;border-color:#147886;box-shadow:0 0 0 3px #1478861a}.form-group input[type=checkbox]{margin-right:8px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:30px;padding-top:20px;border-top:1px solid #e5e7eb}.btn-primary{padding:10px 20px;background:#147886;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.95em;font-weight:600;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-primary:hover:not(:disabled){background:#1a94a6;transform:translateY(-2px)}.btn-secondary{padding:10px 20px;background:#f3f4f6;color:#374151;border:none;border-radius:8px;cursor:pointer;font-size:.95em;font-weight:600;transition:all .3s ease}.direction-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600}.direction-badge.send{background:#dbeafe;color:#1e40af}.direction-badge.receive{background:#fef3c7;color:#92400e}@media (max-width: 1024px){.io-content{flex-direction:column}.device-list-panel{flex:0 0 auto;max-height:300px}}.agent-deployment-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.agent-deployment-container{flex:1;width:100%;height:100%;display:flex;flex-direction:column;padding:20px;max-width:1400px;margin:0 auto}.agent-deployment-container.embedded{padding:0;background:transparent;max-width:100%;margin:0}.page-header{margin-bottom:20px}.page-header h1{font-size:24px;font-weight:600;color:#333}.scan-section{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.scan-controls{display:flex;gap:15px;align-items:flex-end}.scan-controls .form-group{flex:1}.scan-controls label{display:block;margin-bottom:5px;font-weight:500;color:#555}.scan-controls input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.devices-section{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.devices-section h2{font-size:18px;font-weight:600;margin-bottom:15px;color:#333}.devices-table{overflow-x:auto}.devices-table table{width:100%;border-collapse:collapse}.devices-table th,.devices-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.devices-table th{background-color:#f8f9fa;font-weight:600;color:#555}.devices-table td{color:#333}.empty-cell{text-align:center;color:#999;padding:40px!important}.badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge-windows{background-color:#0078d4;color:#fff;margin-left:5px}.badge-online{background-color:#28a745;color:#fff}.badge-offline{background-color:#6c757d;color:#fff}.badge-success{background-color:#28a745;color:#fff}.badge-disabled{background-color:#dc3545;color:#fff}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;margin-right:8px}.status-badge.status-pending{background-color:#ffc107;color:#333}.status-badge.status-installing{background-color:#17a2b8;color:#fff}.status-badge.status-success{background-color:#28a745;color:#fff}.status-badge.status-failed{background-color:#dc3545;color:#fff}.btn-sm{padding:4px 8px;font-size:12px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h3{margin:0;font-size:18px;font-weight:600}.btn-close{background:none;border:none;font-size:24px;cursor:pointer;color:#999;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.btn-close:hover{color:#333}.modal-body{padding:20px}.modal-body .form-group{margin-bottom:15px}.modal-body label{display:block;margin-bottom:5px;font-weight:500;color:#555}.modal-body input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #eee}.btn-primary,.btn-secondary{padding:8px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.file-encryption-management-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.file-encryption-management-page.embedded{display:block;width:100%;background:transparent;padding:0;min-height:auto;position:relative;z-index:0;max-width:100%;overflow:visible}.file-encryption-container{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:30px 20px}.file-encryption-management-page.embedded .file-encryption-container{padding:0}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.file-encryption-management-page.embedded .list-header{margin-bottom:15px}.header-right{display:flex;gap:15px;align-items:center}.view-toggle{display:flex;gap:5px;background:#fff;padding:5px;border-radius:8px;border:1px solid var(--gray-border)}.view-btn{padding:8px 12px;border:none;background:transparent;cursor:pointer;border-radius:6px;color:#6b7280;transition:all .2s}.filters-section{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap}.file-encryption-management-page.embedded .filters-section{margin-bottom:15px}.search-box{flex:1;min-width:250px;position:relative;display:flex;align-items:center}.search-box svg{position:absolute;left:12px;color:#9ca3af}.search-input{width:100%;padding:10px 15px 10px 40px;border:1px solid var(--gray-border);border-radius:8px;font-size:.95em}.filter-select{padding:10px 15px;border:1px solid var(--gray-border);border-radius:8px;font-size:.95em;min-width:150px}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.file-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:all .3s;border:1px solid var(--gray-border)}.file-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f;border-color:var(--main-blue)}.file-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.file-icon{width:48px;height:48px;background:var(--main-blue-light);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--main-blue)}.file-icon svg{width:24px;height:24px}.file-name{font-size:1.1em;font-weight:600;color:#1f2937;margin:0 0 15px;word-break:break-word}.file-info{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;align-items:center;gap:8px;color:#6b7280;font-size:.9em}.info-item svg{width:16px;color:#9ca3af}.status-badge{padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:500}.status-encrypted{background:#d1fae5;color:#065f46}.status-decrypted{background:#dbeafe;color:#1e40af}.status-pending{background:#fef3c7;color:#92400e}.status-failed{background:#fee2e2;color:#991b1b}.files-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014}.files-table{width:100%;border-collapse:collapse}.files-table thead{background:#f9fafb}.files-table th{padding:15px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.files-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#6b7280}.files-table tbody tr:hover{background:#f9fafb}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.empty-state svg{color:#d1d5db;margin-bottom:20px}.empty-state p{color:#6b7280;font-size:1.1em;margin-bottom:20px}.loading-container{flex:1;display:flex;justify-content:center;align-items:center;min-height:400px}.loading-spinner{font-size:1.2em;color:var(--main-blue)}.btn-link{background:none;border:none;color:var(--main-blue);cursor:pointer;text-decoration:underline;font-size:.9em;padding:0}.btn-link:hover{color:var(--main-blue-light)}.file-encryption-form-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.file-encryption-form-container{flex:1;max-width:1200px;margin:0 auto;padding:24px;width:100%}.form-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.file-encryption-form{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.form-section{margin-bottom:32px}.section-title{font-size:18px;font-weight:600;color:#1f2937;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.form-input,.form-select,.form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1f2937;transition:all .2s}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:#f3f4f6;cursor:not-allowed}.form-input.error{border-color:#ef4444}.error-message{display:block;font-size:12px;color:#ef4444;margin-top:4px}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.file-encryption-form-container,.file-encryption-form{padding:16px}}.encryption-policy-management-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.encryption-policy-container{flex:1;max-width:1400px;margin:0 auto;padding:24px;width:100%}.encryption-policy-container.embedded{max-width:100%;padding:0;background:transparent}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header-right{display:flex;align-items:center;gap:12px}.view-toggle{display:flex;gap:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:4px}.view-btn{padding:6px 12px;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:4px;transition:all .2s}.view-btn.active{background:#147886;color:#fff}.filters-section{display:flex;gap:16px;margin-bottom:24px}.search-box{flex:1}.search-input{width:100%;padding:10px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:14px;color:#374151;white-space:nowrap}.filter-select{padding:10px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;min-width:120px}.policies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.policy-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000001a;transition:all .2s}.policy-card:hover{box-shadow:0 4px 12px #00000026}.policy-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.policy-name{font-size:18px;font-weight:600;color:#1f2937;margin:0;flex:1}.policy-card-body{margin-bottom:16px}.policy-description{font-size:14px;color:#6b7280;margin-bottom:12px;line-height:1.5}.policy-info{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#4b5563}.info-icon{width:16px;height:16px;color:#9ca3af}.policy-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid #e5e7eb}.policy-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:#9ca3af}.meta-icon{width:14px;height:14px}.policy-actions{display:flex;gap:8px}.policies-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.policies-table{width:100%;border-collapse:collapse}.policies-table thead{background:#f9fafb}.policies-table th{padding:12px 16px;text-align:left;font-size:14px;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.policies-table td{padding:12px 16px;font-size:14px;color:#1f2937;border-bottom:1px solid #f3f4f6}.policies-table tbody tr:hover{background:#f9fafb}.empty-state{text-align:center;padding:48px;color:#6b7280;font-size:16px}.encryption-policy-form-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.encryption-policy-form-container{flex:1;max-width:1200px;margin:0 auto;padding:24px;width:100%;background:#f5f7fa}.encryption-policy-form-container.embedded{max-width:100%;padding:0;background:transparent}.form-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding:0}.encryption-policy-form-container.embedded .form-header{margin-bottom:20px}.btn-back{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:14px;color:#374151;transition:all .2s}.btn-back:hover{background:#f9fafb;border-color:#d1d5db}.page-title{font-size:24px;font-weight:600;color:#1f2937;margin:0}.encryption-policy-form{background:#fff;border-radius:8px;padding:32px;box-shadow:0 1px 3px #0000001a}.encryption-policy-form-container.embedded .encryption-policy-form{border-radius:0;box-shadow:none;padding:24px}.form-section{margin-bottom:32px;padding:24px;background:#fafafa;border-radius:8px;border:1px solid #e5e7eb}.form-section:last-of-type{margin-bottom:24px}.encryption-policy-form-container.embedded .form-section{padding:20px;margin-bottom:24px}.section-title{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.required{color:#ef4444}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1f2937;background:#fff;transition:all .2s;box-sizing:border-box}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#147886;box-shadow:0 0 0 3px #1478861a}.form-textarea{resize:vertical;min-height:80px}.form-hint{display:block;font-size:12px;color:#6b7280;margin-top:4px}.form-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:12px}@media (max-width: 768px){.form-checkboxes{grid-template-columns:1fr}}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#374151}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#147886}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;margin-top:24px;border-top:1px solid #e5e7eb}.encryption-policy-form-container.embedded .form-actions{padding-top:20px;margin-top:20px}.btn-primary,.btn-secondary{padding:10px 24px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#147886;color:#fff;border:none}.btn-primary:hover:not(:disabled){background:#0f5f6b}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.encryption-policy-form-container.embedded .form-section{background:#fff;border:1px solid #e5e7eb}.disaster-recovery-form{background:#fff;border-radius:8px;padding:24px}.disaster-recovery-form .form-group{margin-bottom:20px}.disaster-recovery-form .form-actions{margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.encryption-policy-form-container{padding:16px}.encryption-policy-form-container.embedded{padding:0}.encryption-policy-form,.form-section{padding:16px}}.file-encryption-admin-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.file-encryption-admin-container{flex:1;width:100%;height:100%;display:flex;flex-direction:column}.file-encryption-admin-container.embedded{padding:0;background:transparent}.page-header{margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.page-title{font-size:28px;font-weight:600;color:#1f2937;margin:0}.admin-tabs{display:flex;gap:8px;margin-bottom:0;border-bottom:2px solid #e5e7eb;overflow-x:auto;background:#fff;border-radius:0;padding:0 24px;box-shadow:0 1px 3px #0000001a;position:sticky;top:0;z-index:10}.file-encryption-admin-container.embedded .admin-tabs{border-radius:0;box-shadow:none;border-bottom:1px solid #e5e7eb}.tab-btn{display:flex;align-items:center;gap:8px;padding:16px 20px;background:transparent;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s;position:relative;margin-bottom:-2px}.tab-btn:hover{color:#147886;background:#f9fafb}.tab-btn.active{color:#147886;border-bottom-color:#147886;background:#f9fafb}.tab-btn .badge{background:#ef4444;color:#fff;font-size:11px;padding:2px 6px;border-radius:10px;margin-left:4px}.admin-content{background:#fff;border-radius:0;padding:24px;box-shadow:none;min-height:400px;margin-top:0;flex:1;overflow-y:auto}.file-encryption-admin-container.embedded .admin-content{border-radius:0;box-shadow:none;background:#f9fafb}.dashboard-tab{display:flex;flex-direction:column;gap:24px}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.dashboard-header h2{font-size:20px;font-weight:600;color:#1f2937;margin:0}.btn-refresh{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;font-size:14px;cursor:pointer;transition:all .2s}.btn-refresh:hover{background:#e5e7eb}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.stat-card{display:flex;align-items:center;gap:16px;padding:20px;background:linear-gradient(135deg,#f9fafb,#fff);border:1px solid #e5e7eb;border-radius:12px;transition:all .2s;position:relative}.stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px}.stat-icon.policy{background:#dbeafe;color:#1e40af}.stat-icon.file{background:#d1fae5;color:#065f46}.stat-icon.log{background:#fef3c7;color:#92400e}.stat-icon.approval{background:#fce7f3;color:#9f1239}.stat-icon.permission{background:#e9d5ff;color:#6b21a8}.stat-value{font-size:28px;font-weight:700;color:#1f2937;line-height:1;margin-bottom:4px}.stat-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:2px}.stat-sublabel{font-size:12px;color:#6b7280}.stat-action{width:32px;height:32px;border:none;background:#f3f4f6;color:#6b7280;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.stat-action:hover{background:#147886;color:#fff}.quick-actions{margin-top:8px}.quick-actions h3{font-size:16px;font-weight:600;color:#374151;margin-bottom:12px}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.action-btn{display:flex;align-items:center;gap:12px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;text-align:left}.action-btn:hover{background:#f9fafb;border-color:#147886;color:#147886}.action-btn svg{width:20px;height:20px}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.tab-header h2{font-size:20px;font-weight:600;color:#1f2937;margin:0}.filters{display:flex;gap:12px;flex-wrap:wrap}.filter-input,.filter-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;min-width:150px}.filter-input:focus,.filter-select:focus{outline:none;border-color:#147886;box-shadow:0 0 0 3px #1478861a}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:12px 16px;text-align:left;font-size:14px;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.data-table td{padding:12px 16px;font-size:14px;color:#1f2937;border-bottom:1px solid #f3f4f6}.empty-cell{text-align:center;color:#6b7280;padding:32px!important}.permission-badges{display:flex;gap:4px;flex-wrap:wrap}.badge{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;white-space:nowrap}.badge-read{background:#dbeafe;color:#1e40af}.badge-write{background:#fef3c7;color:#92400e}.badge-delete{background:#fee2e2;color:#991b1b}.badge-export{background:#e9d5ff;color:#6b21a8}.badge-print{background:#d1fae5;color:#065f46}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.status-pending{background:#fef3c7;color:#92400e}.status-badge.status-approved{background:#d1fae5;color:#065f46}.status-badge.status-rejected{background:#fee2e2;color:#991b1b}.action-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.action-badge.action-open,.action-badge.action-read{background:#dbeafe;color:#1e40af}.action-badge.action-write{background:#fef3c7;color:#92400e}.action-badge.action-delete{background:#fee2e2;color:#991b1b}.action-badge.action-export{background:#e9d5ff;color:#6b21a8}.action-badge.action-print{background:#d1fae5;color:#065f46}.result-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.result-badge.result-success{background:#d1fae5;color:#065f46}.result-badge.result-denied,.result-badge.result-error{background:#fee2e2;color:#991b1b}.method-badge{padding:4px 8px;background:#f3f4f6;color:#374151;border-radius:4px;font-size:12px;font-weight:500}.action-buttons{display:flex;gap:8px}.btn-action{width:32px;height:32px;border:none;background:#f3f4f6;color:#6b7280;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-action:hover{background:#e5e7eb}.btn-action.btn-edit:hover{background:#dbeafe;color:#1e40af}.btn-action.btn-delete:hover{background:#fee2e2;color:#991b1b}.btn-action.btn-approve:hover{background:#d1fae5;color:#065f46}.btn-action.btn-reject:hover{background:#fee2e2;color:#991b1b}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#147886;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover{background:#0f5f6b}.loading-state{display:flex;align-items:center;justify-content:center;padding:48px;font-size:16px;color:#6b7280}.reports-content{padding:24px;color:#1f2937}.reports-tab{display:flex;flex-direction:column;gap:24px}.report-section{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.report-section .section-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.coming-soon-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:48px}.coming-soon-icon{font-size:64px;color:#9ca3af;margin-bottom:24px}.coming-soon-container h2{font-size:24px;font-weight:600;color:#374151;margin:0 0 12px}.coming-soon-container p{font-size:16px;color:#6b7280;margin:0}.modal-content{background:#fff;border-radius:8px;padding:24px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:20px;font-weight:600;color:#1f2937}.modal-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.modal-close:hover{background:#f3f4f6}.device-control-form .form-group{margin-bottom:20px}.device-control-form label{display:block;margin-bottom:8px;font-weight:500;color:#374151}.device-control-form input[type=text],.device-control-form select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.device-control-form input[type=text]:focus,.device-control-form select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.device-control-form input[type=checkbox]{margin-right:8px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-secondary{padding:10px 20px;background:#f3f4f6;color:#374151;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-secondary:hover{background:#e5e7eb}@media (max-width: 768px){.admin-tabs{flex-direction:column}.tab-btn{width:100%;justify-content:flex-start}.stats-grid,.actions-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filter-input,.filter-select{width:100%}.table-container{overflow-x:scroll}}.ac-control-management{padding:20px;max-width:1400px;margin:0 auto}.ac-control-header{margin-bottom:20px}.ac-control-header h1{margin:0 0 10px;color:#333}.message{padding:10px 15px;border-radius:4px;margin-top:10px}.message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.ac-control-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.ac-control-tabs button{padding:10px 20px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:16px;color:#666;transition:all .3s}.ac-control-tabs button:hover{color:#333}.ac-control-tabs button.active{color:#007bff;border-bottom-color:#007bff;font-weight:700}.ac-control-panel{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}.ac-unit-control{background:#f8f9fa;padding:20px;border-radius:8px;border:2px solid #e0e0e0;transition:all .3s ease}.ac-unit-control.ac-on{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:#4caf50;box-shadow:0 4px 15px #4caf504d}.ac-unit-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.ac-unit-control h2{margin:0;color:#333;font-size:20px}.ac-status-badge{padding:6px 14px;border-radius:20px;font-size:14px;font-weight:600;text-transform:uppercase}.ac-status-badge.on{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;animation:pulse 2s infinite}.ac-status-badge.off{background:#9e9e9e;color:#fff}.ac-status-badge.unknown{background:#ff9800;color:#fff}@keyframes pulse{0%{box-shadow:0 0 #4caf50b3}70%{box-shadow:0 0 0 10px #4caf5000}to{box-shadow:0 0 #4caf5000}}.ac-last-action{font-size:12px;color:#666;margin-bottom:15px;padding:5px 10px;background:#0000000d;border-radius:4px}.temperature-control{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:20px;padding:15px;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-radius:12px;border:1px solid #90caf9}.temp-label{font-size:16px;font-weight:600;color:#1565c0}.temp-value{font-size:32px;font-weight:700;color:#1976d2;min-width:80px;text-align:center;background:#fff;padding:8px 16px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.temp-btn{width:40px;height:40px;font-size:18px;font-weight:700;border:none;border-radius:50%;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.temp-btn.temp-up{background:linear-gradient(135deg,#ef5350,#c62828);color:#fff}.temp-btn.temp-up:hover:not(:disabled){background:linear-gradient(135deg,#f44336,#d32f2f);transform:scale(1.1);box-shadow:0 4px 12px #ef535066}.temp-btn.temp-down{background:linear-gradient(135deg,#42a5f5,#1565c0);color:#fff}.temp-btn.temp-down:hover:not(:disabled){background:linear-gradient(135deg,#2196f3,#1976d2);transform:scale(1.1);box-shadow:0 4px 12px #42a5f566}.temp-btn:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.temp-btn.cooldown{position:relative;overflow:hidden}.temp-btn.cooldown:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#fff6;animation:temp-cooldown 1s linear}@keyframes temp-cooldown{0%{opacity:.8}to{opacity:0}}.temperature-control.disabled{opacity:.5;background:linear-gradient(135deg,#e0e0e0,#bdbdbd);border-color:#9e9e9e}.control-buttons button.active{background-color:#4caf50!important;box-shadow:0 2px 8px #4caf5066}.control-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.control-buttons button{padding:12px 20px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s}.control-buttons button.has-value{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px}.control-buttons button .btn-label{font-size:12px;opacity:.9}.control-buttons button .btn-value{font-size:14px;font-weight:700;background:#fff3;padding:2px 8px;border-radius:10px}.control-buttons button:hover:not(:disabled){background-color:#0056b3}.control-buttons button:disabled{background-color:#ccc;cursor:not-allowed}.control-buttons button.cooldown{position:relative;overflow:hidden}.control-buttons button.cooldown:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:cooldown-sweep-1s 1s linear}.control-buttons button.cooldown.has-value:after{animation:cooldown-sweep-2s 2s linear}@keyframes cooldown-sweep-1s{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes cooldown-sweep-2s{0%{transform:translate(-100%)}to{transform:translate(100%)}}.ac-schedules-panel{margin-top:20px}.default-schedules-section{background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:20px;border-radius:8px;margin-bottom:20px;border:1px solid #90caf9}.default-schedules-section h3{margin:0 0 10px;color:#1565c0;font-size:18px}.default-schedules-section .description{margin:0 0 15px;color:#1976d2;font-size:14px}.default-schedule-buttons{display:flex;gap:10px;flex-wrap:wrap}.default-schedule-buttons button{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s}.default-schedule-buttons .btn-primary{background-color:#1976d2;color:#fff}.default-schedule-buttons .btn-primary:hover:not(:disabled){background-color:#1565c0}.default-schedule-buttons .btn-warning{background-color:#ff9800;color:#fff}.default-schedule-buttons .btn-warning:hover:not(:disabled){background-color:#f57c00}.default-schedule-buttons button:disabled{background-color:#ccc;cursor:not-allowed}.schedule-form{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:30px;border:1px solid #e0e0e0}.schedule-form h3{margin:0 0 20px;color:#333}.form-row{margin-bottom:15px}.form-row label{display:block;margin-bottom:5px;color:#333;font-weight:500}.form-row input[type=text],.form-row input[type=time],.form-row select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.weekdays-checkboxes{display:flex;flex-wrap:wrap;gap:15px}.weekdays-checkboxes label{display:flex;align-items:center;gap:5px;font-weight:400;cursor:pointer}.form-actions{display:flex;gap:10px;margin-top:20px}.form-actions button{padding:10px 20px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.form-actions button:hover:not(:disabled){background-color:#0056b3}.form-actions button:disabled{background-color:#ccc;cursor:not-allowed}.schedules-list{margin-top:30px}.schedules-list h3{margin:0 0 15px;color:#333}.schedules-list table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.schedules-list table thead{background-color:#007bff;color:#fff}.schedules-list table th,.schedules-list table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.schedules-list table tbody tr:hover{background-color:#f8f9fa}.schedules-list table button{padding:6px 12px;margin-right:5px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.schedules-list table button:hover{background-color:#0056b3}.ac-logs-panel{margin-top:20px}.ac-logs-panel h3{margin:0 0 15px;color:#333}.ac-logs-panel table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.ac-logs-panel table thead{background-color:#007bff;color:#fff}.ac-logs-panel table th,.ac-logs-panel table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.ac-logs-panel table tbody tr:hover{background-color:#f8f9fa}.modbus-message{font-family:monospace;font-size:12px;color:#666}.source-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500}.source-badge.manual{background-color:#e3f2fd;color:#1565c0}.source-badge.schedule{background-color:#fff3e0;color:#e65100}@media (max-width: 768px){.ac-control-panel{grid-template-columns:1fr}.control-buttons{grid-template-columns:repeat(2,1fr)}}.crm-dashboard-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.crm-dashboard-container{max-width:100%;margin:20px auto;padding:0 20px 40px;flex:1;width:100%}.dashboard-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:20px}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;gap:8px}.crm-split-layout{display:flex;gap:20px;height:calc(100vh - 200px);min-height:600px}.customer-list-panel{flex:0 0 45%;background:#fff;border-radius:16px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);display:flex;flex-direction:column;overflow:hidden}.panel-header{padding:20px;border-bottom:2px solid var(--gray-border);display:flex;justify-content:space-between;align-items:center}.panel-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0}.header-info{display:flex;align-items:center;gap:15px}.list-filters{padding:12px 20px;border-bottom:1px solid var(--gray-border);display:flex;gap:12px;align-items:center;flex-wrap:nowrap}.search-box{position:relative;display:flex;align-items:center;flex:1 1 auto;min-width:0;height:38px}.search-box svg{position:absolute;left:12px;color:#6b7280;font-size:.9em;z-index:1;pointer-events:none}.search-input{width:100%;height:38px;padding:0 14px 0 38px;border:1px solid #d1d5db;border-radius:8px;font-size:.75em!important;font-family:inherit;background:#fff;color:#1f2937;transition:all .2s ease;box-sizing:border-box}.search-input::placeholder{font-size:.75em!important;color:#9ca3af;opacity:1}.search-input:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #18454c1a}.filter-select{flex:0 0 auto;min-width:140px;max-width:180px;height:38px;padding:0 32px 0 14px;border:1px solid #d1d5db;border-radius:8px;font-size:.65em!important;font-family:inherit;background:#fff;color:#1f2937;cursor:pointer;transition:all .2s ease;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2318494c' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.filter-select:hover{border-color:#9ca3af}.customers-table{flex:1;overflow-y:auto;padding:0}.customers-table table{width:100%;border-collapse:collapse}.customers-table thead{position:sticky;top:0;background:#f9fafb;z-index:10}.customers-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:.9em;color:var(--main-blue);border-bottom:2px solid var(--gray-border);white-space:nowrap}.customers-table td{padding:12px 16px;border-bottom:1px solid #e5e7eb;font-size:.9em;color:#374151}.customers-table tbody tr{cursor:pointer;transition:all .2s ease}.customers-table tbody tr:hover{background:#f3f4f6}.customers-table tbody tr.selected{background:#dbeafe;border-left:4px solid var(--main-blue)}.customer-name{font-weight:600;color:var(--main-blue)}.status-badge{padding:4px 12px;border-radius:8px;font-size:.8em;font-weight:600;white-space:nowrap}.pagination{padding:15px 20px;border-top:1px solid var(--gray-border);display:flex;justify-content:center;align-items:center;gap:15px}.page-btn{padding:8px 16px;border:1px solid var(--gray-border);border-radius:6px;background:#fff;color:var(--main-blue);cursor:pointer;transition:all .3s ease;font-size:1em}.page-btn:hover:not(:disabled){background:var(--main-blue);color:#fff}.page-btn:disabled{opacity:.5;cursor:not-allowed}.page-info{color:#6b7280;font-size:.9em}.customer-detail-panel{flex:1;background:#fff;border-radius:16px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);display:flex;flex-direction:column;overflow:hidden}.empty-detail{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b7280;padding:40px}.empty-detail svg{margin-bottom:20px;opacity:.5}.detail-content{flex:1;overflow-y:auto;padding:20px}.detail-section{margin-bottom:30px;padding-bottom:30px;border-bottom:2px solid var(--gray-border)}.detail-section:last-child{border-bottom:none}.section-title{font-size:1.2em;font-weight:700;color:var(--main-blue);margin:0 0 15px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.info-form{display:flex;flex-direction:column;gap:12px}.form-row{display:flex;gap:15px}.form-field{flex:1;display:flex;flex-direction:column;gap:6px}.form-field.full-width{flex:1 1 100%}.field-label{font-weight:600;color:var(--main-blue);font-size:.85em;margin-bottom:4px}.field-value{padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#374151;font-size:.9em;word-break:break-word;min-height:20px}.field-value a{color:var(--main-blue);text-decoration:none}.field-value a:hover{text-decoration:underline}.btn-edit,.btn-add-small{padding:8px 16px;border-radius:6px;font-weight:600;font-size:.85em;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;gap:6px}.btn-add-small{background:var(--main-blue);color:#fff;font-size:.8em;padding:6px 12px}.btn-add-small:hover{background:var(--main-accent)}.opportunities-table,.activities-table{overflow-x:auto}.opportunities-table table,.activities-table table{width:100%;border-collapse:collapse}.opportunities-table th,.activities-table th{padding:10px 12px;text-align:left;font-weight:600;font-size:.85em;color:var(--main-blue);background:#f9fafb;border-bottom:2px solid var(--gray-border);white-space:nowrap}.opportunities-table td,.activities-table td{padding:10px 12px;border-bottom:1px solid #e5e7eb;font-size:.85em;color:#374151}.opportunities-table tbody tr.clickable-row,.activities-table tbody tr.clickable-row{cursor:pointer;transition:all .2s ease}.opportunities-table tbody tr.clickable-row:hover,.activities-table tbody tr.clickable-row:hover{background:#f3f4f6}.stage-badge,.activity-type-badge{padding:4px 10px;border-radius:6px;font-size:.75em;font-weight:600;background:var(--main-blue-light);color:var(--main-blue)}.value{color:var(--main-accent);font-weight:600}.empty-state,.empty-state-small{text-align:center;padding:40px;color:#6b7280}.empty-state-small{padding:20px;font-size:.9em}@media (max-width: 1200px){.crm-split-layout{flex-direction:column;height:auto}.customer-list-panel{flex:1;max-height:500px}.customer-detail-panel{flex:1;min-height:600px}}@media (max-width: 768px){.crm-dashboard-container{padding:0 10px}.dashboard-header{flex-direction:column;align-items:flex-start;gap:15px}.header-actions{width:100%;flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}.list-filters{padding:12px 15px;flex-wrap:wrap;gap:10px}.search-box{flex:1 1 100%;min-width:0}.filter-select{flex:1 1 calc(50% - 5px);min-width:120px;max-width:none;font-size:.75em!important}.customers-table{font-size:.85em}.customers-table th,.customers-table td{padding:8px 12px}.form-row{flex-direction:column;gap:12px}.form-field{width:100%}.section-header{flex-direction:column;align-items:flex-start;gap:10px}}.customer-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.customer-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.customers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:25px}.customer-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.customer-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.customer-name{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.customer-info{display:flex;flex-direction:column;gap:10px;padding:15px;background:#f9fafb;border-radius:12px}.customer-date{color:#9ca3af;font-size:.85em}@media (max-width: 768px){.customer-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.customers-grid{grid-template-columns:1fr}}.customers-list{display:flex;flex-direction:column;gap:15px}.customer-list-item{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.customer-list-item:hover{transform:translate(5px);box-shadow:0 4px 12px #18454c1f}.list-meta .customer-date{color:#9ca3af;margin-left:auto}.customer-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.customer-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.customer-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:1px}.status-badge.potential{background:#dbeafe;color:#1e40af}.status-badge.lost{background:#fee2e2;color:#991b1b}.btn-edit,.btn-add{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none}.btn-add{background:var(--main-blue);color:#fff}.btn-add:hover{background:var(--main-accent)}.section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0}.contacts-list,.opportunities-list{display:flex;flex-direction:column;gap:15px}.contact-item,.opportunity-item{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#f9fafb;border-radius:12px;transition:all .3s ease}.opportunity-item{cursor:pointer}.opportunity-item:hover{background:#f3f4f6;transform:translate(5px)}.contact-info,.opportunity-info{flex:1}.contact-name,.opportunity-title{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0 0 8px;display:flex;align-items:center;gap:10px}.contact-meta,.opportunity-meta{display:flex;gap:15px;color:#6b7280;font-size:.9em;flex-wrap:wrap}.opportunity-meta{align-items:center}.stage-badge{padding:4px 12px;border-radius:8px;font-size:.8em;font-weight:600;background:var(--main-blue-light);color:var(--main-blue)}.opportunity-meta .value{color:var(--main-accent);font-weight:600}.opportunity-meta .probability{font-size:1em;font-weight:700;color:var(--main-blue)}.btn-view{background:var(--main-blue);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.85em;cursor:pointer;transition:all .3s ease}.empty-state-small{text-align:center;padding:30px;color:#6b7280}.activities-list{display:flex;flex-direction:column;gap:15px}.activity-item{padding:20px;background:#f9fafb;border-radius:12px;border-left:4px solid var(--main-blue);transition:all .3s ease}.activity-item:hover{background:#f3f4f6;transform:translate(5px)}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.activity-type-badge{padding:4px 12px;border-radius:8px;font-size:.85em;font-weight:600;background:var(--main-blue-light);color:var(--main-blue)}.activity-date{color:#6b7280;font-size:.9em}.activity-subject{font-size:1.1em;font-weight:700;color:var(--main-blue);margin-bottom:10px}.activity-content{display:flex;flex-direction:column;gap:10px}.activity-text{color:#374151;line-height:1.6;word-break:break-word}.activity-meta{display:flex;gap:15px;color:#6b7280;font-size:.9em;flex-wrap:wrap;align-items:center}.activity-meta span{display:flex;align-items:center;gap:5px}.attachment-badge{padding:4px 8px;border-radius:6px;background:#e5e7eb;color:#374151;font-size:.85em}.activity-notes{padding:10px;background:#fef3c7;border-radius:8px;color:#92400e;font-size:.9em;margin-top:8px}@media (max-width: 768px){.customer-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:15px}.activity-header,.activity-meta{flex-direction:column;align-items:flex-start;gap:8px}}.customer-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.customer-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.customer-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=url],.form-group input[type=number],.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;box-sizing:border-box}@media (max-width: 768px){.customer-form-container{padding:0 20px}.customer-form{padding:25px}.form-row{grid-template-columns:1fr}}.contact-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.contact-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.contacts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:25px}.contact-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.contact-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.card-header{display:flex;align-items:center;gap:15px}.contact-avatar{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5em;font-weight:700;flex-shrink:0}.contact-info{flex:1}.contact-name{font-size:1.2em;font-weight:700;color:var(--main-blue);margin:0 0 5px;display:flex;align-items:center;gap:10px}.primary-badge{padding:2px 8px;border-radius:8px;font-size:.7em;font-weight:600;background:var(--main-accent);color:#fff}.contact-title{color:#6b7280;font-size:.9em}.contact-details{display:flex;flex-direction:column;gap:8px;padding:15px;background:#f9fafb;border-radius:12px}.detail-item{display:flex;align-items:center;gap:10px;font-size:.9em}.detail-label{font-weight:600;color:var(--main-blue);min-width:60px}.detail-value{color:#374151;word-break:break-word}.status-badge.inactive{background:#e5e7eb;color:#374151}.contact-date{color:#9ca3af;font-size:.85em}@media (max-width: 768px){.contact-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.contacts-grid{grid-template-columns:1fr}}.contacts-list{display:flex;flex-direction:column;gap:15px}.contact-list-item{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.contact-list-item:hover{transform:translate(5px);box-shadow:0 4px 12px #18454c1f}.list-header-info{display:flex;align-items:center;gap:15px;margin-bottom:10px}.list-header-info .contact-avatar{width:50px;height:50px;font-size:1.2em}.list-meta .contact-date{color:#9ca3af;margin-left:auto}.contact-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.contact-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.contact-avatar-large{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:3em;font-weight:700;flex-shrink:0}.contact-name{font-size:2em;font-weight:900;color:var(--main-blue);margin:0 0 10px;letter-spacing:1px;display:flex;align-items:center;gap:15px}.primary-badge{padding:6px 16px;border-radius:12px;font-size:.6em;font-weight:600;background:var(--main-accent);color:#fff}.contact-title{color:#6b7280;font-size:1.1em;margin:0}.info-value a{color:var(--main-blue);text-decoration:none}.info-value a:hover{text-decoration:underline}.status-badges{display:flex;gap:10px;flex-wrap:wrap}.status-badge.primary{background:var(--main-accent);color:#fff}.status-badge.normal{background:#e5e7eb;color:#374151}.notes-content{color:#6b7280;font-size:1.05em;line-height:1.8;margin:0;padding:20px;background:#f9fafb;border-radius:12px}@media (max-width: 768px){.contact-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;text-align:center}.info-grid{grid-template-columns:1fr}}.contact-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.contact-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.contact-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.form-group input[type=text],.form-group input[type=email],.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;box-sizing:border-box}.form-group textarea{resize:vertical;min-height:100px}@media (max-width: 768px){.contact-form-container{padding:0 20px}.contact-form{padding:25px}.form-row{grid-template-columns:1fr}}.opportunity-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.opportunity-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.opportunities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:25px}.opportunity-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.opportunity-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.opportunity-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.stage-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;white-space:nowrap}.opportunity-description{color:#6b7280;font-size:.95em;line-height:1.6;margin:0;flex:1}.opportunity-info{display:flex;flex-direction:column;gap:10px;padding:15px;background:#f9fafb;border-radius:12px}.info-value.probability{color:var(--main-blue);font-weight:700;font-size:1.1em}.opportunity-date{color:#9ca3af;font-size:.85em}@media (max-width: 768px){.opportunity-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.opportunities-grid{grid-template-columns:1fr}}.opportunities-list{display:flex;flex-direction:column;gap:15px}.opportunity-list-item{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.opportunity-list-item:hover{transform:translate(5px);box-shadow:0 4px 12px #18454c1f}.list-meta .probability{color:var(--main-blue);font-weight:700}.list-meta .opportunity-date{color:#9ca3af;margin-left:auto}@media (max-width: 768px){.filters{flex-direction:column}.search-box{width:100%}}.opportunity-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.opportunity-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.opportunity-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:1px}.stage-badge{padding:6px 16px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap}.stage-badge.prospecting{background:#dbeafe;color:#1e40af}.stage-badge.qualification{background:#fef3c7;color:#92400e}.stage-badge.proposal{background:#e0e7ff;color:#3730a3}.stage-badge.negotiation{background:#fce7f3;color:#9f1239}.stage-badge.closed_won{background:#d1fae5;color:#065f46}.stage-badge.closed_lost{background:#fee2e2;color:#991b1b}.info-value.probability{color:var(--main-blue);font-weight:700;font-size:1.2em}@media (max-width: 768px){.opportunity-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}}.opportunity-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.opportunity-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.opportunity-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.readonly-select{background:#f9fafb;cursor:not-allowed}@media (max-width: 768px){.opportunity-form-container{padding:0 20px}.opportunity-form{padding:25px}.form-row{grid-template-columns:1fr}}.contract-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.contract-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.header-actions{display:flex;gap:15px;align-items:center}.view-toggle{display:flex;gap:5px;background:#fff;border-radius:8px;padding:4px;box-shadow:0 2px 8px #0000001a}.view-btn{padding:8px 12px;border:none;background:transparent;color:#6b7280;font-size:1.2em;cursor:pointer;border-radius:6px;transition:all .3s ease}.view-btn:hover{background:#f3f4f6}.contracts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:25px}.contract-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.contract-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.contract-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.contract-number{font-size:.9em;color:#6b7280;font-weight:600;margin-top:-10px}.contract-info{display:flex;flex-direction:column;gap:10px;padding:15px;background:#f9fafb;border-radius:12px}.info-label{font-weight:600;color:var(--main-blue);min-width:100px}.info-value.value{color:var(--main-accent);font-weight:700;font-size:1.1em}.assignee-info{display:flex;align-items:center;gap:8px}.assignee-label{font-size:.85em;color:#6b7280;font-weight:600}.assignee-name{font-size:.9em;color:var(--main-blue);font-weight:600}.contract-date{color:#9ca3af;font-size:.85em}.contracts-list{display:flex;flex-direction:column;gap:15px}.contract-list-item{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.contract-list-item:hover{transform:translate(5px);box-shadow:0 4px 12px #18454c1f}.list-content{display:flex;flex-direction:column;gap:10px}.list-header-info{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:10px}.list-meta{display:flex;gap:20px;color:#6b7280;font-size:.9em;flex-wrap:wrap;align-items:center}.list-meta .value{color:var(--main-accent);font-weight:700}.list-meta .contract-date{color:#9ca3af;margin-left:auto}@media (max-width: 768px){.contract-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.contracts-grid{grid-template-columns:1fr}.filters{flex-direction:column}.search-box{width:100%}}.contract-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.contract-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.contract-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:1px}.contract-number{font-size:.9em;color:#6b7280;font-weight:600;margin-top:5px}.info-value.value{color:var(--main-accent);font-weight:700;font-size:1.3em}.link-button{background:none;border:none;color:var(--main-blue);font-size:1.05em;cursor:pointer;text-align:left;padding:0;font-weight:600}.link-button:hover{color:var(--main-accent);text-decoration:underline}.description-content,.terms-content,.notes-content{color:#6b7280;font-size:1.05em;line-height:1.8;margin:0;padding:20px;background:#f9fafb;border-radius:12px;white-space:pre-wrap}.attachment-info{margin-top:15px}.attachment-links{display:flex;flex-direction:column;gap:12px}.attachment-item{display:flex;align-items:center;gap:15px;padding:12px 15px;background:#f9fafb;border:1px solid var(--gray-border);border-radius:8px;transition:all .3s ease}.attachment-item:hover{background:#f3f4f6;border-color:var(--main-blue)}.attachment-icon{font-size:1.2em}.attachment-name{flex:1;color:var(--main-blue);font-weight:500;font-size:.95em;word-break:break-all}.attachment-actions{display:flex;gap:8px}.btn-preview,.btn-download{padding:6px 12px;border:none;border-radius:6px;font-size:.85em;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:4px}.btn-preview{background:#dbeafe;color:#1e40af}.btn-preview:hover{background:#bfdbfe;transform:translateY(-1px)}.btn-download{background:#d1fae5;color:#065f46}.btn-download:hover{background:#a7f3d0;transform:translateY(-1px)}@media (max-width: 768px){.contract-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}}.contract-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.contract-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.contract-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.form-section:last-of-type{border-bottom:none}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;box-sizing:border-box}.readonly-input,.readonly-select{background:#f3f4f6!important;color:#6b7280!important}.checkbox-group{display:flex;align-items:center}.checkbox-group label{display:flex;align-items:center;gap:10px;cursor:pointer;margin-bottom:0}.checkbox-group input[type=checkbox]{width:auto;margin:0;cursor:pointer}.uploading{color:#6b7280;font-size:.9em;margin-top:10px;font-style:italic}.attachments-list{margin-top:20px;padding:15px;background:#f9fafb;border-radius:8px;border:1px solid var(--gray-border)}.attachments-list h4{margin:0 0 15px;color:var(--main-blue);font-size:1em;font-weight:600}.attachment-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 15px;background:#fff;border-radius:8px;margin-bottom:10px;border:1px solid var(--gray-border)}.attachment-item:last-child{margin-bottom:0}.attachment-name{flex:1;color:var(--main-blue);font-weight:500;font-size:.95em}.btn-remove-attachment{background:#fee2e2;color:#991b1b;border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:1.2em;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-weight:600}.btn-remove-attachment:hover:not(:disabled){background:#fecaca;transform:scale(1.1)}.btn-remove-attachment:disabled{opacity:.5;cursor:not-allowed}.btn-cancel{padding:12px 24px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:2px solid var(--gray-border);background:#fff;color:var(--main-blue)}.btn-cancel:hover:not(:disabled){background:#f3f4f6}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-submit{padding:12px 24px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;box-shadow:0 4px 15px #ff812b4d}.btn-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 768px){.contract-form-container{padding:0 20px}.contract-form{padding:25px}.form-row{grid-template-columns:1fr}}.crm-management-page{min-height:100vh;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8);display:flex;flex-direction:column}.crm-management-embedded{display:block;width:100%;background:transparent;padding:0;min-height:auto;position:relative;z-index:0;max-width:100%;overflow:visible}.crm-management-container{max-width:1600px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.crm-management-embedded-container{max-width:100%;margin:0;padding:20px;flex:1;width:100%}.crm-management{max-width:100%;margin:0;width:100%;background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a;position:relative;z-index:0}.management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;width:100%}.header-left{display:flex;align-items:center;gap:20px}.page-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:2px}.data-count{font-size:1em;color:#6b7280;font-weight:600}.export-buttons{display:flex;gap:10px}.btn-export-excel,.btn-export-csv{padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95em;display:flex;align-items:center;gap:8px}.btn-export-excel{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-export-excel:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-export-csv{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-export-csv:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.tab{padding:12px 24px;border:none;background:transparent;color:#6b7280;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent;margin-bottom:-2px}.tab:hover{color:var(--main-blue)}.tab.active{color:var(--main-blue);border-bottom-color:var(--main-blue)}.search-box{flex:1;min-width:250px}.search-input{width:100%;padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;font-family:inherit;transition:all .3s ease;background:#fff}.filter-group{min-width:150px}.filter-select{padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%}.data-table{overflow-x:auto}.data-table table{width:100%;border-collapse:collapse;background:#fff}.data-table th{cursor:default}padding: 12px 16px; text-align: left; font-weight: 600; color: var(--main-blue); border-bottom: 2px solid var(--gray-border); white-space: nowrap; } .data-table td{padding:12px 16px;border-bottom:1px solid #e5e7eb;color:#374151}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.status-badge.potential{background:#fef3c7;color:#92400e}.status-badge.lost{background:#f3f4f6;color:#6b7280}.status-badge.draft{background:#f3f4f6;color:#374151}.status-badge.expired{background:#fee2e2;color:#991b1b}.status-badge.terminated{background:#f3f4f6;color:#6b7280}.status-badge.renewed{background:#dbeafe;color:#1e40af}.status-badge.pending_renewal{background:#fef3c7;color:#92400e}.stage-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;background:#e0e7ff;color:#3730a3}.btn-view{padding:6px 12px;border:none;border-radius:6px;background:var(--main-blue);color:#fff;font-size:.85em;font-weight:600;cursor:pointer;transition:all .3s ease}@media (max-width: 768px){.crm-management-container{padding:0 20px}.crm-management{padding:20px}.management-header{flex-direction:column;align-items:flex-start;gap:20px}.tabs{flex-wrap:wrap}.filters{flex-direction:column}.data-table{overflow-x:scroll}}.bi-dashboard-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.bi-dashboard-container{max-width:1600px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:40px}.page-title{font-size:2.5em;font-weight:900;color:var(--main-blue);margin:0 0 8px;letter-spacing:2px}.page-subtitle{font-size:1.1em;color:#6b7280;margin:0;font-weight:500}.header-actions{display:flex;gap:15px}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:12px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;gap:8px}.btn-primary{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;box-shadow:0 4px 15px #ff812b4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.btn-secondary{background:#fff;color:var(--main-blue);border:2px solid var(--main-blue)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:40px}.kpi-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);transition:all .3s ease;position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--main-blue) 0%,var(--main-accent) 100%)}.kpi-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c26}.kpi-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.kpi-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5em}.kpi-trend{font-size:.85em;font-weight:600;padding:4px 10px;border-radius:8px}.kpi-trend.up{background:#d1fae5;color:#065f46}.kpi-trend.down{background:#fee2e2;color:#991b1b}.kpi-content{display:flex;flex-direction:column;gap:8px}.kpi-value{font-size:2.2em;font-weight:700;color:var(--main-blue);line-height:1}.kpi-label{font-size:.95em;color:#6b7280;font-weight:500}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:40px;min-height:400px}.chart-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);transition:all .3s ease;min-height:400px;display:flex;flex-direction:column}.chart-card:hover{box-shadow:0 8px 30px #18454c1f;transform:translateY(-2px)}.chart-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.chart-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0 0 4px}.chart-subtitle{font-size:.9em;color:#6b7280;margin:0}.chart-actions{display:flex;gap:8px}.chart-filter{padding:6px 12px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;font-size:.85em;font-weight:500;cursor:pointer;transition:all .2s ease}.chart-filter:hover{border-color:var(--main-blue);color:var(--main-blue)}.chart-filter.active{background:var(--main-blue);color:#fff;border-color:var(--main-blue)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:40px}.stat-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:20px}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.stat-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.8em;flex-shrink:0}.stat-label{font-size:.9em;color:#6b7280;font-weight:600;margin-bottom:8px}.stat-value{font-size:2.5em;font-weight:700;color:var(--main-blue);line-height:1}.recent-section{display:none!important}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin:0}.btn-link{background:none;border:none;color:var(--main-blue);font-weight:600;cursor:pointer;font-size:.9em;transition:all .3s ease;display:flex;align-items:center;gap:4px}.reports-list{display:flex;flex-direction:column;gap:15px}.report-item{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#f9fafb;border-radius:12px;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.report-item:hover{background:#fff;border-color:var(--main-blue);transform:translate(5px);box-shadow:0 4px 12px #18454c1a}.report-info{flex:1}.report-title{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0 0 8px}.report-meta{display:flex;gap:15px;color:#6b7280;font-size:.9em}.report-type{font-weight:600;color:var(--main-blue)}.empty-state{text-align:center;padding:60px 20px;display:flex;flex-direction:column;align-items:center;gap:20px;color:#6b7280}.empty-icon{font-size:4em;opacity:.5;margin-bottom:10px}.empty-state p{font-size:1.2em;color:#6b7280;margin:0}.empty-state .btn-primary{margin-top:10px}@media (max-width: 1200px){.charts-grid{grid-template-columns:1fr}}@media (max-width: 768px){.bi-dashboard-container{padding:0 20px}.dashboard-header{flex-direction:column;align-items:flex-start;gap:20px}.header-actions{width:100%;flex-direction:column}.header-actions button{width:100%;justify-content:center}.kpi-grid,.stats-grid,.charts-grid{grid-template-columns:1fr}.chart-header{flex-direction:column;gap:12px}.chart-actions{width:100%;justify-content:flex-start}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chart-card,.kpi-card,.stat-card{animation:fadeIn .5s ease-out}.chart-card:nth-child(1){animation-delay:.1s}.chart-card:nth-child(2){animation-delay:.2s}.chart-card:nth-child(3){animation-delay:.3s}.chart-card:nth-child(4){animation-delay:.4s}.report-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.report-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.filter-actions{margin-left:auto;display:flex;align-items:flex-end}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:25px}.report-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.report-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.report-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.report-description{color:#6b7280;font-size:.95em;line-height:1.6;margin:0}.report-info{display:flex;flex-direction:column;gap:8px;padding:15px;background:#f9fafb;border-radius:12px}.info-item{display:flex;align-items:center;gap:10px;font-size:.9em}.info-label{font-weight:600;color:var(--main-blue);min-width:80px}.info-value{color:#374151;word-break:break-word}.report-date{color:#9ca3af;font-size:.85em}@media (max-width: 768px){.report-list-container{padding:0 20px}.reports-grid{grid-template-columns:1fr}.filters{flex-direction:column}.search-box{width:100%}.filter-actions{margin-left:0;width:100%}.filter-actions .btn-create{width:100%}}.report-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.report-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.header-info{flex:1;display:flex;align-items:center;gap:20px}.report-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:1px}.btn-run,.btn-edit{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none}.btn-run{background:var(--main-accent);color:#fff}.btn-run:hover:not(:disabled){background:#ff8c2e;transform:translateY(-1px)}.btn-run:disabled,.btn-edit:disabled{opacity:.5;cursor:not-allowed}.sql-code{background:#1f2937;color:#f9fafb;padding:20px;border-radius:12px;overflow-x:auto;font-family:Courier New,monospace;font-size:.9em;line-height:1.6;margin:0}.data-table-container{overflow-x:auto;margin-top:20px}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}.data-table thead{background:var(--main-blue-light)}.data-table th{padding:12px 15px;text-align:left;font-weight:700;color:var(--main-blue);font-size:.9em;border-bottom:2px solid var(--gray-border)}.data-table td{padding:12px 15px;border-bottom:1px solid #e5e7eb;color:#374151}.data-total{margin-top:15px;padding:10px;background:var(--main-blue-light);border-radius:8px;font-weight:600;color:var(--main-blue);text-align:right}@media (max-width: 768px){.report-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid{grid-template-columns:1fr}.data-table-container{overflow-x:scroll}}.report-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.report-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.report-form{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.form-group input[type=text],.form-group textarea,.form-group select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box;color:var(--main-blue)}.code-textarea{font-family:Courier New,monospace;font-size:.9em;background:#f9fafb}.form-hint{color:#6b7280;font-size:.9em;margin-top:-5px;display:block}@media (max-width: 768px){.report-form-container{padding:0 20px}.report-form{padding:25px}.form-row{grid-template-columns:1fr}}.report-form-modal{display:flex;flex-direction:column;gap:20px;max-height:70vh;overflow-y:auto;padding-right:10px}.report-form-modal .form-section{background:#f9fafb;border-radius:12px;padding:20px}.report-form-modal .section-title{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0 0 15px;padding-bottom:10px;border-bottom:2px solid var(--gray-border)}.report-form-modal .form-group{margin-bottom:15px}.report-form-modal .form-group:last-child{margin-bottom:0}.report-form-modal .form-group label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:6px;font-size:.9em}.report-form-modal .form-group input,.report-form-modal .form-group select,.report-form-modal .form-group textarea{width:100%;padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .2s ease}.report-form-modal .form-group input:focus,.report-form-modal .form-group select:focus,.report-form-modal .form-group textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.report-form-modal .form-group input:disabled,.report-form-modal .form-group select:disabled,.report-form-modal .form-group textarea:disabled{background:#f3f4f6;cursor:not-allowed}.report-form-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.report-form-modal .code-textarea{font-family:Fira Code,Monaco,Consolas,monospace;font-size:.9em}.report-form-modal .checkbox-group{display:flex;flex-direction:column;gap:10px}.report-form-modal .checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.95em;color:var(--main-blue)}.report-form-modal .checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.report-form-modal .form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--gray-border)}.report-form-modal .btn-cancel{padding:10px 24px;border:2px solid var(--gray-border);border-radius:8px;background:#fff;color:#6b7280;font-weight:600;cursor:pointer;transition:all .2s ease}.report-form-modal .btn-cancel:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.report-form-modal .btn-submit{padding:10px 24px;border:none;border-radius:8px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease}.report-form-modal .btn-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ff812b4d}.report-form-modal .btn-submit:disabled,.report-form-modal .btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.report-form-modal .form-row{grid-template-columns:1fr}}.dashboard-list-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.dashboard-list-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.dashboards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:25px}.dashboard-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.dashboard-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0;flex:1;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.default-badge{padding:2px 10px;border-radius:8px;font-size:.7em;font-weight:600;background:var(--main-accent);color:#fff;white-space:nowrap}.public-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;background:#d1fae5;color:#065f46;white-space:nowrap}.dashboard-description{color:#6b7280;font-size:.95em;line-height:1.6;margin:0}.dashboard-reports{display:flex;align-items:center;gap:10px;padding:12px;background:#f9fafb;border-radius:8px}.reports-label{font-weight:600;color:var(--main-blue);font-size:.9em}.reports-count{color:var(--main-blue);font-weight:700;font-size:1.1em}.creator-info{display:flex;align-items:center;gap:8px}.creator-label{font-size:.85em;color:#6b7280;font-weight:600}.creator-name{font-size:.9em;color:var(--main-blue);font-weight:600}.dashboard-date{color:#9ca3af;font-size:.85em}@media (max-width: 768px){.dashboard-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.dashboards-grid{grid-template-columns:1fr}.filters{flex-direction:column}.search-box{width:100%}}.dashboard-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.dashboard-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:30px;border-bottom:2px solid var(--gray-border)}.header-info{flex:1;display:flex;flex-direction:column;gap:15px}.dashboard-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:1px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.default-badge{padding:4px 12px;border-radius:8px;font-size:.6em;font-weight:600;background:var(--main-accent);color:#fff;white-space:nowrap}.public-badge{padding:6px 16px;border-radius:12px;font-size:.75em;font-weight:600;background:#d1fae5;color:#065f46;white-space:nowrap;align-self:flex-start}.header-actions{display:flex;gap:10px}.btn-edit{padding:10px 20px;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .3s ease;border:none;background:#f3f4f6;color:var(--main-blue)}.info-section:last-child{border-bottom:none}.section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0 0 20px}.description-content,.notes-content{color:#6b7280;font-size:1.05em;line-height:1.8;margin:0;padding:20px;background:#f9fafb;border-radius:12px}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.report-card{background:#f9fafb;border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.report-card:hover{background:#fff;border-color:var(--main-blue);transform:translateY(-2px);box-shadow:0 4px 15px #18454c1a}.report-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px;gap:10px}.report-title{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.report-type-badge{padding:4px 10px;border-radius:8px;font-size:.75em;font-weight:600;background:var(--main-blue-light);color:var(--main-blue);white-space:nowrap}.report-description{color:#6b7280;font-size:.9em;line-height:1.6;margin:0 0 10px}.report-footer{display:flex;align-items:center;gap:10px;padding-top:10px;border-top:1px solid var(--gray-border)}.data-source{font-size:.85em;color:#6b7280}@media (max-width: 768px){.dashboard-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column;gap:15px}.info-grid,.reports-grid{grid-template-columns:1fr}}.dashboard-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.dashboard-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.dashboard-form{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.form-section{margin-bottom:30px;padding-bottom:30px;border-bottom:2px solid var(--gray-border)}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title{font-size:1.4em;font-weight:700;color:var(--main-blue);margin-bottom:25px;padding-bottom:10px;border-bottom:2px solid var(--main-blue-light)}.form-group input[type=text],.form-group textarea{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box;color:var(--main-blue)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.form-group input:disabled,.form-group textarea:disabled{background:#f9fafb;cursor:not-allowed}.reports-selection{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px;max-height:400px;overflow-y:auto;padding:15px;background:#f9fafb;border-radius:12px}.report-checkbox{display:flex;align-items:center;gap:12px;padding:15px;background:#fff;border-radius:8px;border:2px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.report-checkbox:hover{border-color:var(--main-accent);background:#fff7ed}.report-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;flex-shrink:0}.report-checkbox input[type=checkbox]:checked+.report-info{color:var(--main-blue)}.report-info{flex:1;display:flex;flex-direction:column;gap:5px}.report-title{font-weight:600;color:var(--main-blue);font-size:1em}.report-type{font-size:.85em;color:#6b7280}.no-reports{text-align:center;padding:40px;background:#f9fafb;border-radius:12px}.no-reports p{color:#6b7280;margin-bottom:15px}.btn-link{background:none;border:none;color:var(--main-blue);font-weight:600;cursor:pointer;font-size:1em;text-decoration:underline;transition:all .3s ease}.btn-link:hover{color:var(--main-accent)}.selected-count{margin-top:15px;padding:10px 15px;background:var(--main-blue-light);border-radius:8px;font-weight:600;color:var(--main-blue);text-align:center}@media (max-width: 768px){.dashboard-form-container{padding:0 20px}.dashboard-form{padding:25px}.reports-selection{grid-template-columns:1fr}}.dashboard-form-modal{display:flex;flex-direction:column;gap:20px;max-height:70vh;overflow-y:auto;padding-right:10px}.dashboard-form-modal .form-section{background:#f9fafb;border-radius:12px;padding:20px}.dashboard-form-modal .section-title{font-size:1.1em;font-weight:700;color:var(--main-blue);margin:0 0 15px;padding-bottom:10px;border-bottom:2px solid var(--gray-border)}.dashboard-form-modal .form-group{margin-bottom:15px}.dashboard-form-modal .form-group:last-child{margin-bottom:0}.dashboard-form-modal .form-group label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:6px;font-size:.9em}.dashboard-form-modal .form-group input,.dashboard-form-modal .form-group select,.dashboard-form-modal .form-group textarea{width:100%;padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .2s ease}.dashboard-form-modal .form-group input:focus,.dashboard-form-modal .form-group select:focus,.dashboard-form-modal .form-group textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.dashboard-form-modal .form-group input:disabled,.dashboard-form-modal .form-group select:disabled,.dashboard-form-modal .form-group textarea:disabled{background:#f3f4f6;cursor:not-allowed}.dashboard-form-modal .no-reports{text-align:center;padding:20px;color:#6b7280}.dashboard-form-modal .reports-selection{display:flex;flex-direction:column;gap:10px;max-height:200px;overflow-y:auto}.dashboard-form-modal .report-checkbox{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border:2px solid var(--gray-border);border-radius:8px;cursor:pointer;transition:all .2s ease}.dashboard-form-modal .report-checkbox:hover{border-color:var(--main-accent);background:#fff7ed}.dashboard-form-modal .report-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.dashboard-form-modal .report-info{display:flex;flex-direction:column;gap:4px}.dashboard-form-modal .report-title{font-weight:600;color:var(--main-blue)}.dashboard-form-modal .report-type{font-size:.8em;color:#6b7280}.dashboard-form-modal .selected-count{margin-top:10px;padding:8px 12px;background:#dbeafe;border-radius:6px;font-size:.9em;color:#1e40af;font-weight:600}.dashboard-form-modal .checkbox-group{display:flex;flex-direction:column;gap:10px}.dashboard-form-modal .checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.95em;color:var(--main-blue)}.dashboard-form-modal .checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.dashboard-form-modal .form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--gray-border)}.dashboard-form-modal .btn-cancel{padding:10px 24px;border:2px solid var(--gray-border);border-radius:8px;background:#fff;color:#6b7280;font-weight:600;cursor:pointer;transition:all .2s ease}.dashboard-form-modal .btn-cancel:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.dashboard-form-modal .btn-submit{padding:10px 24px;border:none;border-radius:8px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease}.dashboard-form-modal .btn-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ff812b4d}.dashboard-form-modal .btn-submit:disabled,.dashboard-form-modal .btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.dashboard-form-modal .form-row{grid-template-columns:1fr}}.bi-management{padding:30px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.tab-switcher{display:flex;gap:10px;margin-bottom:20px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #18454c14;border:1px solid var(--gray-border)}.tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-radius:8px;font-weight:600;font-size:1em;color:var(--main-blue);cursor:pointer;transition:all .3s ease}.tab-btn:hover{background:var(--main-blue-light)}.tab-btn.active{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;box-shadow:0 2px 8px #ff812b4d}.btn-secondary{padding:12px 24px;border-radius:10px;font-weight:600;font-size:.95em;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;gap:8px;background:#fff;color:var(--main-blue);border:1px solid var(--main-blue)}.btn-secondary:hover{background:var(--main-blue);color:#fff}.table-container{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb}.data-table thead{background:#f9fafb}.data-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--main-blue);font-size:.9em;border-bottom:2px solid #e5e7eb;cursor:default}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.data-table th.sortable:hover{background-color:#0000000d}.data-table td{padding:12px 16px;border-bottom:1px solid #f3f4f6;color:#374151;font-size:.9em}.data-table tbody tr:hover{background:#f9fafb}.item-title{font-weight:600;color:var(--main-blue);cursor:pointer;display:flex;align-items:center;gap:8px;transition:color .2s ease}.item-title:hover{color:var(--main-accent)}.default-badge{padding:2px 8px;border-radius:6px;font-size:.75em;font-weight:600;background:var(--main-accent);color:#fff;margin-left:8px}.status-badge{padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap;display:inline-block}.status-badge.draft{background:#fef3c7;color:#92400e}.action-buttons{display:flex;gap:8px;align-items:center}.btn-edit,.btn-delete{width:32px;height:32px;padding:0;border-radius:6px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-edit{background:#dbeafe;color:#1e40af}.btn-edit:hover{background:#bfdbfe;transform:scale(1.1)}.btn-delete:hover{background:#fecaca;transform:scale(1.1)}.bi-action-dropdown{display:inline-block}.bi-btn-action-toggle{width:32px;height:32px;padding:0;border-radius:6px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:#e0f2fe;color:var(--main-blue)}.bi-btn-action-toggle:hover{background:#bae6fd;transform:rotate(90deg)}.bi-btn-action-toggle svg{width:18px;height:18px}.bi-dropdown-menu-portal{position:fixed;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;min-width:180px;z-index:99999;overflow:hidden}.bi-dropdown-menu-portal .dropdown-item{width:100%;padding:10px 16px;border:none;background:#fff;color:var(--main-blue);text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;font-size:.95em;font-weight:500;transition:all .2s ease;white-space:nowrap}.bi-dropdown-menu-portal .dropdown-item:hover{background:#f3f4f6}.bi-dropdown-menu-portal .dropdown-item.delete{color:#dc2626}.bi-dropdown-menu-portal .dropdown-item.delete:hover{background:#fee2e2}.bi-dropdown-menu-portal .dropdown-item svg{width:16px;height:16px;flex-shrink:0}.empty-cell{text-align:center;padding:40px;color:#6b7280}.loading{text-align:center;padding:40px;color:#6b7280;font-size:1.1em}@media (max-width: 768px){.bi-management{padding:20px 15px}.filters-section{flex-direction:column}.filters-left{width:100%}.filters-right{width:100%;justify-content:flex-end}.search-box{min-width:100%}.filter-group{width:100%}.table-container{overflow-x:scroll}}.proposal-management-page{padding:20px;background:#f5f7fa;min-height:100vh}.proposal-management-page.embedded{padding:0;margin:0;background:transparent;min-height:auto}.proposal-management-page.embedded .proposal-management-container{margin-top:0;padding-top:0}.proposal-management-page>.admin-header,.proposal-management-page>.admin-title,.proposal-management-page .management-header,.proposal-management-page .management-header>.page-title,.proposal-management-page .management-header>h1,.proposal-management-page .management-header>div>h1,.proposal-management-page .management-header>div>.page-title,.proposal-management-page h1.page-title,.proposal-management-page h1:first-of-type,.proposal-management-container>h1,.proposal-management-container>.page-title,.proposal-management-container>.management-header,.proposal-management-page h1:not(.proposal-title):not(.proposal-card h1):not(.proposal-list-item h1),.proposal-management-container h1:not(.proposal-title):not(.proposal-card h1):not(.proposal-list-item h1){display:none!important;visibility:hidden!important;height:0!important;margin:0!important;padding:0!important;font-size:0!important;line-height:0!important;overflow:hidden!important}.proposal-management-container{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}.filters{display:flex;gap:20px;margin-bottom:30px;flex-wrap:wrap;align-items:flex-end}.view-toggle{display:flex;gap:5px;background:#fff;padding:4px;border-radius:8px;box-shadow:0 2px 8px #18454c1a;margin-left:auto}.proposal-card,.proposal-list-item{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.proposal-card:hover,.proposal-list-item:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.proposal-list-item{flex-direction:row;align-items:center;gap:20px}.proposal-list-item:hover{transform:translate(4px)}.proposal-list-item .proposal-title{font-size:1.1em;margin:0;cursor:pointer}.proposal-list-item .admin-actions{flex-direction:row;gap:10px}.proposal-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0;flex:1;cursor:pointer}.proposal-title:hover{color:var(--main-accent)}.voting-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:15px;background:#f9fafb;border-radius:12px}.admin-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:15px;border-top:1px solid var(--gray-border);flex-direction:column}.btn-start-voting,.btn-approve,.btn-reject,.btn-view{padding:8px 16px;border:none;border-radius:8px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-view{background:var(--main-blue);color:#fff}.btn-view:hover{background:var(--main-accent);transform:translateY(-2px)}@media (max-width: 768px){.proposal-management-container{padding:15px}.filters{flex-direction:column}.view-toggle{margin-left:0}.proposals-grid{grid-template-columns:1fr}.proposal-list-item{flex-direction:column;align-items:flex-start}.admin-actions{width:100%}.admin-actions button{flex:1}}.messaging-management{padding:30px;height:100%;overflow-y:auto}.messaging-header{margin-bottom:30px}.messaging-header h2{display:flex;align-items:center;gap:10px;font-size:1.8em;color:var(--main-blue);margin:0}.messaging-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #0000001a;text-align:center}.stat-value{font-size:2.5em;font-weight:700;color:var(--main-blue);margin-bottom:10px}.stat-label{font-size:1em;color:#666}.messaging-content{display:grid;grid-template-columns:1fr 2fr;gap:20px;height:calc(100vh - 300px)}.rooms-panel,.messages-panel{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden}.panel-header{padding:20px;border-bottom:1px solid var(--gray-border);background:#f9fafb}.panel-header h3{margin:0 0 10px;font-size:1.3em;color:var(--main-blue)}.room-details{display:flex;gap:15px;font-size:.9em;color:#666}.rooms-list,.messages-list{flex:1;overflow-y:auto;padding:15px}.room-item{display:flex;justify-content:space-between;align-items:center;padding:15px;border:1px solid var(--gray-border);border-radius:8px;margin-bottom:10px;cursor:pointer;transition:all .2s}.room-item:hover{background:#f9fafb;border-color:var(--main-blue)}.room-item.active{background:#e0f2fe;border-color:var(--main-blue)}.room-info{flex:1}.room-name{font-weight:600;color:var(--main-blue);margin-bottom:5px}.room-meta{display:flex;gap:10px;font-size:.85em;color:#666}.room-type{background:#e0e7ff;color:#6366f1;padding:2px 8px;border-radius:4px}.room-actions{display:flex;gap:10px}.btn-delete{background:#fee2e2;color:#dc2626;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;transition:all .2s}.btn-delete:hover{background:#fecaca}.message-item{padding:15px;border-bottom:1px solid var(--gray-border)}.message-item.deleted{opacity:.6}.message-header{display:flex;justify-content:space-between;margin-bottom:8px}.sender{font-weight:600;color:var(--main-blue)}.time{font-size:.85em;color:#999}.message-content{color:#333;line-height:1.6;margin-bottom:8px}.deleted-text{color:#999;font-style:italic}.message-actions{display:flex;gap:10px}.btn-delete-small{background:#fee2e2;color:#dc2626;border:none;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:.85em}.btn-delete-small:hover{background:#fecaca}.empty-state{text-align:center;padding:40px;color:#999}.loading{text-align:center;padding:40px;color:#666}.panel-filters{display:flex;gap:10px;margin-top:15px}.search-input{flex:1;padding:8px 12px;border:1px solid var(--gray-border);border-radius:6px;font-size:.9em}.filter-select{padding:8px 12px;border:1px solid var(--gray-border);border-radius:6px;font-size:.9em;background:#fff}.message-filters{display:flex;gap:10px;margin-top:10px;align-items:center}.checkbox-label{display:flex;align-items:center;gap:5px;font-size:.9em;cursor:pointer}.checkbox-label input[type=checkbox]{cursor:pointer}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.header-actions{display:flex;gap:8px}.btn-icon{background:transparent;border:1px solid var(--gray-border);padding:6px 10px;border-radius:6px;cursor:pointer;color:var(--main-blue);transition:all .2s}.btn-icon:hover{background:#f9fafb;border-color:var(--main-blue)}.members-panel{border-top:1px solid var(--gray-border);background:#f9fafb;max-height:300px;overflow-y:auto}.members-header{display:flex;justify-content:space-between;align-items:center;padding:15px;border-bottom:1px solid var(--gray-border)}.members-header h4{margin:0;color:var(--main-blue)}.btn-close{background:transparent;border:none;cursor:pointer;color:#666;padding:4px}.members-list{padding:10px}.member-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#fff;border-radius:6px;margin-bottom:8px}.member-info{display:flex;flex-direction:column;gap:4px}.member-name{font-weight:600;color:var(--main-blue)}.member-role{font-size:.85em;color:#666}.btn-remove{background:#fee2e2;color:#dc2626;border:none;padding:4px 8px;border-radius:4px;cursor:pointer}.btn-remove:hover{background:#fecaca}.edit-room-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:30px;border-radius:12px;max-width:500px;width:90%}.modal-content h4{margin:0 0 20px;color:var(--main-blue)}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:600;color:#333}.form-group input,.form-group textarea{width:100%;padding:8px 12px;border:1px solid var(--gray-border);border-radius:6px;font-size:.9em}.form-group textarea{min-height:100px;resize:vertical}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.btn-cancel{background:#fff;color:var(--main-blue);border:1px solid var(--gray-border);padding:8px 16px;border-radius:6px;cursor:pointer}.btn-save{background:var(--main-blue);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer}.btn-save:hover{background:var(--brand-blue-light)}.message-type-badge{display:inline-block;background:#e0e7ff;color:#6366f1;padding:2px 6px;border-radius:4px;font-size:.75em;margin-left:8px}.message-read-status{margin-top:8px;font-size:.85em;color:#666}.read-count{color:#059669}.pagination,.pagination-bottom{display:flex;justify-content:center;align-items:center;gap:15px;padding:20px;margin-top:20px}.btn-page{background:#fff;color:var(--main-blue);border:1px solid var(--gray-border);padding:8px 16px;border-radius:6px;cursor:pointer;transition:all .2s}.btn-page:hover:not(:disabled){background:#f9fafb;border-color:var(--main-blue)}.btn-page:disabled{opacity:.5;cursor:not-allowed}.page-info{color:#666;font-size:.9em}.messaging-system-log-page{width:100%;min-height:100vh;background:#f5f7fa;padding:var(--space-xl)}.messaging-system-log-page.embedded{padding:0;min-height:auto;background:transparent}.messaging-system-log-container{max-width:1400px;margin:0 auto;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-xl)}.page-header{margin-bottom:var(--space-xl)}.page-title{display:flex;align-items:center;gap:var(--space-md);font-size:var(--font-size-2xl);font-weight:700;color:var(--main-blue);margin-bottom:var(--space-sm)}.page-subtitle{color:var(--gray-600);font-size:var(--font-size-base)}.filter-section{background:var(--gray-50);padding:var(--space-lg);border-radius:var(--radius-md);margin-bottom:var(--space-xl)}.filter-row{display:flex;gap:var(--space-md);align-items:flex-end;flex-wrap:wrap}.filter-group{flex:1;min-width:150px}.filter-group label{display:block;margin-bottom:var(--space-xs);font-weight:600;color:var(--gray-700);font-size:var(--font-size-sm)}.filter-group select,.filter-group input{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--gray-border);border-radius:var(--radius-sm);font-size:var(--font-size-base)}.filter-actions{display:flex;gap:var(--space-sm)}.stats-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg);margin-bottom:var(--space-xl)}.stat-card{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);padding:var(--space-lg);border-radius:var(--radius-md);color:#fff;text-align:center}.stat-value{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:var(--space-xs)}.stat-label{font-size:var(--font-size-sm);opacity:.9}.logs-section{margin-top:var(--space-xl)}.table-container{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--gray-border)}.data-table{width:100%;border-collapse:collapse;background:#fff}.data-table th{padding:var(--space-md);text-align:left;font-weight:600;color:var(--gray-700);border-bottom:2px solid var(--gray-border);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px}.data-table td{padding:var(--space-md);border-bottom:1px solid var(--gray-border);color:var(--gray-700)}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{font-weight:600;color:var(--main-blue)}.user-username{font-size:var(--font-size-sm);color:var(--gray-500)}.action-badge{font-weight:600;padding:4px 8px;border-radius:var(--radius-sm);display:inline-block}.user-agent-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);color:var(--gray-600)}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-lg);margin-top:var(--space-xl);padding:var(--space-lg)}.page-info{color:var(--gray-600);font-size:var(--font-size-sm)}.loading,.empty-state{text-align:center;padding:var(--space-3xl);color:var(--gray-500)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}.empty-state .icon{font-size:3em;color:var(--gray-400)}.document-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.document-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.document-list-container.embedded{max-width:100%;margin:0;padding:24px;background:#fff;border-radius:0}.btn-create{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 24px;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1em;box-shadow:0 4px 15px #ff812b4d}.btn-create:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.filters{display:flex;gap:20px;margin-bottom:30px;flex-wrap:wrap;align-items:flex-end;justify-content:space-between}.filters-left{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-end;flex:1;min-width:200px}.filters-right{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.search-box{flex:1;min-width:200px}.search-input{width:100%;padding:10px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease}.search-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.filter-select{padding:10px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);cursor:pointer;transition:all .3s ease}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:25px}.documents-list{display:flex;flex-direction:column;gap:15px}.document-list-item{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 12px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:20px}.document-list-item:hover{transform:translate(4px);box-shadow:0 4px 20px #18454c1f}.document-list-item .file-icon{font-size:2em;flex-shrink:0}.document-list-item .document-title{flex:1;margin:0;font-size:1.1em}.document-list-item .document-description{flex:2;margin:0;font-size:.9em;color:#6b7280}.document-list-item .document-meta{display:flex;flex-direction:row;gap:20px;padding:0;background:transparent;flex:1}.document-list-item .card-footer{border-top:none;padding-top:0;flex-direction:column;align-items:flex-end;gap:8px;min-width:150px}.document-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.document-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.file-icon{font-size:2.5em}.status-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;white-space:nowrap}.public-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;background:#dbeafe;color:#1e40af}.document-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0}.document-description{color:#6b7280;font-size:.95em;line-height:1.6;margin:0;flex:1}.document-meta{display:flex;flex-direction:column;gap:8px;padding:15px;background:#f9fafb;border-radius:12px}.meta-item{display:flex;align-items:center;gap:8px;font-size:.9em;color:#6b7280}.meta-item.category-item{flex:1;min-width:120px}.category-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:12px;font-size:.85em;font-weight:600;border:1px solid;transition:all .2s ease}.category-badge:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.category-badge svg{width:14px;height:14px;flex-shrink:0}.meta-label{font-weight:600;color:var(--main-blue)}.uploader-info{display:flex;align-items:center;gap:8px}.uploader-label{font-size:.85em;color:#6b7280;font-weight:600}.uploader-name{font-size:.9em;color:var(--main-blue);font-weight:600}.document-actions{display:flex;align-items:center;gap:10px}.btn-download,.btn-delete{background:var(--main-blue);color:#fff;border:none;padding:6px 12px;border-radius:8px;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:4px}.btn-download svg,.btn-delete svg{width:16px;height:16px}.btn-download:hover{background:var(--main-accent);transform:scale(1.05)}.btn-delete{background:#ef4444}.btn-delete:hover{background:#dc2626;transform:scale(1.05)}.document-date{color:#9ca3af;font-size:.85em}@media (max-width: 768px){.document-list-container{padding:0 20px}.list-header{flex-direction:column;align-items:flex-start;gap:20px}.documents-grid{grid-template-columns:1fr}.filters{flex-direction:column}.search-box{width:100%}}.document-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.document-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.file-icon-large{font-size:4em}.document-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0 0 15px;letter-spacing:1px}.status-badge{padding:6px 16px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap}.status-badge.published{background:#d1fae5;color:#065f46}.status-badge.archived{background:#e5e7eb;color:#374151}.status-badge.deleted{background:#fee2e2;color:#991b1b}.public-badge{padding:6px 16px;border-radius:12px;font-size:.85em;font-weight:600;background:#dbeafe;color:#1e40af}.info-section{margin-bottom:30px;padding-bottom:30px;border-bottom:2px solid var(--gray-border)}.section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin-bottom:15px}.section-content{color:#6b7280;font-size:1.05em;line-height:1.8;margin:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px;padding-bottom:30px;border-bottom:2px solid var(--gray-border)}.stats-section{display:flex;gap:30px;margin-bottom:30px;padding:20px;background:#f9fafb;border-radius:12px}.stat-item{display:flex;flex-direction:column;gap:8px}.stat-label{font-weight:600;color:#6b7280;font-size:.9em}.stat-value{font-size:1.5em;font-weight:700;color:var(--main-blue)}.action-buttons{display:flex;gap:15px;justify-content:flex-end;padding-top:30px;border-top:2px solid var(--gray-border)}.btn-preview,.btn-download,.btn-edit{padding:12px 30px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none}.btn-preview{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 15px #10b9814d}.btn-preview:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-download{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;box-shadow:0 4px 15px #ff812b4d}.btn-download:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.btn-edit{background:#f3f4f6;color:var(--main-blue)}.btn-edit:hover{background:#e5e7eb}@media (max-width: 768px){.document-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column}.info-grid{grid-template-columns:1fr}.stats-section,.action-buttons{flex-direction:column}}.document-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.document-form-container{max-width:900px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.document-form{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.form-group label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px;font-size:1em}.form-group input[type=text],.form-group input[type=file],.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;box-sizing:border-box}.form-group input[type=file]{padding:8px;cursor:pointer}.form-group textarea{resize:vertical;min-height:120px}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background:#f9fafb;cursor:not-allowed}.file-info{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding:10px;background:#f9fafb;border-radius:8px}.file-name{font-weight:600;color:var(--main-blue)}.file-size{color:#6b7280;font-size:.9em}.form-section{margin-top:30px;padding-top:30px;border-top:2px solid var(--gray-border)}.section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin-bottom:20px}.checkbox-group{display:flex;flex-direction:column;gap:15px}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;color:var(--main-blue)}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.form-hint{display:block;margin-top:5px;color:#6b7280;font-size:.85em}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:40px;padding-top:30px;border-top:2px solid var(--gray-border)}.btn-cancel,.btn-submit{padding:12px 30px;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:all .3s ease;border:none}.btn-cancel:hover:not(:disabled){background:#e5e7eb}.btn-cancel:disabled,.btn-submit:disabled{opacity:.5;cursor:not-allowed}.btn-publish{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 15px #10b9814d}.btn-publish:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-publish:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.document-form-container{padding:0 20px}.document-form{padding:25px}.form-row{grid-template-columns:1fr}}.layout-designer{display:flex;flex-direction:column;height:100%;background:#f9fafb}.layout-designer-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-bottom:1px solid #e5e7eb}.panel-size-selector{display:flex;align-items:center;gap:12px}.panel-size-selector label{font-weight:500;color:#374151}.panel-size-selector select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.layout-designer-actions{display:flex;gap:12px}.layout-designer-body{display:flex;flex:1;overflow:hidden;gap:16px;padding:16px}.widget-toolbox{width:200px;background:#fff;border-radius:8px;padding:16px;overflow-y:auto;border:1px solid #e5e7eb}.widget-toolbox h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#1f2937}.widget-types{display:flex;flex-direction:column;gap:8px}.widget-type-item{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid #e5e7eb;border-radius:6px;cursor:grab;transition:all .2s;background:#f9fafb}.widget-type-item:hover{background:#eff6ff;border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 2px 4px #0000001a}.widget-type-item:active{cursor:grabbing}.widget-type-item svg{width:18px;height:18px;color:#3b82f6}.widget-type-item span{font-size:14px;color:#374151;font-weight:500}.design-canvas-container{flex:1;display:flex;flex-direction:column;background:#fff;border-radius:8px;padding:24px;border:1px solid #e5e7eb;overflow:auto}.design-canvas{position:relative;width:100%;max-width:100%;background:#f3f4f6;border:2px dashed #d1d5db;border-radius:8px;min-height:400px;margin:0 auto;overflow:hidden}.canvas-background{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.canvas-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#9ca3af;pointer-events:none}.canvas-empty svg{width:48px;height:48px;margin-bottom:12px;opacity:.5}.canvas-empty p{font-size:14px;margin:0}.widget{position:absolute;background:#fff;border:2px solid #3b82f6;border-radius:6px;cursor:move;overflow:hidden;box-shadow:0 2px 8px #0000001a;transition:box-shadow .2s}.widget:hover{box-shadow:0 4px 12px #3b82f64d}.widget.selected{border-color:#2563eb;box-shadow:0 0 0 3px #3b82f633}.widget-header{display:flex;align-items:center;gap:6px;padding:6px 8px;background:#eff6ff;border-bottom:1px solid #dbeafe;font-size:12px;font-weight:500;color:#1e40af}.widget-header svg{width:14px;height:14px}.widget-header span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-delete{width:20px;height:20px;padding:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;color:#dc2626;transition:background .2s}.widget-delete:hover{background:#fee2e2}.widget-delete svg{width:12px;height:12px}.widget-content{padding:8px;height:calc(100% - 32px);overflow:hidden;display:flex;align-items:center;justify-content:center}.widget-preview-marquee{width:100%;white-space:nowrap;overflow:hidden}.widget-preview-logo,.widget-preview-media,.widget-preview-content,.widget-preview-company,.widget-preview-background{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#6b7280}.widget-preview-logo img,.widget-preview-background img{max-width:100%;max-height:100%;object-fit:contain}.widget-preview-logo svg,.widget-preview-media svg,.widget-preview-content svg,.widget-preview-company svg{width:32px;height:32px;opacity:.5}.widget-preview-logo span,.widget-preview-media span,.widget-preview-content span,.widget-preview-company span{font-size:12px}.resize-handle{position:absolute;bottom:0;right:0;width:16px;height:16px;background:#3b82f6;cursor:nwse-resize;border-top-left-radius:6px}.resize-handle:hover{background:#2563eb}.widget-properties{width:280px;background:#fff;border-radius:8px;padding:16px;overflow-y:auto;border:1px solid #e5e7eb}.widget-properties h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#1f2937}.properties-content{display:flex;flex-direction:column;gap:20px}.property-group{margin-bottom:24px;padding:16px;background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d}.property-group:last-child{margin-bottom:0}.property-group>label{display:block;font-weight:600;margin-bottom:16px;color:#1f2937;font-size:15px;padding-bottom:10px;border-bottom:2px solid #e5e7eb}.property-group-subtitle{font-weight:500;font-size:13px;color:#6b7280;margin-top:16px;margin-bottom:12px;padding-top:12px;border-top:1px dashed #e5e7eb}.property-row{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.property-row:last-child{margin-bottom:0}.property-row>label:first-child:not(:has(input)){display:block;font-weight:500;color:#374151;font-size:13px;margin-bottom:4px}.property-row input[type=number],.property-row input[type=text],.property-row input[type=color],.property-row textarea,.property-row select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;transition:all .2s;box-sizing:border-box}.property-row input[type=number]:focus,.property-row input[type=text]:focus,.property-row textarea:focus,.property-row select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.property-row input[type=color]{height:40px;padding:4px;cursor:pointer;border-radius:6px}.property-row textarea{resize:vertical;min-height:80px;font-family:inherit;line-height:1.5}.property-row input[type=checkbox]{margin-right:10px;width:18px;height:18px;cursor:pointer;accent-color:#3b82f6;flex-shrink:0}.property-row label:has(input[type=checkbox]){display:flex;align-items:center;font-weight:500;color:#374151;font-size:14px;cursor:pointer;padding:10px 12px;border-radius:6px;transition:background .2s;margin-bottom:0}.property-row label:has(input[type=checkbox]):hover{background:#f3f4f6}.property-row span{font-size:13px;color:#6b7280}.property-row .form-hint,.property-row .property-hint{font-size:12px;color:#9ca3af;margin-top:4px;line-height:1.5;display:block}.checkbox-group{display:flex;flex-direction:column;gap:8px;padding:12px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.checkbox-group label{margin-bottom:0}.color-input-group{display:flex;align-items:center;gap:12px}.color-input-group input[type=color]{width:60px;flex-shrink:0}.color-input-group input[type=text]{flex:1}.properties-empty{text-align:center;padding:40px 20px;color:#9ca3af}.properties-empty p{margin:0;font-size:14px}.background-upload-container{display:flex;flex-direction:column;gap:12px;width:100%}.btn-upload-background{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;width:100%;justify-content:center}.btn-upload-background:hover:not(:disabled){background:#2563eb}.btn-upload-background:disabled{background:#9ca3af;cursor:not-allowed}.btn-upload-background svg{width:14px;height:14px}.background-preview{position:relative;width:100%;height:120px;border:1px solid #d1d5db;border-radius:6px;overflow:hidden;background:#f9fafb}.background-preview img{width:100%;height:100%;object-fit:cover}.btn-remove-background{position:absolute;top:8px;right:8px;width:24px;height:24px;padding:0;border:none;background:#0009;color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.btn-remove-background:hover{background:#000c}.btn-remove-background svg{width:12px;height:12px}.logo-upload-container{display:flex;flex-direction:column;gap:12px;width:100%}.btn-upload-logo{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;width:100%;justify-content:center}.btn-upload-logo:hover:not(:disabled){background:#2563eb}.btn-upload-logo:disabled{background:#9ca3af;cursor:not-allowed}.btn-upload-logo svg{width:14px;height:14px}.logo-preview{position:relative;width:100%;height:120px;border:1px solid #d1d5db;border-radius:6px;overflow:hidden;background:#f9fafb;display:flex;align-items:center;justify-content:center}.logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.btn-remove-logo{position:absolute;top:8px;right:8px;width:24px;height:24px;padding:0;border:none;background:#0009;color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.btn-remove-logo:hover{background:#000c}.btn-remove-logo svg{width:12px;height:12px}.font-upload-container{display:flex;align-items:center;gap:8px;width:100%}.btn-upload-font{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;flex:1;justify-content:center}.btn-upload-font:hover:not(:disabled){background:#2563eb}.btn-upload-font:disabled{background:#9ca3af;cursor:not-allowed}.btn-upload-font svg{width:14px;height:14px}.btn-remove-font{width:32px;height:32px;padding:0;border:none;background:#ef4444;color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0}.btn-remove-font:hover{background:#dc2626}.btn-remove-font svg{width:12px;height:12px}.broadcast-management{padding:20px}.broadcast-header{margin-bottom:20px}.broadcast-header h1{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:600;color:#1f2937}.broadcast-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #e5e7eb}.broadcast-tabs button{display:flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:14px;color:#6b7280;transition:all .2s;margin-bottom:-2px}.broadcast-tabs button:hover{color:#3b82f6}.broadcast-tabs button.active{color:#3b82f6;border-bottom-color:#3b82f6;font-weight:600}.broadcast-content{background:#fff;border-radius:8px;padding:20px;min-height:400px}.loading{text-align:center;padding:40px;color:#6b7280}.toolbar{margin-bottom:20px;display:flex;justify-content:flex-end}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#e5e7eb;color:#374151}.btn-secondary:hover{background:#d1d5db}.btn-icon{background:none;border:none;cursor:pointer;padding:4px 8px;color:#6b7280;transition:color .2s}.btn-icon:hover{color:#3b82f6}.broadcast-action-dropdown{display:inline-block}.broadcast-btn-action-toggle{width:32px;height:32px;padding:0;border-radius:6px;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;background:#e0f2fe;color:#1f2937}.broadcast-btn-action-toggle:hover{background:#bae6fd;transform:rotate(90deg)}.broadcast-btn-action-toggle svg{width:18px;height:18px}.broadcast-dropdown-menu-portal{position:fixed;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;min-width:200px;z-index:99999;overflow:hidden}.broadcast-dropdown-item{width:100%;padding:10px 16px;border:none;background:#fff;color:#1f2937;text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;font-size:14px;transition:background .15s ease;white-space:nowrap}.broadcast-dropdown-item:hover{background:#f3f4f6}.broadcast-dropdown-item.delete{color:#dc2626}.broadcast-dropdown-item.delete:hover{background:#fee2e2}.broadcast-dropdown-item svg{width:16px;height:16px;flex-shrink:0}.device-layout-selector{display:flex;align-items:center;gap:8px}.device-layout-selector select{padding:6px 12px;border:1px solid #d1d5db;border-radius:4px;font-size:14px;background:#fff;cursor:pointer;min-width:200px}.device-layout-selector select:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.devices-list table{width:100%;border-collapse:collapse}.devices-list th,.devices-list td{padding:12px;text-align:left;border-bottom:1px solid #e5e7eb}.devices-list th{background:#f9fafb;font-weight:600;color:#374151}.devices-list tr:hover{background:#f9fafb}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;color:#fff}.status-badge.success{background:#10b981}.status-badge.failed{background:#ef4444}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:24px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-content h2{margin-bottom:20px;font-size:20px;font-weight:600;color:#1f2937}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#374151}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6}.form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.logs-list table{width:100%;border-collapse:collapse}.logs-list th,.logs-list td{padding:12px;text-align:left;border-bottom:1px solid #e5e7eb}.logs-list th{background:#f9fafb;font-weight:600;color:#374151}.logs-list tr:hover{background:#f9fafb}.content-settings-list table{width:100%;border-collapse:collapse}.content-settings-list th,.content-settings-list td{padding:12px;text-align:left;border-bottom:1px solid #e5e7eb}.content-settings-list th{background:#f9fafb;font-weight:600;color:#374151}.content-settings-list tr:hover{background:#f9fafb}.modal-content.large{max-width:800px}.content-selector{max-height:400px;overflow-y:auto;border:1px solid #d1d5db;border-radius:6px;padding:12px}.content-list{display:flex;flex-direction:column;gap:8px}.content-item{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.content-item:hover{background:#f9fafb;border-color:#3b82f6}.content-item input[type=checkbox]{margin-top:4px;cursor:pointer}.content-info{flex:1}.content-title{font-weight:500;color:#1f2937;margin-bottom:4px}.content-desc{font-size:12px;color:#6b7280;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.empty-state{text-align:center;padding:40px;color:#6b7280}.layout-designer-container{height:calc(100vh - 200px);min-height:600px}.layouts-list table,.schedules-list table{width:100%;border-collapse:collapse}.layouts-list th,.layouts-list td,.schedules-list th,.schedules-list td{padding:12px;text-align:left;border-bottom:1px solid #e5e7eb}.layouts-list th,.schedules-list th{background:#f9fafb;font-weight:600;color:#374151}.layouts-list tr:hover,.schedules-list tr:hover{background:#f9fafb}.layout-preview{border:1px solid #d1d5db;border-radius:6px;padding:16px;background:#f9fafb}.layout-preview-grid{display:grid;gap:8px;min-height:200px}.layout-preview-grid.fullscreen{grid-template-columns:1fr;grid-template-rows:1fr}.layout-preview-grid.split_2{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.layout-preview-grid.split_3{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr}.layout-preview-grid.split_4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.layout-preview-grid.picture_in_picture{grid-template-columns:1fr;grid-template-rows:1fr;position:relative}.layout-block{background:#fff;border:2px solid #3b82f6;border-radius:6px;padding:12px;min-height:100px}.block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.block-header span{font-weight:500;color:#374151}.block-header select{padding:4px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px}.weekdays-selector{display:flex;flex-wrap:wrap;gap:12px}.weekday-checkbox{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s}.weekday-checkbox:hover{background:#f9fafb;border-color:#3b82f6}.weekday-checkbox input[type=checkbox]{cursor:pointer}.weekday-checkbox input[type=checkbox]:checked+span,.weekday-checkbox:has(input[type=checkbox]:checked){background:#dbeafe;border-color:#3b82f6}.scan-mode-selector{display:flex;gap:10px;margin-bottom:20px}.scan-mode-selector button{flex:1;padding:12px 20px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;transition:all .2s}.scan-mode-selector button:hover{border-color:#3b82f6;color:#3b82f6}.scan-mode-selector button.active{border-color:#3b82f6;background:#eff6ff;color:#3b82f6;font-weight:600}.scanning-status{display:flex;align-items:center;justify-content:center;gap:10px;padding:20px;color:#6b7280}.scanning-status .spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scanned-devices-list{margin-top:20px;max-height:400px;overflow-y:auto}.scanned-devices-list h3{margin-bottom:15px;font-size:16px;color:#1f2937}.devices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.scanned-device-card{border:2px solid #e5e7eb;border-radius:8px;padding:15px;background:#f9fafb;display:flex;flex-direction:column;gap:12px}.scanned-device-card.existing{opacity:.6;background:#f3f4f6}.device-info{flex:1}.device-name{font-weight:600;font-size:16px;color:#1f2937;margin-bottom:8px}.device-details{font-size:13px;color:#6b7280;display:flex;flex-direction:column;gap:4px}.device-details div{display:flex;gap:8px}.device-details strong{color:#374151;min-width:50px}.device-actions{display:flex;align-items:center;justify-content:flex-end}.existing-badge{padding:6px 12px;background:#dbeafe;color:#1e40af;border-radius:6px;font-size:12px;font-weight:600}.btn-sm{padding:6px 12px;font-size:13px}.info-text{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1e40af;font-size:14px}.preview-modal{max-width:1200px;width:95%;padding:0;overflow:hidden}.preview-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.preview-modal .modal-header h2{margin:0;font-size:18px;font-weight:600;color:#1f2937}.preview-modal .modal-close{width:32px;height:32px;padding:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s;color:#6b7280}.preview-modal .modal-close:hover{background:#e5e7eb;color:#1f2937}.preview-modal .modal-close svg{width:18px;height:18px}.preview-modal .modal-body{padding:24px;max-height:calc(90vh - 80px);overflow-y:auto}.preview-container{display:flex;flex-direction:column;gap:24px}.preview-screen{background:#000;border-radius:12px;padding:20px;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 20px 25px -5px #0000004d;overflow:hidden;width:100%}.preview-layout-container{width:100%;max-width:100%;position:relative;border-radius:8px;overflow:hidden;margin:0 auto}.preview-layout-block{position:absolute;box-sizing:border-box}.preview-marquee{display:flex;align-items:center;padding:8px;border-radius:4px}.preview-marquee-text{white-space:nowrap;overflow:hidden;font-weight:500}@keyframes marquee-scroll{0%{transform:translate(0);opacity:1}15%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:1}}@keyframes scroll-down{0%{transform:translateY(0)}to{transform:translateY(calc(-100% + var(--container-height, 100%)))}}.preview-logo{display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:4px}.preview-company-info{display:flex;align-items:center;background:#00000080;color:#fff;border-radius:4px}.preview-content-block{display:flex;flex-direction:column;border-radius:8px;padding:8px;overflow:auto}.preview-content-block:has(.preview-full-list-table-wrap){overflow:hidden;min-height:0}.preview-full-list-table-wrap{min-height:0}.preview-empty{text-align:center;color:#9ca3af;padding:40px}.preview-empty svg{width:64px;height:64px;margin-bottom:16px;opacity:.5}.preview-empty p{font-size:18px;font-weight:500;margin-bottom:8px;color:#6b7280}.preview-empty small{font-size:14px;color:#9ca3af}.preview-content{width:100%;height:100%;display:flex;flex-direction:column;gap:12px}.preview-layout-info{background:#ffffff1a;padding:8px 12px;border-radius:6px;color:#fff;font-size:12px;margin-bottom:12px}.preview-blocks{display:flex;flex-direction:column;gap:16px;flex:1;overflow-y:auto}.preview-block{background:#fffffff2;border-radius:8px;padding:16px;min-height:100px}.preview-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.preview-block-type{font-size:12px;font-weight:600;color:#3b82f6;background:#eff6ff;padding:4px 8px;border-radius:4px}.preview-block-duration{font-size:12px;color:#6b7280}.preview-block-content{color:#1f2937}.preview-item{margin-bottom:12px}.preview-item:last-child{margin-bottom:0}.preview-item h4{margin:0 0 8px;font-size:16px;font-weight:600;color:#1f2937}.preview-item p{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.preview-media-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;background:#f3f4f6;border-radius:8px;color:#6b7280}.preview-media-placeholder svg{width:48px;height:48px;margin-bottom:12px;opacity:.5}.preview-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:20px;background:#f9fafb;border-radius:8px}.preview-info-item{display:flex;flex-direction:column;gap:4px}.preview-info-item strong{font-size:12px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.preview-info-item span,.preview-info-item{font-size:14px;color:#1f2937}.preview-error{text-align:center;padding:40px;color:#dc2626}.preview-error svg{width:64px;height:64px;margin-bottom:16px;opacity:.7}.preview-error p{font-size:16px;font-weight:500}.modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#1f2937}.btn-close{width:32px;height:32px;padding:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s;color:#6b7280}.btn-close:hover{background:#e5e7eb;color:#1f2937}.modal-body{padding:0}.modal-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.logo-upload-container{display:flex;flex-direction:column;gap:16px;align-items:flex-start}.logo-preview{position:relative;width:200px;height:200px;border:2px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#f9fafb;display:flex;align-items:center;justify-content:center}.logo-preview img{width:100%;height:100%;object-fit:contain}.btn-remove{position:absolute;top:8px;right:8px;width:32px;height:32px;padding:0;border:none;background:#0009;color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.btn-remove:hover{background:#000c}.logo-placeholder{width:200px;height:200px;border:2px dashed #d1d5db;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#9ca3af;background:#f9fafb}.logo-placeholder svg{width:48px;height:48px}.btn-upload{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-upload:hover{background:#2563eb}.btn-upload input[type=file]{display:none}.form-hint{display:block;margin-top:6px;font-size:12px;color:#6b7280}.ga-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#e8f4f8,#dceef5,#d0e8f2)}.ga-page.ga-embedded{min-height:auto;background:transparent;padding:0}.ga-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.ga-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.ga-header-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ga-page-title{font-size:2em;font-weight:800;color:var(--main-blue);margin:0}.ga-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:flex-end}.ga-filter-group{display:flex;flex-direction:column;gap:6px}.ga-filter-group label{font-weight:600;color:var(--main-blue);font-size:.9em}.ga-input,.ga-select,.ga-textarea{padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:border-color .2s}.ga-input:focus,.ga-select:focus,.ga-textarea:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 3px #0d94881f}.ga-input[readonly]{background:#f1f5f9;color:#475569;cursor:default}.ga-textarea{min-height:80px;resize:vertical}.ga-btn-primary{background:linear-gradient(135deg,#0d9488,#0891b2);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.ga-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0d948859}.ga-btn-primary:disabled{opacity:.6;cursor:not-allowed}.ga-btn-secondary{background:#fff;color:var(--main-blue);border:2px solid var(--main-blue);padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.ga-btn-secondary:hover{background:var(--main-blue);color:#fff}.ga-btn-danger{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;padding:8px 14px;border-radius:8px;font-weight:600;cursor:pointer}.ga-btn-danger:hover{background:#fecaca}.ga-btn-sm{padding:6px 12px;font-size:.85em}.ga-table-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);overflow-x:auto}.ga-table{width:100%;border-collapse:collapse}.ga-table thead{background:#f0fdfa}.ga-table th{padding:14px 12px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.ga-table td{padding:14px 12px;border-bottom:1px solid #f3f4f6;color:#374151;font-size:.95em}.ga-table tbody tr:hover{background:#f9fafb}.ga-badge{display:inline-block;padding:4px 10px;border-radius:10px;font-size:.8em;font-weight:600;white-space:nowrap}.ga-badge-warning{background:#fef3c7;color:#92400e}.ga-badge-success{background:#d1fae5;color:#065f46}.ga-badge-info{background:#dbeafe;color:#1e40af}.ga-badge-danger{background:#fee2e2;color:#991b1b}.ga-badge-neutral{background:#e5e7eb;color:#374151}.ga-actions{display:flex;gap:8px;flex-wrap:wrap}.ga-loading,.ga-empty{text-align:center;padding:48px;color:#6b7280;font-size:1.05em}.ga-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.ga-modal{background:#fff;border-radius:16px;width:100%;max-width:640px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.ga-modal-lg{max-width:800px}.ga-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--gray-border)}.ga-modal-header h2{margin:0;font-size:1.3em;color:var(--main-blue)}.ga-modal-close{background:none;border:none;font-size:1.5em;cursor:pointer;color:#6b7280;line-height:1}.ga-modal-body{padding:24px}.ga-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--gray-border)}.ga-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.ga-form-grid .ga-form-full{grid-column:1 / -1}.ga-form-group{display:flex;flex-direction:column;gap:6px}.ga-form-group label{font-weight:600;color:var(--main-blue);font-size:.9em}.ga-form-group label .required{color:#dc2626}.ga-line-items{border:1px solid var(--gray-border);border-radius:12px;padding:16px;margin-top:8px}.ga-line-item-row{display:grid;grid-template-columns:1fr 100px 40px;gap:12px;align-items:end;margin-bottom:12px}.ga-line-item-row-4{grid-template-columns:1fr 100px 120px 40px}@media (max-width: 768px){.ga-container{padding:0 20px 40px}.ga-form-grid,.ga-line-item-row,.ga-line-item-row-4{grid-template-columns:1fr}}.ga-dashboard-page .ga-dashboard-hero{text-align:center;margin-bottom:36px}.ga-dashboard-title{font-size:2.5em;font-weight:900;color:#0f766e;margin:0 0 8px;letter-spacing:2px}.ga-dashboard-subtitle{color:#64748b;font-size:1.05em;margin:0}.ga-dashboard-stats{margin-bottom:40px}.ga-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.ga-stat-card{background:#fff;border-radius:16px;padding:22px;box-shadow:0 4px 20px #0f766e14;border:1px solid #ccfbf1;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;gap:18px}.ga-stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px #0f766e26}.ga-stat-warn{border-color:#fcd34d;background:linear-gradient(135deg,#fffbeb,#fff)}.ga-stat-icon{font-size:2.2em;color:#0d9488}.ga-stat-label{font-size:.88em;color:#64748b;font-weight:600;margin-bottom:4px}.ga-stat-value{font-size:2em;font-weight:700;color:#0f766e}.ga-stat-value-sm{font-size:1.2em}.ga-section-title{font-size:1.4em;font-weight:700;color:#0f766e;margin:0 0 20px}.ga-nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.ga-nav-card{background:#fff;border-radius:16px;padding:28px 20px;box-shadow:0 4px 20px #0f766e14;border:1px solid #e0f2fe;cursor:pointer;transition:all .25s ease;text-align:center}.ga-nav-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px #0891b226;border-color:#0d9488}.ga-nav-icon{font-size:2.4em;color:#0891b2;margin-bottom:14px}.ga-nav-title{font-size:1.15em;font-weight:700;color:#0f766e;margin-bottom:8px}.ga-nav-desc{color:#64748b;font-size:.88em;line-height:1.4}.ga-filter-search{flex:1;min-width:220px}.ga-filter-search .ga-input{width:100%}.ga-checkbox-label{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--main-blue);cursor:pointer;padding:10px 0}.ga-stock-low{color:#b45309;font-weight:700}.ga-txn-badge{display:inline-block;padding:4px 10px;border-radius:8px;font-size:.85em;font-weight:600}.ga-txn-in{background:#d1fae5;color:#065f46}.ga-txn-out{background:#fee2e2;color:#991b1b}.ga-txn-adjust{background:#dbeafe;color:#1e40af}.ga-txn-return{background:#fef3c7;color:#92400e}.ga-req-row{cursor:pointer}.ga-req-detail-row td{background:#f0fdfa;padding:0!important}.ga-req-detail{padding:16px 20px}.ga-req-detail-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px;font-size:.9em;color:#64748b}.ga-req-reject{color:#991b1b;font-weight:600}.ga-po-row{cursor:pointer}.ga-po-detail-row td{background:#f0f9ff;padding:0!important}.ga-po-detail{padding:16px 20px}.ga-po-notes{margin:0 0 12px;font-size:.9em;color:#64748b}.ga-table-nested{background:#fff;border-radius:8px}.ga-table-nested th,.ga-table-nested td{padding:10px 12px;font-size:.88em}.ga-stats-title{margin-bottom:28px}.ga-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.ga-chart-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #0f766e14;border:1px solid #ccfbf1}.ga-chart-card-full{grid-column:1 / -1}.ga-chart-title{margin:0 0 16px;font-size:1.15em;font-weight:700;color:#0f766e}.ga-stats-table{margin-top:16px}.ga-stats-table th,.ga-stats-table td{padding:10px 12px;font-size:.88em}.ga-pie-section{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}@media (max-width: 1024px){.ga-stats-grid,.ga-pie-section{grid-template-columns:1fr}}.ga-gantt-title{margin-bottom:20px}.ga-gantt-tabs{display:flex;gap:8px;margin-bottom:24px}.ga-gantt-tab{padding:10px 20px;border:2px solid #bae6fd;background:#fff;border-radius:10px;font-weight:600;color:#0369a1;cursor:pointer;transition:all .2s}.ga-gantt-tab:hover{border-color:#0d9488;color:#0f766e}.ga-gantt-tab.active{background:linear-gradient(135deg,#0d9488,#0891b2);border-color:transparent;color:#fff}.ga-gantt-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #0f766e14;border:1px solid #ccfbf1;overflow-x:auto}.ga-gantt-axis{display:grid;grid-template-columns:220px 1fr;margin-bottom:8px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.ga-gantt-axis-dates{display:flex;justify-content:space-between;padding:0 4px}.ga-gantt-axis-date{font-size:.8em;color:#64748b;font-weight:600}.ga-gantt-rows{display:flex;flex-direction:column;gap:10px;min-width:600px}.ga-gantt-row{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:12px}.ga-gantt-row-label{display:flex;flex-direction:column;gap:2px;overflow:hidden}.ga-gantt-label-text{font-weight:600;color:#0f766e;font-size:.9em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ga-gantt-label-meta{font-size:.78em;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ga-gantt-row-track{position:relative;height:36px;background:#f1f5f9;border-radius:8px;overflow:hidden}.ga-gantt-bar{position:absolute;top:4px;height:28px;border-radius:6px;min-width:4px;overflow:hidden;display:flex;align-items:center;box-shadow:0 2px 6px #0000001f}.ga-gantt-bar-progress{position:absolute;left:0;top:0;bottom:0;background:#ffffff59;border-radius:6px 0 0 6px;pointer-events:none}.ga-gantt-bar-label{position:relative;z-index:1;padding:0 8px;font-size:.75em;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.3)}.ga-gantt-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.ga-gantt-legend-item{display:flex;align-items:center;gap:6px;font-size:.85em;color:#475569}.ga-gantt-legend-dot{width:12px;height:12px;border-radius:3px}@media (max-width: 768px){.ga-gantt-axis,.ga-gantt-row{grid-template-columns:140px 1fr}}.ga-barcode-page.embedded{min-height:auto;background:transparent}.ga-barcode-page.embedded .ga-barcode-container{padding:0 0 1.5rem}.ga-barcode-page.kiosk{padding:1.5rem}.ga-barcode-container{max-width:1100px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.ga-barcode-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.ga-barcode-header h1{margin:0 0 .35rem;font-size:1.75rem;color:#1e293b}.ga-barcode-header p{margin:0;color:#64748b}.ga-barcode-mode{display:flex;gap:.5rem}.mode-btn{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #cbd5e1;background:#fff;color:#475569;padding:.65rem 1.1rem;border-radius:10px;font-weight:600;cursor:pointer}.mode-btn.active.in{background:#0f766e;border-color:#0f766e;color:#fff}.mode-btn.active.out{background:#b45309;border-color:#b45309;color:#fff}.ga-barcode-message{margin-bottom:1rem;padding:.85rem 1rem;border-radius:10px;font-weight:500}.ga-barcode-message.success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.ga-barcode-message.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.ga-barcode-message.info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.ga-barcode-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.ga-barcode-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.15rem 1.25rem;box-shadow:0 8px 24px #0f172a0a}.ga-barcode-card h2{margin:0 0 .9rem;font-size:1.05rem;color:#334155}.scan-row{display:flex;gap:.5rem}.emp-field-wrap{position:relative;display:flex;flex-direction:column;gap:.35rem}.emp-suggest-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;margin:0;padding:.35rem 0;list-style:none;background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;max-height:220px;overflow-y:auto}.emp-suggest-list button{width:100%;display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .75rem;border:none;background:transparent;text-align:left;padding:.55rem .85rem;cursor:pointer;color:#1e293b}.emp-suggest-list button:hover{background:#f0fdfa}.suggest-name{font-weight:600}.suggest-number{color:#0f766e;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem}.suggest-dept{color:#94a3b8;font-size:.8rem}.ga-barcode-input{flex:1;min-width:0;padding:.85rem 1rem;font-size:1.05rem;border:2px solid #cbd5e1;border-radius:10px;outline:none}.ga-barcode-input:focus{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e26}.scan-hint{margin:.65rem 0 0;font-size:.85rem;color:#94a3b8}.operator-panel{background:#f0fdfa;border:1px solid #99f6e4;border-radius:12px;padding:1rem}.operator-name{font-size:1.35rem;font-weight:700;color:#134e4a}.operator-meta{margin:.25rem 0 .85rem;color:#0f766e}.ga-btn-primary,.ga-btn-secondary{border:none;border-radius:10px;padding:.7rem 1.1rem;font-weight:600;cursor:pointer}.ga-btn-primary{background:#0f766e;color:#fff}.ga-btn-primary.submit-out{background:#b45309}.ga-btn-primary:disabled,.ga-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.ga-btn-secondary{background:#f1f5f9;color:#334155;border:1px solid #cbd5e1;display:inline-flex;align-items:center;justify-content:center;min-width:48px}.cart-card .cart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.cart-card .cart-header h2{margin:0}.cart-card .cart-header span{color:#64748b;font-size:.9rem}.ga-barcode-empty{padding:1.5rem;text-align:center;color:#94a3b8;background:#f8fafc;border-radius:10px}.ga-barcode-table{width:100%;border-collapse:collapse}.ga-barcode-table th,.ga-barcode-table td{padding:.7rem .5rem;border-bottom:1px solid #e2e8f0;text-align:left;font-size:.95rem}.ga-barcode-table th{color:#64748b;font-weight:600}.qty-input{width:72px;padding:.4rem .5rem;border:1px solid #cbd5e1;border-radius:8px}.link-btn{background:none;border:none;color:#b91c1c;cursor:pointer;font-weight:600}.cart-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem}.ga-scanner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:1200;padding:1rem}.ga-scanner-modal{width:min(520px,100%);background:#fff;border-radius:14px;overflow:hidden}.ga-scanner-header{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1rem;border-bottom:1px solid #e2e8f0}.ga-scanner-header h3{margin:0}.ga-scanner-header button{border:none;background:transparent;font-size:1.5rem;cursor:pointer;line-height:1}.ga-scanner-video{width:100%;aspect-ratio:4 / 3;object-fit:cover;background:#0f172a;display:block}@media (max-width: 800px){.ga-barcode-grid{grid-template-columns:1fr}.ga-barcode-header{flex-direction:column}}:root{--brand-blue: #147886;--brand-orange: #fc8024;--brand-blue-light: #1a94a6;--brand-orange-light: #ff943d;--success-50: #f0fdf4;--success-500: #22c55e;--success-600: #16a34a;--warning-50: #fffbeb;--warning-500: #f59e0b;--warning-600: #d97706;--error-50: #fef2f2;--error-500: #ef4444;--error-600: #dc2626;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--white: #ffffff;--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--space-xs: .25rem;--space-sm: .5rem;--space-md: .75rem;--space-lg: 1rem;--space-xl: 1.5rem;--space-2xl: 2rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--main-blue: var(--brand-blue);--main-accent: var(--brand-orange);--sidebar-bg: var(--brand-blue)}.admin-layout{display:flex;height:100vh;overflow:hidden;background:var(--gray-50);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.sidebar{width:280px;background:var(--sidebar-bg);color:#fff;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);transition:width var(--transition-slow);overflow:hidden;position:relative;z-index:10}.sidebar.open{width:280px}.sidebar.closed{width:64px}.sidebar-header{padding:var(--space-xl);border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;background:var(--sidebar-bg)!important;background-color:var(--sidebar-bg)!important}.sidebar.closed .sidebar-header{padding:var(--space-md);justify-content:center}.logo{display:flex;align-items:center;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:#fff;text-decoration:none;gap:var(--space-sm);transition:opacity var(--transition-base)}.logo svg,.logo i{font-size:var(--font-size-xl);flex-shrink:0}.logo span{white-space:nowrap;transition:opacity var(--transition-base)}.sidebar.closed .logo span{opacity:0;width:0;overflow:hidden}.sidebar-footer{padding:var(--space-lg);border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:center;align-items:center}.sidebar-back-btn{width:100%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);transition:all var(--transition-base);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.sidebar-back-btn:hover{background:#fff3;transform:translateY(-1px);box-shadow:var(--shadow-md)}.sidebar.closed .sidebar-back-btn span{display:none}.sidebar.closed .sidebar-back-btn{width:40px;height:40px;padding:0}.sidebar.closed .sidebar-nav{overflow:visible}.sidebar.closed .submenu{display:none}.sidebar.closed .sidebar-footer{padding:var(--space-md)}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.top-header{background:var(--white);border-bottom:1px solid var(--gray-200);padding:0 var(--space-2xl);height:64px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-sm)}.breadcrumb{display:flex;align-items:center;color:var(--gray-600);font-size:var(--font-size-sm)}.breadcrumb-item{display:flex;align-items:center}.breadcrumb-item:not(:last-child):after{content:"/";margin:0 var(--space-sm);color:var(--gray-400)}.header-actions{display:flex;align-items:center;gap:var(--space-lg)}.header-action{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-lg);color:var(--gray-600);transition:all var(--transition-base);cursor:pointer;position:relative}.header-action:hover{background:var(--gray-100);color:var(--gray-800)}.notification-btn{position:relative}.notification-badge{position:absolute;top:4px;right:4px;background:var(--error-500);color:#fff;border-radius:var(--radius-full);font-size:.625rem;font-weight:var(--font-weight-bold);padding:2px 6px;min-width:18px;text-align:center;line-height:1.2}.user-menu-container{position:relative}.user-menu-btn{display:flex;align-items:center;gap:10px;background:#fff;padding:8px 16px;border-radius:25px;box-shadow:0 2px 12px #18454c1a;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease}.user-menu-btn:hover{box-shadow:0 4px 16px #18454c26;transform:translateY(-1px)}.user-avatar-small{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--main-accent) 0%,#ff9540 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.9em;flex-shrink:0;overflow:hidden;position:relative}.user-avatar-small .user-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.user-avatar-small.avatar-flash{animation:avatarPulse 2s ease-in-out infinite;box-shadow:0 0 #ff9540b3}@keyframes avatarPulse{0%{box-shadow:0 0 #ff9540b3;transform:scale(1)}50%{box-shadow:0 0 0 8px #ff954000;transform:scale(1.05)}to{box-shadow:0 0 #ff954000;transform:scale(1)}}.user-avatar-menu.avatar-flash{animation:avatarPulseMenu 2s ease-in-out infinite;box-shadow:0 0 #ff9540b3}@keyframes avatarPulseMenu{0%{box-shadow:0 0 #ff9540b3;transform:scale(1)}50%{box-shadow:0 0 0 10px #ff954000;transform:scale(1.05)}to{box-shadow:0 0 #ff954000;transform:scale(1)}}.user-name-display{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.user-name-only{font-weight:700;color:var(--main-blue);font-size:.95em;white-space:nowrap;line-height:1.2}.user-number-display{font-size:.75em;color:var(--main-accent);font-weight:600;line-height:1}.dropdown-arrow{font-size:.7em;color:#6b7280;transition:transform .3s ease}.user-menu-btn:hover .dropdown-arrow{transform:translateY(2px)}.user-menu-dropdown{position:absolute;top:calc(100% + 12px);right:0;background:#fff;border-radius:16px;box-shadow:0 12px 40px #18454c26;border:1px solid var(--gray-border);z-index:999;min-width:280px;max-width:400px;overflow:hidden;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:998;background:transparent}.user-menu-header{display:flex;align-items:center;gap:12px;padding:20px;background:linear-gradient(135deg,var(--main-blue-light) 0%,rgba(255,248,240,.5) 100%);border-bottom:1px solid var(--gray-border)}.user-avatar-menu{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--main-accent) 0%,#ff9540 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.2em;flex-shrink:0;overflow:hidden;position:relative}.user-avatar-menu .user-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.user-info-menu{flex:1;min-width:0}.user-name-menu{font-weight:700;color:var(--main-blue);font-size:1.1em;margin-bottom:4px}.user-employee-number-menu{font-size:.8em;color:var(--main-accent);font-weight:600;margin-bottom:4px}.user-role-menu{font-size:.85em;color:#6b7280}.user-menu-divider{height:1px;background:var(--gray-border);margin:8px 0}.user-menu-item-group{padding:8px 0}.menu-group-title{padding:8px 20px;font-size:.75em;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.user-menu-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 20px;background:transparent;border:none;text-align:left;cursor:pointer;transition:all .2s ease;color:var(--main-blue);font-size:.95em}.user-menu-item:hover{background:var(--main-blue-light)}.user-menu-item .user-icon-menu{font-size:1.2em;flex-shrink:0;color:var(--main-accent);display:flex;align-items:center;justify-content:center}.language-menu-btn,.notification-menu-btn{width:100%;display:flex;align-items:center;gap:12px;padding:12px 20px;background:transparent;border:none;text-align:left;cursor:pointer;transition:all .2s ease;color:var(--main-blue);font-size:.95em}.language-menu-btn:hover,.notification-menu-btn:hover{background:var(--main-blue-light)}.language-submenu,.notification-submenu{background:#f9fafb;border-top:1px solid var(--gray-border);max-height:300px;overflow-y:auto}.language-submenu-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 20px 10px 40px;background:transparent;border:none;text-align:left;cursor:pointer;transition:all .2s ease;color:var(--main-blue);font-size:.9em}.language-submenu-item:hover{background:var(--main-blue-light)}.language-submenu-item.active{background:var(--main-blue-light);font-weight:700}.notification-empty-menu{padding:30px 20px;text-align:center;color:#6b7280}.empty-icon-menu{font-size:2em;margin-bottom:10px}.notification-submenu-item{display:flex;gap:12px;padding:12px 20px;cursor:pointer;transition:all .2s ease;border-bottom:1px solid #f3f4f6}.notification-submenu-item:hover{background:var(--main-blue-light)}.notification-submenu-item:last-child{border-bottom:none}.notification-submenu-item.read{opacity:.6;background:#f9fafb}.notification-submenu-item.read:hover{opacity:.8;background:var(--main-blue-light)}.notification-icon-menu{font-size:1.2em;flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--main-blue-light);border-radius:6px}.notification-content-menu{flex:1;min-width:0}.notification-title-menu{font-weight:600;color:var(--main-blue);font-size:.9em;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}.notification-unread-dot{width:8px;height:8px;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:50%;flex-shrink:0;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.notification-type-detail{color:#9ca3af;font-size:.85em;margin-left:4px}.notification-time-menu{color:#9ca3af;font-size:.75em}.language-flag-menu{font-size:1.2em;flex-shrink:0}.dropdown-arrow-small{margin-left:auto;font-size:.7em;color:#9ca3af;transition:transform .2s ease}.language-menu-btn:hover .dropdown-arrow-small,.notification-menu-btn:hover .dropdown-arrow-small{transform:translate(2px)}.notification-badge-menu{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:.7em;font-weight:700;padding:2px 8px;border-radius:12px;min-width:20px;text-align:center;margin-left:auto}.bell-icon-menu{font-size:1.2em;flex-shrink:0}.user-menu-logout{width:100%;background:var(--error-500);color:#fff;border:none;padding:12px 20px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95em;display:flex;align-items:center;gap:12px;justify-content:center}.user-menu-logout:hover{background:#dc2626}.sidebar-nav{flex:1;padding:var(--space-lg) 0;overflow-y:auto}.nav-item-wrapper{position:relative;width:100%}.nav-item{display:block;padding:var(--space-md) var(--space-xl);color:#ffffffe6;text-decoration:none;font-weight:var(--font-weight-medium);transition:all var(--transition-base);border-left:3px solid transparent;background:transparent;border-top:none;border-right:none;border-bottom:none;cursor:pointer;text-align:left;font-size:var(--font-size-base);width:100%;display:flex;align-items:center;gap:var(--space-md);justify-content:center}.sidebar.open .nav-item{justify-content:flex-start}.sidebar.closed .nav-item{padding:var(--space-md);justify-content:center}.nav-item:hover{background:#ffffff1a;color:#fff;border-left-color:var(--brand-orange)}.nav-item.active{background:#ffffff26;border-left-color:var(--brand-orange);color:#fff}.nav-item svg,.nav-item i{width:20px;flex-shrink:0}.sidebar.open .nav-item svg,.sidebar.open .nav-item i{margin-right:var(--space-md)}.nav-item span:not(.submenu-arrow){white-space:nowrap;transition:opacity var(--transition-base),width var(--transition-base);overflow:hidden}.sidebar.closed .nav-item span:not(.submenu-arrow){opacity:0;width:0}.submenu-arrow{margin-left:auto;transition:transform var(--transition-base),opacity var(--transition-base);flex-shrink:0}.submenu-arrow.open{transform:rotate(180deg)}.sidebar.closed .submenu-arrow{opacity:0;width:0;margin:0}.submenu{background:#0000001a;padding:var(--space-sm) 0}.submenu-item{display:block;padding:var(--space-sm) var(--space-xl) var(--space-sm) calc(var(--space-xl) + var(--space-xl));color:#ffffffd9;text-decoration:none;font-weight:var(--font-weight-medium);transition:all var(--transition-base);border-left:3px solid transparent;background:transparent;border-top:none;border-right:none;border-bottom:none;cursor:pointer;text-align:left;font-size:var(--font-size-sm);width:100%;display:flex;align-items:center;gap:var(--space-md);justify-content:center}.sidebar.open .submenu-item{justify-content:flex-start}.sidebar.closed .submenu-item{padding:var(--space-sm);justify-content:center}.submenu-item:hover{background:#ffffff1a;color:#fff;border-left-color:var(--brand-orange)}.submenu-item.active{background:#ffffff26;border-left-color:var(--brand-orange);color:#fff}.submenu-item svg,.submenu-item i{width:20px;flex-shrink:0}.sidebar.open .submenu-item svg,.sidebar.open .submenu-item i{margin-right:var(--space-md)}.submenu-badge{margin-left:auto;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:.7em;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}.submenu-item span{white-space:nowrap;transition:opacity var(--transition-base),width var(--transition-base);overflow:hidden}.sidebar.closed .submenu-item span{opacity:0;width:0}.content-area{flex:1;padding:var(--space-2xl);overflow-y:auto;background:var(--gray-50)}.content-area:not(:has(>.page-header)){padding-top:0}.page-header{margin:0;padding:0}.page-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--gray-900);margin:0}.page-subtitle{color:var(--gray-600);font-size:var(--font-size-lg);margin:0}.stats-section{margin:0;padding:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg)}.stat-card{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);display:flex;align-items:center;gap:var(--space-lg)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);flex-shrink:0}.stat-content{flex:1;min-width:0}.stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--gray-900);margin:0 0 var(--space-xs) 0;line-height:1.2}.stat-label{font-size:var(--font-size-sm);color:var(--gray-600);margin:0;line-height:1.4}.admin-content{display:flex;flex-direction:column;gap:0;margin:0;padding:0}.content-section{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);margin:0 0 var(--space-md) 0}.content-section:last-child{margin-bottom:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin:0 0 var(--space-lg) 0;padding:0}.section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--gray-900);margin:0;padding:0}.table-container{margin:0;padding:0;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;margin:0}.data-table thead{background:var(--gray-50)}.data-table th{padding:var(--space-md) var(--space-lg);text-align:left;font-weight:var(--font-weight-semibold);color:var(--gray-700);font-size:var(--font-size-sm);border-bottom:2px solid var(--gray-200)}.data-table td{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--gray-200);font-size:var(--font-size-sm);color:var(--gray-700)}.data-table tbody tr:hover{background:var(--gray-50)}.data-table tbody tr:last-child td{border-bottom:none}.announcements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-lg);margin:0;padding:0}.announcement-item{background:var(--gray-50);border-radius:var(--radius-lg);padding:var(--space-lg);border:1px solid var(--gray-200);cursor:pointer;transition:all var(--transition-base);margin:0}.announcement-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--brand-blue)}.announcement-item-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--gray-900);margin:0 0 var(--space-sm) 0}.announcement-item-content{font-size:var(--font-size-sm);color:var(--gray-600);margin:0 0 var(--space-md) 0;line-height:1.6}.announcement-item-meta{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-xs);color:var(--gray-500);margin:0;padding:0}.announcement-category{background:var(--brand-blue);color:#fff;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium)}.announcement-date{color:var(--gray-500)}.status-badge{display:inline-block;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.status-badge.active{background:var(--success-50);color:var(--success-600)}.status-badge.inactive{background:var(--error-50);color:var(--error-600)}.role-badge{display:inline-block;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--gray-100);color:var(--gray-700)}.role-badge.superuser{background:var(--warning-50);color:var(--warning-600)}.loading{text-align:center;padding:var(--space-2xl);color:var(--gray-500);margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-xl);border:1px solid transparent;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none;cursor:pointer;transition:all var(--transition-base);gap:var(--space-sm)}.btn-primary{background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-light));color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--brand-blue);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--gray-100);color:var(--gray-700);border-color:var(--gray-200)}.btn-secondary:hover{background:var(--gray-200);color:var(--gray-800)}.btn-sm{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-xs)}.no-permission{display:flex;align-items:center;justify-content:center;min-height:400px;padding:40px;text-align:center;color:var(--gray-600);font-size:1.1em;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.mobile-menu-toggle{display:none;position:fixed;top:12px;left:12px;z-index:1030;width:44px;height:44px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--brand-blue) 0%,var(--brand-blue-light) 100%);color:#fff;font-size:1.4em;cursor:pointer;box-shadow:0 4px 12px #1478864d;transition:all .3s ease;align-items:center;justify-content:center}.mobile-menu-toggle:hover{transform:scale(1.05);box-shadow:0 6px 16px #14788666}.mobile-menu-toggle:active{transform:scale(.95)}.mobile-sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1015;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.admin-layout{flex-direction:column}.mobile-menu-toggle{display:flex}.mobile-sidebar-overlay.show{display:block}.sidebar{position:fixed;left:0;top:0;height:100vh;z-index:1020;transform:translate(-100%);transition:transform .3s ease;width:280px!important}.sidebar.open{transform:translate(0)}.sidebar.closed{transform:translate(-100%);width:280px}.sidebar.open .logo span,.sidebar.open .nav-item span:not(.submenu-arrow),.sidebar.open .submenu-item span,.sidebar.open .submenu-arrow,.sidebar.open .sidebar-back-btn span{opacity:1!important;width:auto!important}.sidebar.open .sidebar-back-btn{width:100%!important;height:auto!important;padding:var(--space-md) var(--space-lg)!important}.main-content{margin-left:0!important;width:100%}.top-header{padding-left:70px;padding-right:var(--space-lg)}.content-area{padding:var(--space-lg)}.breadcrumb{display:none}.user-menu-btn{padding:6px 10px}.user-name-display,.dropdown-arrow{display:none}}.hr-management-page{padding:30px;background:#f9fafb;min-height:calc(100vh - 80px)}.hr-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--gray-border)}.hr-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.hr-tab:hover{color:var(--main-blue);background:#1478860d}.hr-tab.active{color:var(--main-blue);border-bottom-color:var(--main-accent)}.hr-statistics-view{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}.hr-monthly-summary-view{background:transparent;padding:0;box-shadow:none}.hr-monthly-summary-view .monthly-attendance-summary-page.embedded{background:transparent;padding:0}.statistics-filters{display:flex;gap:20px;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid var(--gray-border);flex-wrap:wrap}.filter-group input,.filter-group select{padding:10px 12px;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;transition:all .3s ease;font-family:inherit}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.statistics-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{display:flex;align-items:center;gap:20px;padding:24px;background:linear-gradient(135deg,#fff,#f9fafb);border:2px solid var(--gray-border);border-radius:12px;transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000026;border-color:var(--main-accent)}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.8em;color:#fff;flex-shrink:0}.stat-icon.employees{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-icon.attendance{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.leaves{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon.overtimes{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-content{flex:1}.stat-value{font-size:2em;font-weight:800;color:var(--main-blue);line-height:1}.stat-detail{font-size:.85em;color:#9ca3af;margin-top:8px}.statistics-details{display:flex;flex-direction:column;gap:30px;margin-bottom:30px}.stat-section{padding:24px;background:#f9fafb;border-radius:12px;border:1px solid var(--gray-border)}.section-title{display:flex;align-items:center;gap:10px;font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0 0 20px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.stat-item{display:flex;flex-direction:column;gap:8px;padding:16px;background:#fff;border-radius:8px;border:1px solid var(--gray-border)}.stat-item-label{font-size:.9em;color:#6b7280;font-weight:600}.stat-item-value{font-size:1.5em;font-weight:700;color:var(--main-blue)}.leave-by-type{margin-top:20px;padding-top:20px;border-top:1px solid var(--gray-border)}.leave-by-type h4{font-size:1.1em;font-weight:600;color:var(--main-blue);margin:0 0 16px}.leave-type-list{display:flex;flex-direction:column;gap:12px}.leave-type-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid var(--gray-border)}.leave-days{font-weight:700;color:var(--main-accent)}.department-statistics{margin-top:30px;padding:24px;background:#f9fafb;border-radius:12px;border:1px solid var(--gray-border)}.department-stats-table{overflow-x:auto;margin-top:20px}.department-stats-table table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}.department-stats-table thead{background:var(--main-blue-light)}.department-stats-table th{padding:16px;text-align:left;font-weight:700;color:var(--main-blue);font-size:.9em;border-bottom:2px solid var(--gray-border)}.department-stats-table td{padding:16px;border-bottom:1px solid var(--gray-border);color:#374151}.department-stats-table tbody tr:hover{background:var(--main-blue-light)}.hr-employees-view{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.hr-employees-view .employee-management-page.embedded{background:transparent;min-height:auto}.hr-employees-view .hr-main-embedded{padding:0}.hr-attendance-view{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.hr-attendance-view .attendance-management-page.embedded{background:transparent;min-height:auto}.hr-attendance-view .hr-main-embedded{padding:0}.hr-leave-approval-view,.hr-overtime-approval-view{background:#fff;border-radius:12px;padding:0;box-shadow:0 2px 8px #0000001a}.hr-leave-approval-view .leave-approval-page.embedded,.hr-overtime-approval-view .overtime-approval-page.embedded{background:transparent}.hr-leave-approval-view .leave-approval,.hr-overtime-approval-view .overtime-approval{box-shadow:none;border-radius:0}.hr-schedule-view{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.hr-schedule-view .schedule-management-page.embedded{padding:0;background:transparent;min-height:auto}.hr-turnover-rate-view{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.hr-turnover-rate-view .turnover-rate-analysis.embedded{padding:0;background:transparent;min-height:auto}.hr-cost-analysis-view,.hr-cost-analysis-view .cost-analysis-page,.hr-performance-view,.hr-training-view,.hr-recruitment-view,.hr-employee-relations-view,.hr-welfare-view{background:transparent;padding:0}.hr-performance-view .performance-management-page,.hr-training-view .training-management-page,.hr-recruitment-view .recruitment-management-page,.hr-employee-relations-view .employee-relations-management-page,.hr-welfare-view .welfare-management-page{background:transparent;padding:0;min-height:auto}.loading,.no-data{text-align:center;padding:60px 20px;color:#6b7280;font-size:1.1em}@media (max-width: 768px){.hr-management-page{padding:20px}.statistics-cards,.stat-grid{grid-template-columns:1fr}.statistics-filters{flex-direction:column}}.announcement-edit-modal{min-width:0}.announcement-edit-modal .modal-loading{padding:2rem;text-align:center;color:var(--main-blue)}.announcement-edit-form .form-group{margin-bottom:1rem}.announcement-edit-form .form-label{display:block;color:var(--main-blue);font-weight:600;margin-bottom:.35rem;font-size:.95em}.announcement-edit-form .form-input,.announcement-edit-form .form-textarea,.announcement-edit-form .form-select{width:100%;padding:.5rem .75rem;border:2px solid var(--gray-border);border-radius:8px;font-size:.95em;font-family:inherit;background:var(--input-bg);color:var(--main-blue)}.announcement-edit-form .form-input:focus,.announcement-edit-form .form-textarea:focus,.announcement-edit-form .form-select:focus{outline:none;border-color:var(--main-accent)}.announcement-edit-form .form-textarea{resize:vertical;min-height:120px}.announcement-edit-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.announcement-edit-form .checkbox-group{display:flex;flex-direction:column;gap:.5rem}.announcement-edit-form .checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--main-blue);font-weight:500}.announcement-edit-form .form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--gray-border)}.announcement-edit-form .btn-cancel,.announcement-edit-form .btn-submit{padding:.5rem 1.25rem;border-radius:8px;font-weight:600;cursor:pointer;border:none;font-size:.95em}.announcement-edit-form .btn-cancel{background:#f3f4f6;color:#6b7280}.announcement-edit-form .btn-cancel:hover{background:#e5e7eb}.announcement-edit-form .btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.announcement-edit-form .btn-submit:hover:not(:disabled){opacity:.95}.announcement-edit-form .btn-submit:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 600px){.announcement-edit-form .form-row{grid-template-columns:1fr}}.announcement-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.announcement-list-container{max-width:1400px;margin:0 auto;padding:24px;flex:1;width:100%}.top-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;flex-wrap:wrap}.tab-switcher{display:flex;gap:8px;background:#fff;padding:6px;border-radius:12px;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb}.tab-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;background:transparent;border:none;border-radius:8px;font-weight:500;font-size:.95em;color:#6b7280;cursor:pointer;transition:all .2s ease;white-space:nowrap}.tab-btn:hover{background:#f3f4f6;color:var(--main-blue)}.tab-btn.active{background:var(--main-blue);color:#fff;box-shadow:0 2px 4px #3b82f64d}.tab-btn svg{width:16px;height:16px}.toolbar-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.category-filter{display:flex;gap:8px;flex-wrap:wrap}.filter-btn{background:#fff;border:1px solid #e5e7eb;padding:8px 16px;border-radius:8px;font-weight:500;font-size:.9em;cursor:pointer;transition:all .2s ease;color:#6b7280}.filter-btn:hover{border-color:var(--main-blue);color:var(--main-blue);background:#eff6ff}.filter-btn.active{background:var(--main-blue);color:#fff;border-color:var(--main-blue)}.view-toggle{display:flex;gap:4px;background:#fff;padding:4px;border-radius:8px;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb}.view-btn{background:transparent;border:none;padding:8px 10px;border-radius:6px;cursor:pointer;transition:all .2s ease;color:#6b7280;display:flex;align-items:center;justify-content:center}.view-btn svg{width:18px;height:18px}.btn-create{background:var(--main-blue);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.95em;box-shadow:0 2px 4px #3b82f64d;display:flex;align-items:center;gap:6px}.btn-create:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 8px #3b82f666}.btn-create svg{width:16px;height:16px}.announcements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:25px}.announcements-list{display:flex;flex-direction:column;gap:15px}.announcement-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb;cursor:pointer;transition:all .2s ease;position:relative;display:flex;flex-direction:column;gap:12px}.announcement-card:not(.list-view) .card-top-badges{width:100%}.announcement-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:var(--main-blue)}.announcement-card.list-view{flex-direction:row;align-items:flex-start;gap:20px;padding:16px 20px}.announcement-card.list-view .card-top-badges{position:absolute;top:8px;left:20px;right:20px;width:auto;margin-bottom:0;z-index:1}.announcement-card.list-view .card-content-wrapper{flex:1;display:flex;flex-direction:column;gap:8px;padding-top:28px;min-width:0}.announcement-card.list-view .card-header{flex:0 0 auto;min-width:0;margin:0;padding:0}.announcement-card.list-view .announcement-title{font-size:1.1em;margin-bottom:4px;padding-top:0}.announcement-card.list-view .announcement-preview{flex:1;margin:0;-webkit-line-clamp:2;max-width:none;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.announcement-card.list-view .card-footer{flex-direction:column;align-items:flex-end;justify-content:flex-start;border-top:none;padding-top:28px;min-width:120px;gap:8px;flex-shrink:0}.card-top-badges{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;width:100%;box-sizing:border-box;line-height:1.2}.badges-left{display:flex;flex-direction:row;gap:8px;align-items:center;flex-wrap:wrap;flex:1}.card-top-badges>*{margin:0;flex-shrink:0}.pinned-badge{background:var(--main-accent);color:#fff;padding:4px 10px;border-radius:8px;font-size:.7em;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;gap:4px;margin:0;line-height:1.2}.pinned-badge:before{content:"📌";display:inline-block}.history-badge{background:#6b7280;color:#fff;padding:4px 10px;border-radius:8px;font-size:.7em;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;margin:0;line-height:1.2}.announcement-card.history{opacity:.85;border-color:#d1d5db}.announcement-card.history:hover{opacity:1}.announcement-card.read{opacity:.6;background:#f9fafb;border-color:#e5e7eb}.announcement-card.read .announcement-title,.announcement-card.read .announcement-preview{color:#9ca3af}.announcement-card.read:hover{opacity:.8;border-color:var(--main-blue);background:#f3f4f6}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin:0}.announcement-title{font-size:1.25em;font-weight:700;color:var(--main-blue);margin:0;flex:1;min-width:0;line-height:1.4}.card-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}.priority-badge{padding:4px 10px;border-radius:8px;font-size:.7em;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;margin:0;line-height:1.2}.btn-edit,.btn-delete{width:32px;height:32px;padding:0;border-radius:8px;font-size:.9em;cursor:pointer;border:none;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:2}.btn-edit:hover{background:var(--main-blue);color:#fff;transform:scale(1.05)}.btn-delete:hover{background:#dc2626;color:#fff;transform:scale(1.05)}.announcement-preview{color:#6b7280;font-size:.9em;line-height:1.6;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--gray-border);margin-top:auto}.category-badge{background:var(--main-blue-light);color:var(--main-blue);padding:4px 12px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;flex-shrink:0}.category-badge-top{background:var(--main-blue-light);color:var(--main-blue);padding:4px 10px;border-radius:8px;font-size:.7em;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;margin:0;line-height:1.2}.announcement-date{color:#9ca3af;font-size:.85em}@media (max-width: 768px){.announcement-list-container{padding:16px}.top-toolbar{flex-direction:column;align-items:stretch;gap:16px}.tab-switcher{width:100%}.toolbar-actions{width:100%;justify-content:space-between}.category-filter{order:2;width:100%}.view-toggle{order:1}.btn-create{order:3;width:100%;justify-content:center}.announcements-grid{grid-template-columns:1fr;gap:16px}.announcement-card.list-view{flex-direction:column;gap:12px}.announcement-card.list-view .card-footer{flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-width:0}}.announcement-detail-page{min-height:100vh;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.detail-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;width:100%}.announcement-article{background:#fff;border-radius:20px;padding:50px;box-shadow:0 8px 30px #18454c1a;border:1px solid var(--gray-border);width:100%}.article-header{border-bottom:2px solid var(--gray-border);padding-bottom:25px;margin-bottom:30px}.header-top{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.pinned-badge{background:var(--main-accent);color:#fff;padding:6px 14px;border-radius:12px;font-size:.85em;font-weight:600}.priority-badge{padding:6px 14px;border-radius:12px;font-size:.85em;font-weight:600}.category-badge{background:var(--main-blue-light);color:var(--main-blue);padding:6px 14px;border-radius:12px;font-size:.85em;font-weight:600}.article-title{font-size:2.2em;font-weight:900;color:var(--main-blue);margin:0 0 15px;line-height:1.3}.article-meta{color:#6b7280;font-size:.9em;display:flex;gap:15px;flex-wrap:wrap}.article-content{margin-bottom:30px}.section-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:30px 0 15px;padding-bottom:10px;border-bottom:2px solid var(--main-blue-light)}.announcement-images{margin-top:30px}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-top:15px}.image-item{border:1px solid var(--gray-border);border-radius:12px;overflow:hidden;background:#f9fafb;transition:all .3s ease}.image-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.announcement-image{width:100%;height:200px;object-fit:cover;cursor:pointer;display:block}.announcement-image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#000000d9;cursor:pointer;padding:20px;box-sizing:border-box}.announcement-image-lightbox .lightbox-close{position:absolute;top:20px;right:24px;width:44px;height:44px;border:none;background:#ffffff26;color:#fff;font-size:28px;line-height:1;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:1}.announcement-image-lightbox .lightbox-close:hover{background:#ffffff4d}.announcement-image-lightbox .lightbox-image{max-width:95vw;max-height:95vh;width:auto;height:auto;object-fit:contain;cursor:default;border-radius:8px;box-shadow:0 8px 32px #00000080}.image-caption{padding:10px 15px;font-size:.85em;color:#6b7280;text-align:center;border-top:1px solid var(--gray-border)}.announcement-attachments{margin-top:30px}.attachments-list{display:flex;flex-direction:column;gap:10px;margin-top:15px}.attachment-item{display:flex;align-items:center;gap:12px;padding:12px 18px;background:#f9fafb;border:1px solid var(--gray-border);border-radius:8px;text-decoration:none;color:var(--main-blue);transition:all .3s ease}.attachment-item:hover{background:var(--main-blue-light);border-color:var(--main-blue);transform:translate(5px)}.attachment-item svg{width:18px;height:18px;color:var(--main-blue)}.attachment-name{flex:1;font-weight:500}.attachment-size{color:#6b7280;font-size:.85em}.content-text{font-size:1.1em;line-height:1.8;color:#374151}.content-text p{margin:0 0 20px}.article-footer{display:flex;gap:15px;padding-top:25px;border-top:2px solid var(--gray-border)}.btn-edit,.btn-delete{padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;border:none;transition:all .3s ease;font-size:1em}.btn-edit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.btn-delete{background:#fee2e2;color:#991b1b}.loading,.error-state{text-align:center;padding:60px;color:#6b7280;font-size:1.2em}.error-state{color:var(--danger-color)}@media (max-width: 768px){.detail-container{padding:0 20px}.announcement-article{padding:25px}.article-title{font-size:1.6em}.article-footer{flex-direction:column}}.announcement-form-page{min-height:100vh;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;width:100%}.announcement-form{background:#fff;border-radius:20px;padding:50px;box-shadow:0 8px 30px #18454c1a;border:1px solid var(--gray-border);width:100%}.form-group{margin-bottom:25px}.form-label{display:block;color:var(--main-blue);font-weight:600;margin-bottom:8px;font-size:1em}.form-input,.form-textarea,.form-select{width:100%;padding:12px 16px;border:2px solid var(--gray-border);border-radius:12px;font-size:1em;font-family:inherit;transition:all .3s ease;background:var(--input-bg);color:var(--main-blue)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a;background:#fff}.form-textarea{resize:vertical;min-height:200px}.checkbox-group{display:flex;flex-direction:column;gap:10px}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;color:var(--main-blue);font-weight:500}.checkbox-label input[type=checkbox]{width:20px;height:20px;accent-color:var(--main-accent);cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:25px;border-top:2px solid var(--gray-border)}.btn-cancel,.btn-submit{padding:12px 30px;border-radius:12px;font-weight:600;cursor:pointer;border:none;transition:all .3s ease;font-size:1em}.btn-cancel{background:#f3f4f6;color:#6b7280}.btn-cancel:hover{background:#e5e7eb}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;box-shadow:0 4px 15px #ff812b4d}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.btn-submit:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.form-container{padding:0 20px}.announcement-form{padding:25px}.form-row{grid-template-columns:1fr}}.announcement-schedule-list-page{min-height:100vh;background:var(--page-bg, #f5f6f8)}.announcement-schedule-list-container{max-width:960px;margin:0 auto;padding:1.5rem 1rem}.schedule-toolbar{display:flex;justify-content:flex-end;margin-bottom:1rem}.schedule-toolbar .btn-create{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--primary, #0d9488);color:#fff;border:none;border-radius:6px;font-size:.95rem;cursor:pointer}.schedule-toolbar .btn-create:hover{opacity:.9}.schedule-table-wrap{background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;overflow:hidden}.schedule-table{width:100%;border-collapse:collapse}.schedule-table th,.schedule-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #eee}.schedule-table th{background:#f8fafc;font-weight:600;color:#334155;font-size:.875rem}.schedule-table tbody tr:hover{background:#f8fafc}.schedule-table .col-title{max-width:280px;font-weight:500}.schedule-table .col-actions{white-space:nowrap}.schedule-table .btn-link{background:none;border:none;color:var(--primary, #0d9488);cursor:pointer;font-size:.875rem;padding:0 .5rem;margin-right:.5rem}.schedule-table .btn-link:hover{text-decoration:underline}.schedule-table .btn-link.btn-danger{color:#dc2626}.empty-state,.error-state{text-align:center;padding:3rem 1rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014}.empty-state .empty-icon{font-size:3rem;margin-bottom:.5rem}.empty-state p,.error-state p{color:#64748b;margin-bottom:1rem}.empty-state .btn-create,.error-state .btn-retry{padding:.5rem 1rem;background:var(--primary, #0d9488);color:#fff;border:none;border-radius:6px;cursor:pointer}.loading{text-align:center;padding:2rem;color:#64748b}.proposal-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.proposal-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.list-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:30px}.header-actions{display:flex;align-items:center;gap:15px}.view-toggle{display:flex;gap:5px;background:#fff;padding:4px;border-radius:8px;box-shadow:0 2px 8px #18454c1a}.view-btn{background:transparent;border:none;padding:8px 12px;border-radius:6px;font-size:1.2em;cursor:pointer;transition:all .3s ease;color:#6b7280}.btn-create{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;border-radius:10px;font-weight:600;font-size:.95em;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #18454c33}.btn-create:hover{transform:translateY(-2px);box-shadow:0 6px 16px #18454c4d}.filters-section{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap;align-items:center;justify-content:space-between}.filters-left{display:flex;gap:15px;flex-wrap:wrap;align-items:center;flex:1}.filters-right{display:flex;gap:15px;align-items:center;flex-shrink:0}.search-box{flex:1;min-width:300px;position:relative;display:flex;align-items:center;background:#fff;border:1px solid var(--gray-border);border-radius:10px;padding:0 15px;transition:all .3s ease}.search-box:focus-within{border-color:var(--main-blue);box-shadow:0 0 0 3px #18454c1a}.search-box svg{color:#9ca3af;margin-right:10px;flex-shrink:0}.search-input{flex:1;border:none;outline:none;padding:12px 0;font-size:.95em;background:transparent}.search-input::placeholder{color:#9ca3af}.clear-search{background:transparent;border:none;color:#9ca3af;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s}.clear-search:hover{color:var(--main-blue)}.filter-group{min-width:180px}.filter-select{width:100%;padding:12px 15px;border:1px solid var(--gray-border);border-radius:10px;font-size:.95em;background:#fff;cursor:pointer;transition:all .3s ease}.filter-select:focus{outline:none;border-color:var(--main-blue);box-shadow:0 0 0 3px #18454c1a}.btn-clear-filters{display:flex;align-items:center;gap:6px;padding:12px 20px;background:#fff;border:1px solid var(--gray-border);border-radius:10px;color:#6b7280;font-size:.95em;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-clear-filters:hover{background:#f9fafb;border-color:var(--main-blue);color:var(--main-blue)}.view-toggle{display:flex;gap:4px;background:#fff;padding:4px;border-radius:10px;box-shadow:0 2px 8px #0000001a;border:1px solid var(--gray-border)}.view-btn{padding:8px 12px;border:none;background:transparent;cursor:pointer;border-radius:6px;color:#6b7280;transition:all .2s;display:flex;align-items:center;justify-content:center}.view-btn:hover{background:#f3f4f6;color:var(--main-blue)}.view-btn.active{background:var(--main-blue);color:#fff}.proposals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:25px}.proposals-list{display:flex;flex-direction:column;gap:15px}.proposal-list-item{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 12px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:20px}.proposal-list-item:hover{transform:translate(4px);box-shadow:0 4px 20px #18454c1f}.proposal-list-item .card-header{flex:1;flex-direction:column;align-items:flex-start;gap:10px}.proposal-list-item .proposal-title{font-size:1.1em;margin:0}.proposal-list-item .proposal-description{flex:2;margin:0;font-size:.9em;color:#6b7280;max-width:500px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proposal-list-item .voting-stats{display:flex;gap:15px;padding:0;background:transparent;flex:1;justify-content:flex-end}.proposal-list-item .stat-item{flex-direction:row;gap:8px}.proposal-list-item .card-footer{border-top:none;padding-top:0;flex-direction:column;align-items:flex-end;gap:8px;min-width:150px}.proposal-card{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:15px}.proposal-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #18454c1f}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.proposal-title{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.card-badges{display:flex;gap:8px;flex-wrap:wrap}.status-badge,.priority-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;white-space:nowrap}.status-badge.draft{background:#f3f4f6;color:#6b7280}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.voting{background:#dbeafe;color:#1e40af}.status-badge.approved{background:#d1fae5;color:#065f46}.status-badge.rejected{background:#fee2e2;color:#991b1b}.status-badge.closed{background:#e5e7eb;color:#374151}.priority-badge.urgent{background:#fee2e2;color:#991b1b}.priority-badge.high{background:#fef3c7;color:#92400e}.priority-badge.normal{background:var(--main-blue-light);color:var(--main-blue)}.priority-badge.low{background:#f3f4f6;color:#6b7280}.proposal-description{color:#6b7280;font-size:.95em;line-height:1.6;margin:0;flex:1}.vote-action-hint{display:flex;align-items:center;gap:8px;padding:12px 16px;background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border-radius:12px;font-weight:600;font-size:.95em;cursor:pointer;transition:all .3s ease;margin-top:10px;box-shadow:0 3px 12px #ff812b40}.vote-action-hint:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff812b66}.vote-action-hint svg{width:18px;height:18px}.vote-action-hint span{flex:1}.voting-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:15px;background:#f9fafb;border-radius:12px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-label{font-size:.75em;color:#6b7280;font-weight:600}.stat-value{font-size:1.2em;font-weight:700;color:var(--main-blue)}.stat-value.support{color:#059669}.stat-value.oppose{color:#dc2626}.stat-value.rate{color:var(--main-accent)}.stat-value.lunch{color:#d97706}.stat-value.dinner{color:#7c3aed}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid var(--gray-border)}.proposer-info{display:flex;align-items:center;gap:8px}.proposer-label{font-size:.85em;color:#6b7280;font-weight:600}.proposer-name{font-size:.9em;color:var(--main-blue);font-weight:600}.proposal-date{color:#9ca3af;font-size:.85em}.admin-actions{display:flex;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid var(--gray-border);flex-wrap:wrap}.btn-start-voting,.btn-approve,.btn-reject,.btn-delete{padding:8px 16px;border:none;border-radius:8px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-start-voting:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.btn-approve:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-reject:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-delete:hover{transform:translateY(-2px);box-shadow:0 4px 12px #991b1b4d}.proposal-list-item .admin-actions{margin-top:0;padding-top:0;border-top:none;justify-content:flex-end}.empty-state p{color:#6b7280;font-size:1.2em;margin-bottom:30px}@media (max-width: 768px){.proposal-list-container{padding:20px 15px}.filters-section{flex-direction:column}.filters-left{width:100%}.filters-right{width:100%;justify-content:flex-end}.search-box{min-width:100%}.filter-group{width:100%}.proposals-grid{grid-template-columns:1fr}.voting-stats{grid-template-columns:repeat(2,1fr)}}.proposal-form-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.proposal-form-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.form-header{margin-bottom:30px}.proposal-form{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.form-group input[type=datetime-local]{cursor:pointer}.form-group input[type=file]{padding:8px;border:2px dashed var(--gray-border);border-radius:8px;cursor:pointer;transition:all .3s ease}.form-group input[type=file]:hover{border-color:var(--main-blue);background:#f9fafb}.form-hint{display:block;margin-top:5px;font-size:.85em;color:#6b7280}.upload-status{margin-top:10px;padding:10px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;color:#0369a1;font-size:.9em}.images-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;margin-top:15px}.image-item{position:relative;border:2px solid var(--gray-border);border-radius:8px;overflow:hidden;background:#f9fafb;transition:all .3s ease}.image-item:hover{border-color:var(--main-blue);box-shadow:0 2px 8px #18454c1a}.image-item img{width:100%;height:150px;object-fit:cover;display:block}.image-info{padding:8px;display:flex;justify-content:space-between;align-items:center;font-size:.85em;background:#fff}.image-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#374151}.image-size{color:#6b7280;margin-left:8px}.btn-remove-image{position:absolute;top:5px;right:5px;width:28px;height:28px;border-radius:50%;background:#ef4444e6;color:#fff;border:none;cursor:pointer;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1}.btn-remove-image:hover:not(:disabled){background:#dc2626;transform:scale(1.1)}.btn-remove-image:disabled{opacity:.5;cursor:not-allowed}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.proposal-form{padding:25px}}.proposal-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.proposal-detail-container{max-width:1400px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.detail-card{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--gray-border)}.proposal-title{font-size:2em;font-weight:700;color:var(--main-blue);margin:0;flex:1}.header-badges{display:flex;gap:10px;margin-left:20px}.status-badge,.priority-badge{padding:6px 12px;border-radius:20px;font-size:.85em;font-weight:600;white-space:nowrap}.priority-badge{background:var(--main-blue-light);color:var(--main-blue)}.info-section{margin-bottom:30px}.info-section h3{font-size:1.3em;font-weight:700;color:var(--main-blue);margin:0 0 15px}.info-item{display:flex;flex-direction:column;gap:5px}.info-item label{font-weight:600;color:#6b7280;font-size:.9em}.info-item span{color:#374151;font-size:1em}.description-text,.content-text{color:#374151;line-height:1.8;font-size:1.05em;white-space:pre-wrap;padding:15px;background:#f9fafb;border-radius:8px}.voting-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-top:20px}.stat-card{background:#f9fafb;border-radius:12px;padding:20px;text-align:center;border:2px solid var(--gray-border)}.stat-card.support{border-color:#10b981;background:#d1fae5}.stat-card.oppose{border-color:#ef4444;background:#fee2e2}.stat-card.abstain{border-color:#6b7280;background:#f3f4f6}.stat-card.lunch{border-color:#f59e0b;background:#fef3c7}.stat-card.dinner{border-color:#8b5cf6;background:#ede9fe}.stat-card.rate{border-color:var(--main-blue);background:var(--main-blue-light)}.stat-label{font-size:.9em;color:#6b7280;margin-bottom:8px;font-weight:600}.stat-value{font-size:2em;font-weight:700;color:var(--main-blue);margin-bottom:5px}.stat-card.support .stat-value{color:#059669}.stat-card.oppose .stat-value{color:#dc2626}.stat-card.lunch .stat-value{color:#d97706}.stat-card.dinner .stat-value{color:#7c3aed}.stat-percentage{font-size:.85em;color:#6b7280;font-weight:600}.stat-threshold{font-size:.8em;color:#6b7280;margin-top:5px}.vote-form{margin-top:20px}.vote-options{display:flex;gap:15px;margin-bottom:20px;flex-wrap:wrap}.vote-option{display:flex;align-items:center;cursor:pointer;padding:12px 20px;border:2px solid var(--gray-border);border-radius:8px;background:#fff;transition:all .3s ease}.vote-option:hover{border-color:var(--main-accent);background:var(--main-blue-light)}.vote-option input[type=radio]{margin-right:8px;cursor:pointer}.vote-option input[type=radio]:checked+.vote-option-label{font-weight:700}.vote-option-label{font-size:1em;cursor:pointer}.vote-option-label.support{color:#059669}.vote-option-label.oppose{color:#dc2626}.vote-option-label.abstain{color:#6b7280}.vote-option-label.lunch{color:#f59e0b}.vote-option-label.dinner{color:#8b5cf6}.vote-comment-group{margin-bottom:20px}.vote-comment-group label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px}.vote-comment-group textarea{width:100%;padding:12px;border:2px solid var(--gray-border);border-radius:8px;font-family:inherit;font-size:1em;resize:vertical;min-height:80px}.btn-vote{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none;padding:12px 30px;border-radius:8px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-vote:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.btn-vote:disabled{opacity:.6;cursor:not-allowed}.user-vote-info{padding:15px;background:#d1fae5;border-radius:8px;margin-bottom:15px}.user-vote-info p{margin:0 0 10px;color:#059669;font-weight:600}.btn-change-vote{background:#fff;color:var(--main-blue);border:2px solid var(--main-blue);padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-change-vote:hover{background:var(--main-blue);color:#fff}.review-comment{margin-top:15px;padding:15px;background:#f9fafb;border-radius:8px;border-left:4px solid var(--main-blue)}.review-comment label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px}.review-comment p{margin:0;color:#374151;line-height:1.6}.votes-list{margin-top:15px}.vote-item{padding:15px;background:#f9fafb;border-radius:8px;margin-bottom:10px;border-left:4px solid var(--gray-border)}.vote-header{display:flex;align-items:center;gap:15px;margin-bottom:8px}.voter-name{font-weight:600;color:var(--main-blue)}.vote-type-badge{padding:4px 10px;border-radius:12px;font-size:.85em;font-weight:600}.vote-type-badge.support{background:#d1fae5;color:#059669}.vote-type-badge.oppose{background:#fee2e2;color:#dc2626}.vote-type-badge.abstain{background:#f3f4f6;color:#6b7280}.vote-date{font-size:.85em;color:#6b7280;margin-left:auto}.vote-comment{color:#374151;font-size:.95em;line-height:1.6;margin-top:8px;padding-top:8px;border-top:1px solid var(--gray-border)}.detail-actions{display:flex;gap:15px;margin-top:30px;padding-top:30px;border-top:2px solid var(--gray-border)}.btn-edit,.btn-back{padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-edit{background:var(--main-blue);color:#fff;border:none}.btn-edit:hover{background:var(--main-accent);transform:translateY(-2px);box-shadow:0 4px 15px #18454c4d}.btn-back{background:#fff;color:var(--main-blue);border:2px solid var(--main-blue)}.btn-back:hover{background:var(--main-blue-light)}.review-section{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:12px;padding:25px;margin-top:20px}.review-title{display:flex;align-items:center;gap:10px;margin-bottom:20px!important;color:#92400e!important}.review-badge{padding:4px 12px;background:#f59e0b;color:#fff;border-radius:12px;font-size:.7em;font-weight:600;margin-left:auto}.review-actions{display:flex;gap:15px;flex-wrap:wrap}.review-form{margin-top:20px}.review-comment-group{margin-bottom:20px}.review-comment-group label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:8px}.review-comment-group textarea{width:100%;padding:12px;border:2px solid var(--gray-border);border-radius:8px;font-family:inherit;font-size:1em;resize:vertical;min-height:100px}.review-comment-group textarea:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.review-form-actions{display:flex;gap:15px;flex-wrap:wrap}.btn-start-voting,.btn-approve,.btn-reject,.btn-delete,.btn-cancel{padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-start-voting{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-start-voting:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.btn-approve{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-approve:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-reject{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-reject:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.btn-delete{background:linear-gradient(135deg,#991b1b,#7f1d1d);color:#fff}.btn-delete:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #991b1b4d}.btn-start-voting:disabled,.btn-approve:disabled,.btn-reject:disabled,.btn-delete:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.loading,.error{text-align:center;padding:60px 20px;font-size:1.2em;color:#6b7280}@media (max-width: 768px){.detail-header{flex-direction:column;gap:15px}.header-badges{margin-left:0}.voting-stats-grid{grid-template-columns:repeat(2,1fr)}.vote-options{flex-direction:column}}.proposal-management-page{display:flex;min-height:100vh;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.proposal-management-container{max-width:1600px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--gray-border)}.tab{padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease}.tab:hover{color:var(--main-blue);background:var(--main-blue-light)}.tab.active{color:var(--main-blue);border-bottom-color:var(--main-blue);background:var(--main-blue-light)}.tab-content{background:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border);width:100%;box-sizing:border-box}.filters{display:flex;gap:20px;margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid var(--gray-border)}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{font-weight:600;color:var(--main-blue);font-size:.9em}.filter-select{padding:10px 14px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;cursor:pointer;transition:all .3s ease}.filter-select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.loading,.empty-state{text-align:center;padding:60px 20px;font-size:1.2em;color:#6b7280}.table-container{overflow-x:auto}.proposals-table{width:100%;border-collapse:collapse;font-size:.95em}.proposals-table thead{background:var(--main-blue-light)}.proposals-table th{padding:15px 12px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--main-blue);white-space:nowrap}.proposals-table td{padding:15px 12px;border-bottom:1px solid var(--gray-border);vertical-align:middle}.proposals-table tbody tr:hover{background:#f9fafb}.proposal-title-link{color:var(--main-blue);font-weight:600;cursor:pointer;text-decoration:none;transition:all .3s ease}.proposal-title-link:hover{color:var(--main-accent);text-decoration:underline}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:.85em;font-weight:600;white-space:nowrap}.status-badge.draft{background:#e5e7eb;color:#6b7280}.status-badge.pending{background:#fef3c7;color:#d97706}.status-badge.voting{background:#dbeafe;color:#2563eb}.status-badge.approved{background:#d1fae5;color:#059669}.status-badge.rejected{background:#fee2e2;color:#dc2626}.status-badge.closed{background:#f3f4f6;color:#6b7280}.action-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.status-select{padding:6px 10px;border:2px solid var(--gray-border);border-radius:6px;font-size:.9em;background:#fff;cursor:pointer;transition:all .3s ease}.status-select:focus{outline:none;border-color:var(--main-accent)}.btn-edit,.btn-delete{padding:6px 12px;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-edit{background:var(--main-blue-light);color:var(--main-blue)}.btn-edit:hover{background:var(--main-blue);color:#fff}.btn-delete{background:#fee2e2;color:#dc2626}.btn-delete:hover{background:#dc2626;color:#fff}.proposal-form{max-width:100%}.form-group{display:flex;flex-direction:column;gap:10px;margin-bottom:25px}.form-group label{font-weight:600;color:var(--main-blue);font-size:1.05em}.form-group input,.form-group textarea,.form-group select{padding:12px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;transition:all .3s ease;background:#fff;width:100%;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.form-group textarea{resize:vertical;min-height:120px;line-height:1.6}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.form-section{margin-bottom:30px;padding:20px;background:#f9fafb;border-radius:12px;border:1px solid var(--gray-border)}.section-title{font-size:1.2em;font-weight:700;color:var(--main-blue);margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid var(--main-blue-light)}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:30px;border-top:2px solid var(--gray-border)}.btn-cancel,.btn-submit{padding:12px 30px;border-radius:8px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-cancel{background:#fff;color:var(--main-blue);border:2px solid var(--main-blue)}.btn-cancel:hover:not(:disabled){background:var(--main-blue-light)}.btn-submit{background:linear-gradient(135deg,var(--main-blue) 0%,var(--main-accent) 100%);color:#fff;border:none}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ff812b4d}.btn-cancel:disabled,.btn-submit:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.proposal-management-container{padding:15px}.tabs{flex-wrap:wrap}.form-row{grid-template-columns:1fr}.action-buttons{flex-direction:column}}.access-log-list-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.access-log-list-page.access-log-list-embedded{min-height:auto;background:transparent}.access-log-list-container{flex:1;max-width:1600px;margin:0 auto;padding:30px 20px;width:100%}.soyal-poll-section{background:#fff;border-radius:16px;padding:20px 30px;margin-bottom:20px;box-shadow:0 2px 10px #0000000d;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.btn-poll-soyal{padding:10px 20px;background:var(--main-blue, #1e3a5f);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-poll-soyal:hover:not(:disabled){opacity:.9}.btn-poll-soyal:disabled{opacity:.6;cursor:not-allowed}.btn-sync-records{padding:10px 20px;background:#2e7d32;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-sync-records:hover:not(:disabled){opacity:.9}.btn-sync-records:disabled{opacity:.6;cursor:not-allowed}.realtime-toggle{display:inline-flex;align-items:center;gap:8px;margin-left:15px;cursor:pointer;-webkit-user-select:none;user-select:none}.realtime-toggle input[type=checkbox]{cursor:pointer}.realtime-toggle span{font-size:14px;font-weight:500}.poll-message{flex:1;min-width:200px;padding:8px 12px;border-radius:8px;font-size:.95em}.poll-message-success{background:#e8f5e9;color:#2e7d32}.poll-message-error{background:#ffebee;color:#c62828}.poll-message-info{background:#e3f2fd;color:#1565c0}.list-header-card{background:#fff;border-radius:16px;padding:25px 30px;margin-bottom:20px;box-shadow:0 2px 10px #0000000d;width:100%}.header-row{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;width:100%}.filter-controls{display:flex;flex-wrap:wrap;gap:20px;align-items:center;flex:1;min-width:300px}.filter-select,.filter-input{padding:10px 15px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease;min-width:120px}.action-buttons{display:flex;gap:10px;flex-shrink:0}.list-header{margin-bottom:30px}.page-title{font-size:2.5em;font-weight:900;color:var(--main-blue);margin:0;letter-spacing:2px}.stats-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 15px #18454c14;border:1px solid var(--gray-border);text-align:center}.stat-label{font-size:.9em;color:#6b7280;font-weight:600;margin-bottom:10px}.stat-value{font-size:2em;font-weight:700;color:var(--main-blue)}.stat-value.enter{color:#059669}.stat-value.exit{color:#dc2626}.stat-value.success{color:#059669}.stat-value.failed{color:#f59e0b}.stat-value.denied{color:#dc2626}.filter-group{display:flex;align-items:center;gap:10px}.filter-group label{font-weight:600;color:var(--main-blue);white-space:nowrap}.filter-select,.filter-input{padding:10px 16px;border:2px solid var(--gray-border);border-radius:8px;font-size:1em;font-family:inherit;background:#fff;color:var(--main-blue);transition:all .3s ease}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 3px #ff812b1a}.logs-table-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 2px 10px #0000000d;overflow-x:auto}.logs-table{width:100%;border-collapse:collapse}.logs-table thead{background:#f9fafb}.logs-table th{padding:15px;text-align:left;font-weight:700;color:var(--main-blue);border-bottom:2px solid var(--gray-border);font-size:.9em;white-space:nowrap}.logs-table td{padding:15px;border-bottom:1px solid #e5e7eb;color:#374151}.logs-table tbody tr:hover{background:#f9fafb}.type-badge,.status-badge{padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;white-space:nowrap}.btn-view{background:var(--main-blue);color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:.85em;cursor:pointer;transition:all .3s ease}.btn-view:hover{background:var(--main-accent);transform:translateY(-1px)}.loading{text-align:center;padding:60px;color:#6b7280;font-size:1.2em}.empty-state{text-align:center;padding:80px 20px;background:#fff;border-radius:20px;box-shadow:0 4px 20px #18454c14}.empty-icon{font-size:4em;margin-bottom:20px}.empty-state p{color:#6b7280;font-size:1.2em}.empty-state .empty-hint{margin-top:12px;font-size:.95em;color:#9ca3af;max-width:480px;margin-left:auto;margin-right:auto;line-height:1.5}@media (max-width: 768px){.access-log-list-container{padding:0 20px}.stats-section{grid-template-columns:repeat(2,1fr)}.filters{flex-direction:column}.logs-table-container{overflow-x:scroll}}.access-log-detail-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#ecf3fa,#e1edfb,#d6e7f8)}.access-log-detail-container{max-width:1000px;margin:40px auto;padding:0 50px 40px;flex:1;width:100%}.detail-card{background:#fff;border-radius:20px;padding:40px;box-shadow:0 4px 20px #18454c14;border:1px solid var(--gray-border)}.detail-header{display:flex;gap:25px;margin-bottom:30px;padding-bottom:30px;border-bottom:2px solid var(--gray-border)}.header-icon{font-size:4em}.header-info{flex:1}.log-title{font-size:2em;font-weight:900;color:var(--main-blue);margin:0 0 15px;letter-spacing:1px}.header-badges{display:flex;gap:10px;flex-wrap:wrap}.type-badge,.status-badge{padding:6px 16px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap}.type-badge.enter{background:#d1fae5;color:#065f46}.type-badge.exit{background:#fee2e2;color:#991b1b}.status-badge.success{background:#d1fae5;color:#065f46}.status-badge.failed{background:#fef3c7;color:#92400e}.status-badge.denied{background:#fee2e2;color:#991b1b}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.info-item{display:flex;flex-direction:column;gap:8px}.info-item.full-width{grid-column:1 / -1}.info-label{font-weight:600;color:var(--main-blue);font-size:.9em}.info-value{color:#374151;font-size:1.05em;word-break:break-word}.loading,.error{text-align:center;padding:60px;color:#6b7280;font-size:1.2em}.error{color:#dc2626}@media (max-width: 768px){.access-log-detail-container{padding:0 20px}.detail-card{padding:25px}.detail-header{flex-direction:column}.info-grid{grid-template-columns:1fr}}.profile-preferences-page{min-height:100vh;display:flex;flex-direction:column;background:var(--gray-bg)}.profile-preferences-container{flex:1;max-width:800px;margin:40px auto;padding:0 20px}.profile-preferences-header{margin-bottom:30px}.page-title{display:flex;align-items:center;gap:12px;font-size:2em;font-weight:700;color:var(--main-blue);margin-bottom:10px}.page-subtitle{color:#6b7280;font-size:1.1em}.profile-preferences-content{background:#fff;border-radius:16px;padding:30px;box-shadow:0 2px 12px #18454c14;border:1px solid var(--gray-border)}.preference-section{margin-bottom:40px;padding-bottom:40px;border-bottom:1px solid var(--gray-border)}.preference-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title{font-size:1.5em;font-weight:700;color:var(--main-blue);margin-bottom:15px}.section-description{color:#6b7280;margin-bottom:20px;font-size:.95em}.profile-password-form{display:flex;flex-direction:column;gap:16px;max-width:420px}.profile-password-field{display:flex;flex-direction:column;gap:6px}.profile-password-field label{font-weight:600;color:var(--main-blue);font-size:.9em}.profile-password-field input{padding:10px 14px;border:1px solid var(--gray-border);border-radius:10px;font-size:1em}.profile-password-field input:focus{outline:none;border-color:var(--main-accent);box-shadow:0 0 0 2px #ff954033}.profile-password-hint{margin:0;font-size:.85em;color:#6b7280}.profile-password-error{padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;font-size:.9em}.avatar-section{display:flex;flex-direction:column;align-items:center;gap:20px}.avatar-preview{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--main-accent) 0%,#ff9540 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:2.5em;cursor:pointer;transition:all .3s ease;overflow:hidden;position:relative;border:4px solid var(--main-blue-light);box-shadow:0 4px 16px #18454c26}.avatar-preview:hover{transform:scale(1.05);box-shadow:0 6px 20px #18454c33}.avatar-preview .avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-uploading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;border-radius:50%}.spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.avatar-actions{display:flex;flex-direction:column;align-items:center;gap:10px}.avatar-hint{color:#6b7280;font-size:.85em;text-align:center;margin:0}.language-section{display:flex;flex-direction:column;gap:20px}.language-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.language-option{display:flex;align-items:center;gap:12px;padding:15px 20px;background:#fff;border:2px solid var(--gray-border);border-radius:12px;cursor:pointer;transition:all .3s ease;font-size:1em;color:var(--main-blue);position:relative}.language-option:hover{border-color:var(--main-accent);background:var(--main-blue-light);transform:translateY(-2px);box-shadow:0 4px 12px #18454c1a}.language-option.active{border-color:var(--main-accent);background:var(--main-blue-light);font-weight:600}.language-flag{font-size:1.5em;flex-shrink:0}.language-label{flex:1;text-align:left}.check-icon{color:var(--main-accent);font-size:1.2em}.language-option:disabled{opacity:.6;cursor:not-allowed}.preference-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:30px;border-top:1px solid var(--gray-border)}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;border:none}.btn-primary{background:var(--main-accent);color:#fff}.btn-primary:hover:not(:disabled){background:#e8862a;transform:translateY(-2px);box-shadow:0 4px 12px #ff95404d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#fff;color:var(--main-blue);border:2px solid var(--gray-border)}.btn-secondary:hover{background:var(--gray-bg);border-color:var(--main-accent)}.access-profile-not-found{color:#9ca3af;font-style:italic}.access-profile-error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;margin-bottom:14px;font-size:.95em}.access-profile-success{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;border-radius:8px;padding:10px 14px;margin-bottom:14px;font-size:.95em}.access-profile-field{margin-bottom:22px}.access-profile-label{display:block;font-weight:600;color:var(--main-blue);margin-bottom:10px;font-size:.95em}.acc-mode-options{display:flex;gap:12px;flex-wrap:wrap}.acc-mode-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:10px;border:2px solid var(--gray-border);background:#fff;color:#374151;font-size:.95em;font-weight:500;cursor:pointer;transition:all .2s}.acc-mode-btn:hover:not(:disabled){border-color:var(--main-accent);background:#fff8f3}.acc-mode-btn.active{border-color:var(--main-accent);background:var(--main-accent);color:#fff}.acc-mode-btn.active .check-icon{margin-left:4px}.acc-mode-btn:disabled{opacity:.6;cursor:not-allowed}.pin-current-hint{font-size:.85em;color:#6b7280;margin-bottom:10px}.pin-inputs{display:flex;gap:16px;flex-wrap:wrap}.pin-input-group{display:flex;flex-direction:column;gap:6px}.pin-input-group label{font-size:.85em;color:#6b7280;font-weight:500}.pin-input{width:120px;padding:10px 14px;border:1.5px solid var(--gray-border);border-radius:8px;font-size:1.4em;letter-spacing:.4em;text-align:center;color:var(--main-blue);transition:border-color .2s}.pin-input:focus{outline:none;border-color:var(--main-accent)}.access-profile-save-btn{margin-top:6px}.access-profile-sync-hint{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:.85em;color:#6b7280}@media (max-width: 768px){.profile-preferences-container{margin:20px auto;padding:0 15px}.profile-preferences-content{padding:20px}.page-title{font-size:1.5em}.language-options{grid-template-columns:1fr}.preference-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.meeting-calendar-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(165deg,#f0f4f8,#e8eef5 45%,#f5f7fa)}.meeting-calendar-main{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:1.5rem 1.25rem 3rem}.meeting-calendar-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.meeting-calendar-header h1{margin:0 0 .35rem;font-size:1.65rem;font-weight:700;color:#1e293b}.meeting-calendar-subtitle{margin:0;color:#64748b;font-size:.95rem}.meeting-calendar-ai-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;border:none;border-radius:8px;background:#ea580c;color:#fff;font-size:.9rem;cursor:pointer}.meeting-calendar-ai-btn:hover{background:#c2410c}.meeting-calendar-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:.75rem 1rem;background:#fff;border-radius:10px;box-shadow:0 1px 3px #0f172a0f}.mc-btn{padding:.4rem .75rem;border:1px solid #cbd5e1;border-radius:6px;background:#fff;cursor:pointer;font-size:.875rem}.mc-btn:hover{background:#f8fafc}.mc-btn-secondary{margin-left:auto}.mc-range-label{font-weight:600;color:#334155;font-size:.9rem}.mc-loading,.mc-error,.mc-empty{padding:1rem;color:#64748b}.mc-error{color:#dc2626}.meeting-calendar-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1.25rem;align-items:start}@media (max-width: 900px){.meeting-calendar-grid{grid-template-columns:1fr}}.mc-panel{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 1px 4px #0f172a12}.mc-panel h2{margin:0;font-size:1.1rem;color:#1e293b}.mc-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.mc-date-input{padding:.35rem .5rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem}.mc-date-caption{margin:0 0 1rem;font-size:.85rem;color:#64748b}.mc-room-list{display:flex;flex-direction:column;gap:.85rem}.mc-room-card{border:1px solid #e2e8f0;border-radius:8px;padding:.85rem 1rem}.mc-room-card h3{margin:0 0 .2rem;font-size:.95rem;color:#0f172a}.mc-room-meta{margin:0 0 .5rem;font-size:.8rem;color:#94a3b8}.mc-room-free{margin:0;font-size:.875rem;color:#16a34a}.mc-slot-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.mc-slot{display:grid;grid-template-columns:auto 1fr auto;gap:.5rem .75rem;padding:.45rem .6rem;border-radius:6px;background:#f8fafc;font-size:.85rem}.mc-slot.mine{background:#fff7ed;border:1px solid #fed7aa}.mc-slot-time{font-weight:600;color:#334155;white-space:nowrap}.mc-slot-title{color:#475569}.mc-slot-user{color:#64748b;font-size:.8rem;white-space:nowrap}.mc-mine-panel h2{margin-bottom:1rem}.mc-timeline{display:flex;flex-direction:column;gap:1rem}.mc-day-label{font-weight:600;font-size:.875rem;color:#475569;margin-bottom:.4rem}.mc-day-group ul{list-style:none;margin:0;padding:0}.mc-my-item{display:flex;flex-wrap:wrap;gap:.35rem .75rem;padding:.55rem 0;border-bottom:1px solid #f1f5f9;font-size:.875rem}.mc-my-time{font-weight:600;color:#ea580c}.mc-my-room{color:#1e293b}.mc-my-title{color:#64748b;width:100%}.ai-test-page{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(1200px 480px at 10% -10%,rgba(20,120,134,.12),transparent 60%),radial-gradient(900px 420px at 100% 0%,rgba(255,129,43,.1),transparent 55%),#f4f7f8}.ai-test-main{flex:1;width:min(920px,calc(100% - 32px));margin:20px auto 32px;display:flex;flex-direction:column;gap:16px}.ai-test-banner{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--gray-border);border-radius:var(--radius-lg);padding:20px 22px}.ai-test-banner h1{font-size:1.35rem;color:var(--main-blue);margin-bottom:6px;font-weight:700}.ai-test-banner p{color:#5b6770;font-size:.92rem;line-height:1.55;max-width:58ch}.ai-test-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.ai-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#eef6f7;color:var(--main-blue);font-size:.78rem;font-weight:600}.ai-pill-ok{background:#e8f8f1;color:#0f7a4c}.ai-lang-select{border:1px solid var(--gray-border);background:#fff;color:#38434a;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:.85rem}.ai-lang-select:hover{border-color:var(--main-blue);color:var(--main-blue)}.ai-lang-select:disabled{opacity:.55;cursor:not-allowed}.ai-reset-btn{border:1px solid var(--gray-border);background:#fff;color:#38434a;border-radius:8px;padding:6px 12px;cursor:pointer;font-size:.85rem}.ai-reset-btn:hover{border-color:var(--main-blue);color:var(--main-blue)}.ai-reset-btn:disabled{opacity:.55;cursor:not-allowed}.ai-reset-btn-active{border-color:var(--main-blue);color:var(--main-blue);background:#eef6f7}.ai-history-panel{background:#fff;border:1px solid var(--gray-border);border-radius:var(--radius-lg);padding:12px 14px;max-height:240px;overflow-y:auto}.ai-history-empty{margin:4px 6px 10px;color:#7a8790;font-size:.88rem}.ai-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.ai-history-list li{display:flex;align-items:stretch;gap:6px}.ai-history-item{flex:1;text-align:left;border:1px solid transparent;background:#f7fafb;border-radius:10px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-width:0}.ai-history-item:hover:not(:disabled){border-color:var(--main-blue-light, #9ec9cf);background:#eef6f7}.ai-history-item:disabled{opacity:.6;cursor:not-allowed}.ai-history-item-active{border-color:var(--main-blue);background:#e8f4f5}.ai-history-title{font-size:.9rem;color:#243038;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-history-meta{font-size:.75rem;color:#7a8790}.ai-history-delete{border:1px solid var(--gray-border);background:#fff;color:#8a4b4b;border-radius:10px;padding:0 12px;cursor:pointer;font-size:.8rem;flex-shrink:0}.ai-history-delete:hover:not(:disabled){border-color:#c45d5d;background:#fff5f5}.ai-history-delete:disabled{opacity:.5;cursor:not-allowed}.ai-test-chat{background:#fff;border:1px solid var(--gray-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;min-height:62vh;overflow:hidden}.ai-test-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,#fbfcfd,#fff 40%)}.ai-bubble{max-width:min(78%,640px);display:flex;flex-direction:column;gap:4px}.ai-bubble-user{align-self:flex-end}.ai-bubble-assistant,.ai-bubble-system{align-self:flex-start}.ai-bubble-label{font-size:.75rem;color:#7a8790;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ai-edit-btn{margin-left:auto;border:1px solid var(--gray-border);background:#fff;color:#5b6770;border-radius:999px;padding:2px 8px;font-size:.72rem;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.ai-edit-btn:hover:not(:disabled){border-color:var(--main-blue);color:var(--main-blue)}.ai-edit-btn:disabled{opacity:.5;cursor:not-allowed}.ai-edit-box{display:flex;flex-direction:column;gap:8px;max-width:min(78%,640px)}.ai-edit-box textarea{width:100%;resize:vertical;border:1px solid var(--main-blue-light);border-radius:12px;padding:10px 12px;font:inherit;background:#fff}.ai-edit-actions{display:flex;gap:8px;flex-wrap:wrap}.ai-intent{background:#fff4eb;color:#c45d12;border-radius:999px;padding:1px 8px;font-size:.7rem}.ai-bubble-content{padding:12px 14px;border-radius:14px;line-height:1.55;white-space:pre-wrap;word-break:break-word;font-size:.95rem}.ai-msg-link{color:var(--main-blue);text-decoration:underline;word-break:break-all}.ai-msg-link:hover{color:var(--main-blue-light)}.ai-bubble-user .ai-bubble-content{background:var(--main-blue);color:#fff;border-bottom-right-radius:4px}.ai-bubble-assistant .ai-bubble-content{background:#eef6f7;color:#243038;border-bottom-left-radius:4px}.ai-bubble-system .ai-bubble-content{background:#fff1f1;color:#9b1c1c;border:1px solid #f5c2c2}.ai-typing .ai-bubble-content{color:#6a7882;font-style:italic}.ai-stop-btn{display:inline-flex;align-items:center;gap:6px;margin-left:auto;border:1px solid #c23a3a;background:#fff1f1;color:#c23a3a;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:600;cursor:pointer;line-height:1.2}.ai-stop-btn:hover{background:#ffe0e0}.ai-stop-btn-inline{margin-left:0}.ai-stop-bar{display:flex;justify-content:flex-start;padding:0 4px 8px}.ai-composer-stop{background:#c23a3a!important;color:#fff!important;flex-shrink:0}.ai-composer-stop:hover:not(:disabled){background:#a82f2f!important}.ai-bubble-typing-out{min-height:1.55em}.ai-caret{display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:-.1em;background:var(--main-blue);animation:ai-caret-blink .85s steps(1) infinite}@keyframes ai-caret-blink{0%,45%{opacity:1}50%,to{opacity:0}}.ai-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}.ai-chip{border:1px solid var(--gray-border);background:#f7fbff;color:var(--main-blue);border-radius:999px;padding:6px 12px;font-size:.82rem;cursor:pointer}.ai-chip:hover:not(:disabled){border-color:var(--main-blue-light);background:#e8f5f5}.ai-chip:disabled{opacity:.55;cursor:not-allowed}.ai-chip-confirm{border-color:#0f7a4c;background:#e8f8f1;color:#0f7a4c;font-weight:600}.ai-chip-confirm:hover:not(:disabled){background:#d7f3e6}.ai-chip-cancel{border-color:#c23a3a;background:#fff1f1;color:#c23a3a;font-weight:600}.ai-chip-cancel:hover:not(:disabled){background:#ffe4e4}.ai-composer{display:flex;gap:10px;padding:14px 16px 16px;border-top:1px solid var(--gray-border);background:#fff}.ai-composer textarea{flex:1;resize:none;border:1px solid var(--gray-border);border-radius:12px;padding:12px 14px;font:inherit;background:var(--input-bg);color:#243038;min-height:56px}.ai-composer textarea:focus{outline:none;border-color:var(--main-blue-light);box-shadow:0 0 0 3px #1478861f}.ai-composer button{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:12px;background:var(--main-accent);color:#fff;font-weight:600;padding:0 18px;cursor:pointer;white-space:nowrap}.ai-composer button:hover:not(:disabled){background:var(--main-accent-hover)}.ai-composer button:disabled{opacity:.55;cursor:not-allowed}.ai-mic-btn{display:inline-flex;align-items:center;justify-content:center;width:56px;min-width:56px;height:56px;border:1px solid var(--gray-border);border-radius:50%;background:#f7fbff;color:var(--main-blue);font-size:1.05rem;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none;transition:background .15s ease,color .15s ease,border-color .15s ease}.ai-mic-btn:hover:not(:disabled){border-color:var(--main-blue-light);background:#e8f5f5}.ai-mic-btn-active{background:#c23a3a;border-color:#c23a3a;color:#fff;animation:ai-mic-pulse 1.1s ease-in-out infinite}@keyframes ai-mic-pulse{0%,to{box-shadow:0 0 #c23a3a73}50%{box-shadow:0 0 0 8px #c23a3a14}}.ai-recording-hint{padding:0 16px 12px;color:#c23a3a;font-size:.85rem}.ai-recording-preview em{margin-left:6px;color:#8a8f98;font-style:italic;font-weight:400}.ai-error{padding:0 16px 12px;color:var(--danger-color);font-size:.85rem}@media (max-width: 720px){.ai-test-banner{flex-direction:column}.ai-test-meta{justify-content:flex-start}.ai-bubble{max-width:92%}.ai-composer{flex-wrap:wrap}.ai-composer textarea{order:1;flex-basis:100%}.ai-mic-btn{order:2}.ai-composer button:not(.ai-mic-btn){order:3;flex:1;height:44px;justify-content:center}}.app{min-height:100vh}:root{--main-bg: #ffffff;--main-blue: #147886;--main-blue-light: #20B2AA;--main-blue-hover: #48D1CC;--main-accent: #FF812B;--main-accent-hover: #ff9540;--sidebar-bg: #147886;--sidebar-active-bg: #20B2AA;--sidebar-active-border: #FF812B;--gray-border: #e2e7ed;--input-bg: #f7fbff;--box-shadow: 0 8px 40px #0a2c5540;--radius-lg: 18px;--radius-md: 10px;--radius-sm: 5px;--success-color: #10b981;--warning-color: #f59e0b;--danger-color: #ef4444}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;font-family:Noto Sans TC,Microsoft JhengHei,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#38434a}#root{min-height:100vh}:root,:host{--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Solid";--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Regular";--fa-font-light: normal 300 1em/1 "Font Awesome 6 Light";--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Thin";--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands"}svg:not(:root).svg-inline--fa,svg:not(:host).svg-inline--fa{overflow:visible;box-sizing:content-box}.svg-inline--fa{display:var(--fa-display, inline-block);height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0em}.svg-inline--fa.fa-sm{vertical-align:-.07143em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left{margin-right:var(--fa-pull-margin, .3em);width:auto}.svg-inline--fa.fa-pull-right{margin-left:var(--fa-pull-margin, .3em);width:auto}.svg-inline--fa.fa-li{width:var(--fa-li-width, 2em);top:.25em}.svg-inline--fa.fa-fw{width:var(--fa-fw-width, 1.25em)}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers-text,.fa-layers-counter{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color, #ff253a);border-radius:var(--fa-counter-border-radius, 1em);box-sizing:border-box;color:var(--fa-inverse, #fff);line-height:var(--fa-counter-line-height, 1);max-width:var(--fa-counter-max-width, 5em);min-width:var(--fa-counter-min-width, 1.5em);overflow:hidden;padding:var(--fa-counter-padding, .25em .5em);right:var(--fa-right, 0);text-overflow:ellipsis;top:var(--fa-top, 0);-webkit-transform:scale(var(--fa-counter-scale, .25));transform:scale(var(--fa-counter-scale, .25));-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom, 0);right:var(--fa-right, 0);top:auto;-webkit-transform:scale(var(--fa-layers-scale, .25));transform:scale(var(--fa-layers-scale, .25));-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom, 0);left:var(--fa-left, 0);right:auto;top:auto;-webkit-transform:scale(var(--fa-layers-scale, .25));transform:scale(var(--fa-layers-scale, .25));-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top, 0);right:var(--fa-right, 0);-webkit-transform:scale(var(--fa-layers-scale, .25));transform:scale(var(--fa-layers-scale, .25));-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:var(--fa-left, 0);right:auto;top:var(--fa-top, 0);-webkit-transform:scale(var(--fa-layers-scale, .25));transform:scale(var(--fa-layers-scale, .25));-webkit-transform-origin:top left;transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin, 2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em) * -1);position:absolute;text-align:center;width:var(--fa-li-width, 2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color, #eee);border-radius:var(--fa-border-radius, .1em);border-style:var(--fa-border-style, solid);border-width:var(--fa-border-width, .08em);padding:var(--fa-border-padding, .2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin, .3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin, .3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay, 0s);animation-delay:var(--fa-animation-delay, 0s);-webkit-animation-direction:var(--fa-animation-direction, normal);animation-direction:var(--fa-animation-direction, normal);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-iteration-count:var(--fa-animation-iteration-count, infinite);-webkit-animation-timing-function:var(--fa-animation-timing, ease-in-out);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay, 0s);animation-delay:var(--fa-animation-delay, 0s);-webkit-animation-direction:var(--fa-animation-direction, normal);animation-direction:var(--fa-animation-direction, normal);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-iteration-count:var(--fa-animation-iteration-count, infinite);-webkit-animation-timing-function:var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1));animation-timing-function:var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-delay:var(--fa-animation-delay, 0s);animation-delay:var(--fa-animation-delay, 0s);-webkit-animation-direction:var(--fa-animation-direction, normal);animation-direction:var(--fa-animation-direction, normal);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-iteration-count:var(--fa-animation-iteration-count, infinite);-webkit-animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1));animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-delay:var(--fa-animation-delay, 0s);animation-delay:var(--fa-animation-delay, 0s);-webkit-animation-direction:var(--fa-animation-direction, normal);animation-direction:var(--fa-animation-direction, normal);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-iteration-count:var(--fa-animation-iteration-count, infinite);-webkit-animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1));animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay, 0s);animation-delay:var(--fa-animation-delay, 0s);-webkit-animation-direction:var(--fa-animation-direction, normal);animation-direction:var(--fa-animation-direction, normal);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-iteration-count:var(--fa-animation-iteration-count, infinite);-webkit-animation-timing-function:var(--fa-animation-timing, ease-in-out);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-delay:var(--fa-animation-delay, 0s);animation-delay:var(--fa-animation-delay, 0s);-webkit-animation-direction:var(--fa-animation-direction, normal);animation-direction:var(--fa-animation-direction, normal);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-iteration-count:var(--fa-animation-iteration-count, infinite);-webkit-animation-timing-function:var(--fa-animation-timing, linear);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-delay:var(--fa-animation-delay, 0s);animation-delay:var(--fa-animation-delay, 0s);-webkit-animation-direction:var(--fa-animation-direction, normal);animation-direction:var(--fa-animation-direction, normal);-webkit-animation-duration:var(--fa-animation-duration, 2s);animation-duration:var(--fa-animation-duration, 2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-iteration-count:var(--fa-animation-iteration-count, infinite);-webkit-animation-timing-function:var(--fa-animation-timing, linear);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-reverse{--fa-animation-direction: reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction, normal);animation-direction:var(--fa-animation-direction, normal);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-iteration-count:var(--fa-animation-iteration-count, infinite);-webkit-animation-timing-function:var(--fa-animation-timing, steps(8));animation-timing-function:var(--fa-animation-timing, steps(8))}@media (prefers-reduced-motion: reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale, 1.25));transform:scale(var(--fa-beat-scale, 1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale, 1.25));transform:scale(var(--fa-beat-scale, 1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x, 1.1),var(--fa-bounce-start-scale-y, .9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x, 1.1),var(--fa-bounce-start-scale-y, .9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x, .9),var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em));transform:scale(var(--fa-bounce-jump-scale-x, .9),var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x, 1.05),var(--fa-bounce-land-scale-y, .95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x, 1.05),var(--fa-bounce-land-scale-y, .95)) translateY(0)}57%{-webkit-transform:scale(1,1) translateY(var(--fa-bounce-rebound, -.125em));transform:scale(1) translateY(var(--fa-bounce-rebound, -.125em))}64%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1,1) translateY(0);transform:scale(1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x, 1.1),var(--fa-bounce-start-scale-y, .9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x, 1.1),var(--fa-bounce-start-scale-y, .9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x, .9),var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em));transform:scale(var(--fa-bounce-jump-scale-x, .9),var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x, 1.05),var(--fa-bounce-land-scale-y, .95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x, 1.05),var(--fa-bounce-land-scale-y, .95)) translateY(0)}57%{-webkit-transform:scale(1,1) translateY(var(--fa-bounce-rebound, -.125em));transform:scale(1) translateY(var(--fa-bounce-rebound, -.125em))}64%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1,1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity, .4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity, .4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity, .4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale, 1.125));transform:scale(var(--fa-beat-fade-scale, 1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity, .4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale, 1.125));transform:scale(var(--fa-beat-fade-scale, 1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -180deg));transform:rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -180deg));transform:rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle, none));transform:rotate(var(--fa-rotate-angle, none))}.fa-stack{display:inline-block;vertical-align:middle;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;z-index:var(--fa-stack-z-index, auto)}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:var(--fa-inverse, #fff)}.sr-only,.fa-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only-focusable:not(:focus),.fa-sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color, currentColor);opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color, currentColor);opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse,.fa-duotone.fa-inverse{color:var(--fa-inverse, #fff)}
