*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#f5f7fa;color:#1a1a1a}#app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:#1e293b;color:#fff;display:flex;align-items:center;padding:0 24px;height:64px;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:100}.header-left{display:flex;align-items:center;margin-right:32px}.logo{display:flex;align-items:center;gap:12px}.logo-img{height:36px;width:auto;display:block}.main-nav{display:flex;align-items:center;gap:4px;flex:1;overflow-x:auto}.nav-item{display:flex;align-items:center;gap:8px;padding:8px 16px;color:#ffffffb3;text-decoration:none;border-radius:6px;font-size:14px;font-weight:500;transition:all .2s;white-space:nowrap}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item.active,.nav-item.router-link-active{background:#3b82f633;color:#60a5fa}.nav-icon{font-size:16px}.header-right{display:flex;align-items:center;gap:24px}.notifications{position:relative;cursor:pointer}.notification-icon{font-size:20px}.notification-badge{position:absolute;top:-8px;right:-8px;background:#ef4444;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.user-profile{position:relative;display:flex;align-items:center;gap:12px;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s}.user-profile:hover{background:#ffffff1a}.user-info{text-align:right}.user-name{font-size:14px;font-weight:600}.user-role{font-size:12px;color:#fff9}.user-avatar{width:40px;height:40px;border-radius:50%;background:#3b82f6;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.user-menu{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;overflow:hidden;z-index:1000}.menu-item{display:block;width:100%;padding:12px 16px;text-align:left;background:none;border:none;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.menu-item.menu-link{text-decoration:none}.menu-item:hover{background:#f3f4f6}.nav-dropdown{position:relative}.nav-item-btn{background:none;border:none;cursor:pointer;font-family:inherit}.nav-caret{font-size:10px;margin-left:2px;opacity:.7}.nav-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:8px;min-width:220px;box-shadow:0 8px 24px #0000004d;z-index:200;overflow:hidden}.nav-dropdown-item{display:block;padding:12px 16px;color:#fffc;text-decoration:none;font-size:14px;font-weight:500;transition:background .15s,color .15s;white-space:nowrap}.nav-dropdown-item:hover{background:#ffffff1a;color:#fff}.nav-dropdown-item.active{background:#3b82f633;color:#60a5fa}.app-main{flex:1;padding:32px;max-width:1600px;width:100%;margin:0 auto}.app-main.no-header,.app-main-login{padding:0;max-width:none}.login-container[data-v-362e669c]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e293b,#334155);padding:24px}.login-box[data-v-362e669c]{background:#fff;border-radius:16px;padding:48px;width:100%;max-width:440px;box-shadow:0 20px 60px #0000004d}.login-header[data-v-362e669c]{text-align:center;margin-bottom:40px}.logo[data-v-362e669c]{display:flex;justify-content:center;margin-bottom:24px}.login-header h1[data-v-362e669c]{font-size:32px;font-weight:700;color:#1e293b;margin-bottom:8px;letter-spacing:1px}.login-header p[data-v-362e669c]{font-size:14px;color:#64748b;font-weight:500}.login-form[data-v-362e669c]{display:flex;flex-direction:column;gap:24px}.form-group[data-v-362e669c]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-362e669c]{font-size:14px;font-weight:600;color:#374151}.form-group input[data-v-362e669c]{padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;transition:all .2s}.form-group input[data-v-362e669c]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.error-message[data-v-362e669c]{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:8px;font-size:14px;border:1px solid #fecaca}.login-button[data-v-362e669c]{padding:14px 24px;background:#1e3a8a;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.login-button[data-v-362e669c]:hover:not(:disabled){background:#1e40af;transform:translateY(-1px);box-shadow:0 4px 12px #1e3a8a4d}.login-button[data-v-362e669c]:disabled{opacity:.6;cursor:not-allowed}.dashboard-view[data-v-5ac00343]{width:100%}.dashboard-header[data-v-5ac00343]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;flex-wrap:wrap;gap:12px}.dashboard-header h1[data-v-5ac00343]{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.header-actions[data-v-5ac00343]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.period-filter[data-v-5ac00343]{display:flex;background:#f3f4f6;border-radius:10px;padding:4px;gap:2px}.period-btn[data-v-5ac00343]{padding:7px 16px;border:none;border-radius:7px;font-size:13px;font-weight:500;cursor:pointer;background:transparent;color:#6b7280;transition:all .18s}.period-btn[data-v-5ac00343]:hover{color:#1a1a1a;background:#fff9}.period-btn.active[data-v-5ac00343]{background:#fff;color:#1a1a1a;font-weight:600;box-shadow:0 1px 4px #0000001a}.btn-primary[data-v-5ac00343],.btn-secondary[data-v-5ac00343]{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary[data-v-5ac00343]{background:#3b82f6;color:#fff}.btn-primary[data-v-5ac00343]:hover{background:#2563eb}.btn-secondary[data-v-5ac00343]{background:#fff;color:#1a1a1a;border:1px solid #e5e7eb}.btn-secondary[data-v-5ac00343]:hover{background:#f9fafb}.btn-small[data-v-5ac00343]{padding:6px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer}.btn-small[data-v-5ac00343]:hover{background:#f9fafb}.bu-filter[data-v-5ac00343]{display:flex;align-items:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}.bu-filter-label[data-v-5ac00343]{font-size:13px;font-weight:600;color:#6b7280;white-space:nowrap}.bu-filter-buttons[data-v-5ac00343]{display:flex;gap:8px;flex-wrap:wrap}.bu-btn[data-v-5ac00343]{padding:7px 20px;border:1.5px solid #e5e7eb;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;background:#fff;color:#374151;transition:all .18s;letter-spacing:.3px}.bu-btn[data-v-5ac00343]:hover{border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.bu-btn.active[data-v-5ac00343]{background:#3b82f6;border-color:#3b82f6;color:#fff;box-shadow:0 2px 8px #3b82f64d}.kpi-grid[data-v-5ac00343]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin-bottom:40px}.kpi-card[data-v-5ac00343]{border-radius:16px;padding:24px;color:#fff;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.kpi-card.clickable[data-v-5ac00343]{cursor:pointer}.kpi-card[data-v-5ac00343]:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000026}.kpi-blue[data-v-5ac00343]{background:linear-gradient(135deg,#3b82f6,#2563eb)}.kpi-teal[data-v-5ac00343]{background:linear-gradient(135deg,#0d9488,#0f766e)}.kpi-green[data-v-5ac00343]{background:linear-gradient(135deg,#10b981,#059669)}.kpi-slate[data-v-5ac00343]{background:linear-gradient(135deg,#475569,#334155)}.kpi-amber[data-v-5ac00343]{background:linear-gradient(135deg,#f59e0b,#d97706)}.kpi-cyan[data-v-5ac00343]{background:linear-gradient(135deg,#0891b2,#0e7490)}.kpi-red[data-v-5ac00343]{background:linear-gradient(135deg,#ef4444,#dc2626)}.kpi-header[data-v-5ac00343]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.kpi-label[data-v-5ac00343]{font-size:13px;font-weight:500;opacity:.9}.kpi-icon[data-v-5ac00343]{font-size:22px;opacity:.5}.kpi-value[data-v-5ac00343]{font-size:38px;font-weight:700;line-height:1;margin-bottom:8px;letter-spacing:-1px}.kpi-sub[data-v-5ac00343]{font-size:12px;opacity:.85;font-weight:400}.kpi-sub-highlight[data-v-5ac00343]{font-weight:700;opacity:1}.kpi-date[data-v-5ac00343]{font-size:11px;opacity:.7;margin-top:4px}.kpi-bar[data-v-5ac00343]{margin-top:12px;height:4px;background:#ffffff4d;border-radius:2px;overflow:hidden}.kpi-bar-fill[data-v-5ac00343]{height:100%;background:#ffffffd9;border-radius:2px;transition:width .8s ease}.section[data-v-5ac00343]{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px}.section-header[data-v-5ac00343]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-header h2[data-v-5ac00343]{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.section-icon[data-v-5ac00343]{font-size:20px}.section-icon.warning[data-v-5ac00343]{color:#f59e0b}.view-all-link[data-v-5ac00343]{color:#3b82f6;text-decoration:none;font-size:14px;font-weight:500;cursor:pointer}.view-all-link[data-v-5ac00343]:hover{text-decoration:underline}.projects-grid[data-v-5ac00343]{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px}.project-card[data-v-5ac00343]{background:#fff;border:1px solid #e5e7eb;border-left:4px solid;border-radius:12px;padding:20px;transition:box-shadow .2s,transform .2s}.project-card.clickable[data-v-5ac00343]{cursor:pointer}.project-card[data-v-5ac00343]:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.project-card.border-green[data-v-5ac00343]{border-left-color:#10b981}.project-card.border-orange[data-v-5ac00343]{border-left-color:#f97316}.project-header[data-v-5ac00343]{display:flex;justify-content:space-between;margin-bottom:16px}.project-header h3[data-v-5ac00343]{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 6px}.project-code[data-v-5ac00343]{font-size:12px;color:#6b7280;margin-bottom:4px}.project-client[data-v-5ac00343]{font-size:13px;color:#374151}.project-site[data-v-5ac00343]{font-size:12px;color:#6b7280;margin-top:2px}.status-badge[data-v-5ac00343]{padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.status-badge.status-green[data-v-5ac00343]{background:#d1fae5;color:#065f46}.status-badge.status-orange[data-v-5ac00343]{background:#fed7aa;color:#9a3412}.project-progress[data-v-5ac00343]{margin-bottom:16px}.progress-header[data-v-5ac00343]{display:flex;justify-content:space-between;font-size:13px;color:#6b7280;margin-bottom:8px}.progress-value[data-v-5ac00343]{font-weight:600;color:#1a1a1a}.progress-bar[data-v-5ac00343]{height:8px;background:#f3f4f6;border-radius:4px;overflow:hidden}.progress-fill[data-v-5ac00343]{height:100%;border-radius:4px;transition:width .3s}.progress-fill.bg-green[data-v-5ac00343]{background:#10b981}.progress-fill.bg-orange[data-v-5ac00343]{background:#f97316}.project-budget[data-v-5ac00343]{display:flex;justify-content:space-between;font-size:13px;color:#6b7280;padding-top:16px;border-top:1px solid #f3f4f6}.budget-value[data-v-5ac00343]{font-weight:600;color:#1a1a1a}.budget-detail[data-v-5ac00343]{display:flex;justify-content:space-between;font-size:11px;color:#6b7280;margin-top:4px}.bottom-grid[data-v-5ac00343]{display:grid;grid-template-columns:1fr 1fr;gap:24px}.expiring-certs[data-v-5ac00343],.recent-activity[data-v-5ac00343]{margin-bottom:0}.certs-list[data-v-5ac00343]{display:flex;flex-direction:column;gap:12px}.cert-item[data-v-5ac00343]{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#f9fafb;border-radius:8px;transition:background-color .2s,transform .2s}.cert-item.clickable[data-v-5ac00343]{cursor:pointer}.cert-item.clickable[data-v-5ac00343]:hover{background:#f3f4f6;transform:translate(4px)}.cert-info[data-v-5ac00343]{flex:1}.cert-name[data-v-5ac00343]{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.cert-type[data-v-5ac00343]{font-size:13px;color:#6b7280}.cert-expiry[data-v-5ac00343]{text-align:right}.expiry-date[data-v-5ac00343]{font-size:13px;color:#374151;margin-bottom:4px}.days-left[data-v-5ac00343]{font-size:13px;font-weight:600;color:#92400e;background:#fef3c7;padding:3px 10px;border-radius:6px;display:inline-block}.days-left.urgent[data-v-5ac00343]{color:#991b1b;background:#fee2e2}.activity-list[data-v-5ac00343]{display:flex;flex-direction:column;gap:16px}.activity-item[data-v-5ac00343]{display:flex;align-items:flex-start;gap:12px}.activity-dot[data-v-5ac00343]{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0}.activity-dot.dot-blue[data-v-5ac00343]{background:#3b82f6}.activity-dot.dot-green[data-v-5ac00343]{background:#10b981}.activity-dot.dot-orange[data-v-5ac00343]{background:#f97316}.activity-content[data-v-5ac00343]{flex:1}.activity-title[data-v-5ac00343]{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:2px}.activity-subtitle[data-v-5ac00343]{font-size:13px;color:#6b7280}.empty-state[data-v-5ac00343]{padding:40px;text-align:center;color:#9ca3af;font-size:14px}@media (max-width: 1024px){.bottom-grid[data-v-5ac00343]{grid-template-columns:1fr}}@media (max-width: 768px){.kpi-grid[data-v-5ac00343]{grid-template-columns:1fr 1fr}.dashboard-header[data-v-5ac00343]{flex-direction:column;align-items:flex-start}}@media (max-width: 480px){.kpi-grid[data-v-5ac00343]{grid-template-columns:1fr}}.admin-users-view[data-v-a89f22b2]{padding:32px;max-width:1400px;margin:0 auto}.header-section[data-v-a89f22b2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.header-section h1[data-v-a89f22b2]{margin:0;font-size:32px;color:#1f2937}.users-table[data-v-a89f22b2]{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.users-table thead[data-v-a89f22b2]{background:#f9fafb}.users-table th[data-v-a89f22b2]{padding:16px;text-align:left;font-weight:600;color:#374151;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.users-table td[data-v-a89f22b2]{padding:16px;border-top:1px solid #e5e7eb;color:#1f2937}.role-badge[data-v-a89f22b2]{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;display:inline-block}.role-badge.superadmin[data-v-a89f22b2]{background:#fce7f3;color:#831843}.role-badge.admin[data-v-a89f22b2]{background:#fef3c7;color:#92400e}.role-badge.site_supervisor[data-v-a89f22b2]{background:#dbeafe;color:#1e40af}.role-badge.project_manager[data-v-a89f22b2]{background:#d1fae5;color:#065f46}.role-badge.finance_controller[data-v-a89f22b2]{background:#fce7f3;color:#9f1239}.role-badge.employee[data-v-a89f22b2]{background:#e5e7eb;color:#374151}.status-badge[data-v-a89f22b2]{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;display:inline-block}.status-badge.active[data-v-a89f22b2]{background:#d1fae5;color:#065f46}.status-badge.inactive[data-v-a89f22b2]{background:#fee2e2;color:#991b1b}.btn-primary[data-v-a89f22b2]{padding:12px 24px;background:#0d9488;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary[data-v-a89f22b2]:hover{background:#0f766e}.btn-primary[data-v-a89f22b2]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-a89f22b2]{padding:12px 24px;background:#f3f4f6;color:#374151;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary[data-v-a89f22b2]:hover{background:#e5e7eb}.btn-small[data-v-a89f22b2]{padding:8px 16px;background:#f3f4f6;color:#374151;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-small[data-v-a89f22b2]:hover{background:#e5e7eb}.text-muted[data-v-a89f22b2]{color:#9ca3af;font-style:italic}.loading-state[data-v-a89f22b2],.error-state[data-v-a89f22b2]{padding:40px;text-align:center;color:#6b7280;font-size:16px}.error-state[data-v-a89f22b2]{color:#dc2626}.modal-overlay[data-v-a89f22b2]{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[data-v-a89f22b2]{background:#fff;border-radius:16px;padding:32px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h2[data-v-a89f22b2]{margin:0 0 24px;font-size:24px;color:#1f2937}.form-group[data-v-a89f22b2]{margin-bottom:20px}.form-group label[data-v-a89f22b2]{display:block;margin-bottom:8px;font-weight:600;color:#374151;font-size:14px}.form-group input[type=text][data-v-a89f22b2],.form-group input[type=email][data-v-a89f22b2],.form-group input[type=password][data-v-a89f22b2],.form-group select[data-v-a89f22b2]{width:100%;padding:10px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:15px;box-sizing:border-box}.form-group input[data-v-a89f22b2]:disabled{background:#f9fafb;cursor:not-allowed}.form-group input[type=checkbox][data-v-a89f22b2]{margin-right:8px}.modal-actions[data-v-a89f22b2]{display:flex;gap:12px;margin-top:24px}.modal-actions button[data-v-a89f22b2]{flex:1}.header-actions[data-v-a89f22b2]{display:flex;align-items:center;gap:24px}.tabs[data-v-a89f22b2]{display:flex;gap:8px;background:#f3f4f6;padding:4px;border-radius:8px}.tab[data-v-a89f22b2]{padding:8px 20px;background:transparent;color:#6b7280;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.tab[data-v-a89f22b2]:hover{color:#374151}.tab.active[data-v-a89f22b2]{background:#fff;color:#0d9488;box-shadow:0 1px 2px #0000000d}.permissions-section[data-v-a89f22b2]{padding:24px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.permissions-content[data-v-a89f22b2]{display:flex;flex-direction:column;gap:24px}.role-selector[data-v-a89f22b2]{display:flex;align-items:center;gap:12px}.role-selector label[data-v-a89f22b2]{font-weight:600;color:#374151;font-size:14px}.role-selector select[data-v-a89f22b2]{padding:10px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#374151;background:#fff;cursor:pointer;min-width:200px}.role-selector select[data-v-a89f22b2]:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 3px #0d94881a}.permissions-grid[data-v-a89f22b2]{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.permission-module[data-v-a89f22b2]{background:#f9fafb;border-radius:12px;padding:20px;border:1px solid #e5e7eb}.permission-module h3[data-v-a89f22b2]{margin:0 0 16px;color:#111827;font-size:18px;font-weight:700;text-transform:capitalize}.permission-list[data-v-a89f22b2]{display:flex;flex-direction:column;gap:12px}.permission-item[data-v-a89f22b2]{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#fff;border-radius:8px;cursor:pointer;transition:all .2s;border:1px solid #e5e7eb}.permission-item[data-v-a89f22b2]:hover{background:#f9fafb;border-color:#0d9488}.permission-item input[type=checkbox][data-v-a89f22b2]{width:18px;height:18px;margin-top:2px;cursor:pointer;accent-color:#0d9488}.permission-info[data-v-a89f22b2]{display:flex;flex-direction:column;gap:4px;flex:1}.permission-name[data-v-a89f22b2]{font-weight:600;color:#111827;font-size:14px}.permission-description[data-v-a89f22b2]{color:#6b7280;font-size:13px;line-height:1.4}.permissions-actions[data-v-a89f22b2]{display:flex;justify-content:flex-end;padding-top:16px;border-top:1px solid #e5e7eb}.permissions-actions .btn-primary[data-v-a89f22b2]{min-width:160px}.func-manager-combobox[data-v-7a4917fd]{position:relative}.func-manager-input[data-v-7a4917fd]{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1a1a1a;background:#fff;box-sizing:border-box;outline:none}.func-manager-input[data-v-7a4917fd]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.manager-chip[data-v-7a4917fd]{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;border:1px solid #d1d5db;border-radius:6px;background:#f9fafb;font-size:14px;color:#1a1a1a;cursor:default;min-height:38px}.chip-clear[data-v-7a4917fd]{background:none;border:none;color:#9ca3af;font-size:18px;cursor:pointer;padding:0 2px;line-height:1}.chip-clear[data-v-7a4917fd]:hover{color:#ef4444}.func-manager-dropdown[data-v-7a4917fd]{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:240px;overflow-y:auto;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:1000}.func-manager-item[data-v-7a4917fd]{padding:9px 14px;font-size:13px;color:#1a1a1a;cursor:pointer;transition:background .1s}.func-manager-item[data-v-7a4917fd]:hover{background:#eff6ff;color:#2563eb}.func-manager-external[data-v-7a4917fd]{color:#16a34a;border-top:1px solid #f3f4f6;font-style:italic}.func-manager-external[data-v-7a4917fd]:hover{background:#f0fdf4;color:#16a34a}.func-manager-empty[data-v-7a4917fd]{padding:10px 14px;font-size:13px;color:#9ca3af}.modal-overlay[data-v-7a4917fd]{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}.modal-container[data-v-7a4917fd]{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-header[data-v-7a4917fd]{background:linear-gradient(135deg,#8b5cf6,#a855f7,#c026d3);color:#fff;padding:24px 32px;display:flex;justify-content:space-between;align-items:center}.modal-header h2[data-v-7a4917fd]{margin:0;font-size:24px;font-weight:600}.header-actions[data-v-7a4917fd]{display:flex;align-items:center;gap:12px}.btn-test-data[data-v-7a4917fd]{background:#10b981;border:none;color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-test-data[data-v-7a4917fd]:hover{background:#059669}.close-btn[data-v-7a4917fd]{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.close-btn[data-v-7a4917fd]:hover{background:#fff3}.modal-body[data-v-7a4917fd]{flex:1;overflow-y:auto;padding:32px}.form-section[data-v-7a4917fd]{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #e5e7eb}.form-section[data-v-7a4917fd]:last-of-type{border-bottom:none}.form-section h3[data-v-7a4917fd]{margin:0 0 20px;font-size:18px;font-weight:600;color:#1a1a1a}.section-header-with-action[data-v-7a4917fd]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header-with-action h3[data-v-7a4917fd]{margin:0}.form-grid[data-v-7a4917fd]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group[data-v-7a4917fd]{display:flex;flex-direction:column}.form-group.full-width[data-v-7a4917fd]{grid-column:1 / -1}.form-group label[data-v-7a4917fd]{font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input[data-v-7a4917fd],.form-group select[data-v-7a4917fd],.form-group textarea[data-v-7a4917fd]{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;transition:all .2s}.form-group input[data-v-7a4917fd]:focus,.form-group select[data-v-7a4917fd]:focus,.form-group textarea[data-v-7a4917fd]:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.form-group textarea[data-v-7a4917fd]{resize:vertical;min-height:80px}.btn-add-item[data-v-7a4917fd],.btn-add-item-primary[data-v-7a4917fd]{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-item[data-v-7a4917fd]{background:#fff;color:#8b5cf6;border:1px solid #8b5cf6}.btn-add-item[data-v-7a4917fd]:hover{background:#f5f3ff}.btn-add-item-primary[data-v-7a4917fd]{background:#3b82f6;color:#fff}.btn-add-item-primary[data-v-7a4917fd]:hover{background:#2563eb}.empty-message[data-v-7a4917fd]{color:#9ca3af;font-size:14px;font-style:italic;padding:12px;text-align:center;background:#f9fafb;border-radius:6px}.items-list[data-v-7a4917fd]{display:flex;flex-direction:column;gap:8px}.list-item[data-v-7a4917fd]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px}.list-item span[data-v-7a4917fd]{font-size:14px;color:#1a1a1a}.btn-remove[data-v-7a4917fd]{background:none;border:none;color:#dc2626;font-size:18px;cursor:pointer;padding:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.btn-remove[data-v-7a4917fd]:hover{background:#fee2e2}.modal-footer[data-v-7a4917fd]{padding:20px 32px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px}.btn-cancel[data-v-7a4917fd],.btn-submit[data-v-7a4917fd]{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-7a4917fd]{background:#fff;color:#6b7280;border:1px solid #d1d5db}.btn-cancel[data-v-7a4917fd]:hover{background:#f9fafb}.btn-submit[data-v-7a4917fd]{background:#8b5cf6;color:#fff}.btn-submit[data-v-7a4917fd]:hover:not(:disabled){background:#7c3aed}.btn-submit[data-v-7a4917fd]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.form-grid[data-v-7a4917fd]{grid-template-columns:1fr}.modal-body[data-v-7a4917fd]{padding:24px}}.selection-modal[data-v-7a4917fd]{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:70vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d}.selection-header[data-v-7a4917fd]{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.selection-header h3[data-v-7a4917fd]{margin:0;font-size:18px;font-weight:600}.selection-body[data-v-7a4917fd]{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.search-input[data-v-7a4917fd]{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit}.search-input[data-v-7a4917fd]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.selection-list[data-v-7a4917fd]{display:flex;flex-direction:column;gap:8px}.selection-item[data-v-7a4917fd]{padding:12px 16px;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:4px}.selection-item[data-v-7a4917fd]:hover{background:#f9fafb;border-color:#3b82f6}.cert-name[data-v-7a4917fd],.project-name[data-v-7a4917fd]{font-size:14px;font-weight:500;color:#1a1a1a}.cert-org[data-v-7a4917fd],.project-code[data-v-7a4917fd]{font-size:12px;color:#6b7280}.rate-input-group[data-v-7a4917fd]{display:flex;gap:0}.rate-input-group input[data-v-7a4917fd]{flex:1;border-right:none;border-radius:6px 0 0 6px}.rate-input-group .currency-select[data-v-7a4917fd]{width:90px;border-radius:0 6px 6px 0;border-left:none;background:#f9fafb}.photo-upload-area[data-v-7a4917fd]{display:flex;align-items:center;gap:20px;padding:16px;border:2px dashed #d1d5db;border-radius:8px;background:#f9fafb}.photo-preview[data-v-7a4917fd]{position:relative;flex-shrink:0}.photo-preview img[data-v-7a4917fd]{width:90px;height:110px;object-fit:cover;border-radius:6px;border:1px solid #e5e7eb;display:block}.btn-remove-photo[data-v-7a4917fd]{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;background:#ef4444;color:#fff;border:none;cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center;line-height:1}.photo-placeholder[data-v-7a4917fd]{width:90px;height:110px;border-radius:6px;background:#e5e7eb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;flex-shrink:0;font-size:12px;color:#9ca3af}.photo-icon[data-v-7a4917fd]{font-size:28px}.photo-upload-controls[data-v-7a4917fd]{display:flex;flex-direction:column;gap:8px}.btn-upload-photo[data-v-7a4917fd]{display:inline-block;padding:8px 16px;background:#1e40af;color:#fff;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:background .2s;text-align:center}.btn-upload-photo[data-v-7a4917fd]:hover{background:#1d4ed8}.photo-hint[data-v-7a4917fd]{font-size:12px;color:#6b7280}.photo-error[data-v-7a4917fd]{font-size:12px;color:#dc2626;font-weight:500}.import-wizard[data-v-00b0d07e]{display:flex;flex-direction:column;gap:24px}.steps-bar[data-v-00b0d07e]{display:flex;align-items:center}.step[data-v-00b0d07e]{display:flex;align-items:center;gap:6px}.step-line[data-v-00b0d07e]{flex:1;height:2px;background:#e5e7eb;min-width:20px;margin:0 6px}.step-line.done[data-v-00b0d07e]{background:#16a34a}.step-circle[data-v-00b0d07e]{width:28px;height:28px;border-radius:50%;border:2px solid #d1d5db;background:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#9ca3af;flex-shrink:0}.step.active .step-circle[data-v-00b0d07e]{border-color:#2563eb;color:#2563eb}.step.done .step-circle[data-v-00b0d07e]{border-color:#16a34a;background:#16a34a;color:#fff}.step-label[data-v-00b0d07e]{font-size:12px;font-weight:500;color:#9ca3af;white-space:nowrap}.step.active .step-label[data-v-00b0d07e]{color:#2563eb}.step.done .step-label[data-v-00b0d07e]{color:#16a34a}.step-content[data-v-00b0d07e]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:24px}.step-content h3[data-v-00b0d07e]{font-size:16px;font-weight:700;color:#111827;margin:0 0 6px}.step-desc[data-v-00b0d07e]{font-size:14px;color:#6b7280;margin:0 0 20px;line-height:1.5}.drop-zone[data-v-00b0d07e]{border:2px dashed #d1d5db;border-radius:8px;padding:40px 24px;text-align:center;cursor:pointer;transition:all .2s;background:#fff}.drop-zone[data-v-00b0d07e]:hover,.drop-zone.drag-over[data-v-00b0d07e]{border-color:#2563eb;background:#eff6ff}.drop-icon[data-v-00b0d07e]{font-size:36px;margin-bottom:10px}.drop-zone p[data-v-00b0d07e]{margin:0 0 4px;font-size:14px;color:#374151}.drop-hint[data-v-00b0d07e]{font-size:12px;color:#9ca3af}.file-chip[data-v-00b0d07e]{display:flex;align-items:center;justify-content:space-between;background:#f0fdf4;border:1px solid #86efac;border-radius:6px;padding:8px 14px;margin-top:12px;font-size:14px;color:#166534;font-weight:500}.btn-ghost[data-v-00b0d07e]{background:none;border:none;cursor:pointer;color:#6b7280;font-size:16px;padding:0 4px}.two-col[data-v-00b0d07e]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group[data-v-00b0d07e]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-00b0d07e]{font-size:14px;font-weight:600;color:#374151}.form-group input[data-v-00b0d07e]{padding:9px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff}.form-group small[data-v-00b0d07e]{font-size:12px;color:#6b7280}.req[data-v-00b0d07e]{color:#dc2626}.mapping-table[data-v-00b0d07e]{display:flex;flex-direction:column;gap:2px;margin-bottom:20px}.mapping-header[data-v-00b0d07e]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:8px 12px;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.mapping-row[data-v-00b0d07e]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;align-items:center;padding:10px 12px;border-radius:6px;background:#fff;border:1px solid #f3f4f6}.row-required[data-v-00b0d07e]{border-left:3px solid #2563eb}.row-anchor[data-v-00b0d07e]{border-left:3px solid #f59e0b}.field-info[data-v-00b0d07e]{display:flex;align-items:center;gap:8px}.field-label[data-v-00b0d07e]{font-size:13px;font-weight:500;color:#111827}.badge-req[data-v-00b0d07e]{font-size:10px;font-weight:700;text-transform:uppercase;background:#dbeafe;color:#1d4ed8;padding:1px 5px;border-radius:3px}.badge-anchor[data-v-00b0d07e]{font-size:10px;font-weight:700;text-transform:uppercase;background:#fef3c7;color:#92400e;padding:1px 5px;border-radius:3px}.col-select[data-v-00b0d07e]{width:100%;padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff}.preview-val[data-v-00b0d07e]{font-size:12px;color:#6b7280;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-check[data-v-00b0d07e]{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;font-weight:500;color:#111827;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:12px 16px}.confirm-check input[type=checkbox][data-v-00b0d07e]{width:16px;height:16px;cursor:pointer}.preview-scroll[data-v-00b0d07e]{overflow-x:auto;border:1px solid #e5e7eb;border-radius:6px}.preview-table[data-v-00b0d07e]{width:100%;border-collapse:collapse;font-size:13px}.preview-table th[data-v-00b0d07e]{background:#f3f4f6;padding:9px 12px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;white-space:nowrap}.preview-table td[data-v-00b0d07e]{padding:8px 12px;color:#374151;border-bottom:1px solid #f3f4f6;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-num[data-v-00b0d07e]{color:#9ca3af;font-size:12px}.tr-existing td[data-v-00b0d07e]{background:#eff6ff}.badge-new[data-v-00b0d07e]{font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;background:#d1fae5;color:#065f46}.badge-update[data-v-00b0d07e]{font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;background:#dbeafe;color:#1e40af}.badge-existing[data-v-00b0d07e]{font-size:12px;font-weight:600;padding:2px 8px;border-radius:10px;background:#dbeafe;color:#1e40af;margin-left:8px}.badge-new-count[data-v-00b0d07e]{font-size:12px;font-weight:600;padding:2px 8px;border-radius:10px;background:#d1fae5;color:#065f46;margin-left:8px}.more-rows[data-v-00b0d07e]{font-size:13px;color:#6b7280;text-align:center;padding:8px 0 0}.import-summary[data-v-00b0d07e]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px 20px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.summary-row[data-v-00b0d07e]{display:flex;justify-content:space-between;font-size:14px;color:#374151}.green-text[data-v-00b0d07e]{color:#16a34a}.blue-text[data-v-00b0d07e]{color:#2563eb}.info-box[data-v-00b0d07e]{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:12px 16px;font-size:13px;color:#1e40af;margin-bottom:16px;line-height:1.5}.btn-import[data-v-00b0d07e]{width:100%;padding:14px;background:#16a34a;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s}.btn-import[data-v-00b0d07e]:hover:not(:disabled){background:#15803d}.btn-import[data-v-00b0d07e]:disabled{background:#9ca3af;cursor:not-allowed}.result-box[data-v-00b0d07e]{border-radius:8px;padding:20px;border:1px solid}.result-ok[data-v-00b0d07e]{background:#f0fdf4;border-color:#86efac}.result-warn[data-v-00b0d07e]{background:#fffbeb;border-color:#fde68a}.result-box h4[data-v-00b0d07e]{font-size:16px;font-weight:700;margin:0 0 16px;color:#111827}.result-stats[data-v-00b0d07e]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.stat-card[data-v-00b0d07e]{display:flex;flex-direction:column;align-items:center;padding:12px;border-radius:6px;background:#fff;border:1px solid #e5e7eb}.stat-num[data-v-00b0d07e]{font-size:22px;font-weight:700}.stat-lbl[data-v-00b0d07e]{font-size:11px;color:#6b7280;margin-top:2px}.stat-card.green .stat-num[data-v-00b0d07e]{color:#16a34a}.stat-card.blue .stat-num[data-v-00b0d07e]{color:#2563eb}.stat-card.gray .stat-num[data-v-00b0d07e]{color:#6b7280}.stat-card.red .stat-num[data-v-00b0d07e]{color:#dc2626}.err-list[data-v-00b0d07e]{font-size:13px;color:#374151}.err-list ul[data-v-00b0d07e]{margin:6px 0 0;padding-left:18px}.err-list li[data-v-00b0d07e]{margin:3px 0}.result-actions[data-v-00b0d07e]{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.wizard-nav[data-v-00b0d07e]{display:flex;justify-content:space-between;gap:12px}.btn-primary[data-v-00b0d07e]{padding:10px 28px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary[data-v-00b0d07e]:hover:not(:disabled){background:#1d4ed8}.btn-primary[data-v-00b0d07e]:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary[data-v-00b0d07e]{padding:10px 24px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-secondary[data-v-00b0d07e]:hover:not(:disabled){background:#e5e7eb}.btn-secondary[data-v-00b0d07e]:disabled{opacity:.5;cursor:not-allowed}.alert-error[data-v-00b0d07e]{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b;padding:10px 14px;border-radius:6px;font-size:14px;margin-top:12px}.resources-view[data-v-70ce20ae]{width:100%}.page-header[data-v-70ce20ae]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.page-header h1[data-v-70ce20ae]{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.header-actions[data-v-70ce20ae]{display:flex;gap:12px}.btn-primary[data-v-70ce20ae],.btn-secondary[data-v-70ce20ae],.btn-export-zip[data-v-70ce20ae]{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-export-zip[data-v-70ce20ae]{background:#059669;color:#fff;white-space:nowrap}.btn-export-zip[data-v-70ce20ae]:hover:not(:disabled){background:#047857}.btn-export-zip[data-v-70ce20ae]:disabled{opacity:.7;cursor:not-allowed}.checkbox-col[data-v-70ce20ae]{width:44px;padding-left:16px!important;padding-right:4px!important}.row-checkbox[data-v-70ce20ae]{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.row-selected[data-v-70ce20ae]{background-color:#eff6ff!important}.row-selected[data-v-70ce20ae]:hover{background-color:#dbeafe!important}.btn-primary[data-v-70ce20ae]{background:#3b82f6;color:#fff}.btn-primary[data-v-70ce20ae]:hover{background:#2563eb}.btn-secondary[data-v-70ce20ae]{background:#fff;color:#1a1a1a;border:1px solid #e5e7eb}.btn-secondary[data-v-70ce20ae]:hover{background:#f9fafb}.stats-grid[data-v-70ce20ae]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:32px}.stat-card[data-v-70ce20ae]{border-radius:12px;padding:24px;color:#fff;transition:transform .2s}.stat-card[data-v-70ce20ae]:hover{transform:translateY(-4px)}.stat-cyan[data-v-70ce20ae]{background:linear-gradient(135deg,#06b6d4,#0891b2)}.stat-green[data-v-70ce20ae]{background:linear-gradient(135deg,#10b981,#059669)}.stat-orange[data-v-70ce20ae]{background:linear-gradient(135deg,#f97316,#ea580c)}.stat-pink[data-v-70ce20ae]{background:linear-gradient(135deg,#ec4899,#db2777)}.stat-teal[data-v-70ce20ae]{background:linear-gradient(135deg,#14b8a6,#0d9488)}.stat-amber[data-v-70ce20ae]{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-sub[data-v-70ce20ae]{font-size:12px;opacity:.85;margin-top:6px}.stat-sub-highlight[data-v-70ce20ae]{font-weight:700}.stat-bar[data-v-70ce20ae]{margin-top:10px;height:4px;background:#ffffff4d;border-radius:2px;overflow:hidden}.stat-bar-fill[data-v-70ce20ae]{height:100%;background:#fff;border-radius:2px;transition:width .5s ease}.stat-date[data-v-70ce20ae]{font-size:11px;opacity:.75;margin-top:6px}.stat-label[data-v-70ce20ae]{font-size:14px;font-weight:500;opacity:.9;margin-bottom:8px}.stat-value[data-v-70ce20ae]{font-size:36px;font-weight:700;line-height:1}.search-section[data-v-70ce20ae]{margin-bottom:24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.search-box[data-v-70ce20ae]{position:relative;max-width:500px;flex:1;min-width:240px}.filter-group[data-v-70ce20ae]{flex-shrink:0}.nationality-filter[data-v-70ce20ae]{padding:11px 16px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;color:#374151;cursor:pointer;transition:all .2s;min-width:180px}.nationality-filter[data-v-70ce20ae]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.nationality-cell[data-v-70ce20ae]{white-space:nowrap}.nationality-badge[data-v-70ce20ae]{display:inline-block;padding:3px 8px;background:#f0f9ff;color:#0369a1;border-radius:4px;font-size:12px;font-weight:600;letter-spacing:.5px}.search-suggestions[data-v-70ce20ae]{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:10px;box-shadow:0 8px 24px #0000001f;max-height:260px;overflow-y:auto;z-index:200;margin-top:4px}.suggestion-item[data-v-70ce20ae]{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;cursor:pointer;transition:background .15s;border-bottom:1px solid #f3f4f6}.suggestion-item[data-v-70ce20ae]:last-child{border-bottom:none}.suggestion-item[data-v-70ce20ae]:hover{background:#eff6ff}.suggestion-name[data-v-70ce20ae]{font-size:14px;font-weight:600;color:#1a1a1a}.suggestion-meta[data-v-70ce20ae]{font-size:12px;color:#6b7280}.search-icon[data-v-70ce20ae]{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;color:#9ca3af}.search-input[data-v-70ce20ae]{width:100%;padding:12px 40px 12px 45px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;transition:all .2s}.search-input[data-v-70ce20ae]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-dropdown-toggle[data-v-70ce20ae]{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;color:#6b7280;cursor:pointer;padding:4px 6px;border-radius:4px;line-height:1}.search-dropdown-toggle[data-v-70ce20ae]:hover{background:#f3f4f6;color:#374151}.suggestion-search-wrap[data-v-70ce20ae]{padding:8px 8px 4px;border-bottom:1px solid #e5e7eb}.suggestion-search-input[data-v-70ce20ae]{width:100%;padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;outline:none;box-sizing:border-box}.suggestion-search-input[data-v-70ce20ae]:focus{border-color:#3b82f6}.suggestion-empty[data-v-70ce20ae]{padding:12px 16px;font-size:13px;color:#9ca3af;text-align:center}.dropdown-backdrop[data-v-70ce20ae]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.search-input[data-v-70ce20ae]::placeholder{color:#9ca3af}.table-section[data-v-70ce20ae]{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.loading-state[data-v-70ce20ae],.error-state[data-v-70ce20ae]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-70ce20ae]{color:#dc2626}.top-scroll-bar[data-v-70ce20ae]{overflow-x:auto;overflow-y:hidden;height:12px;border-radius:4px;margin-bottom:2px}.top-scroll-inner[data-v-70ce20ae]{height:1px}.table-container[data-v-70ce20ae]{overflow-x:auto}.resources-table[data-v-70ce20ae]{width:100%;border-collapse:collapse}.resources-table thead[data-v-70ce20ae]{background:#f9fafb;border-bottom:1px solid #e5e7eb}.resources-table th[data-v-70ce20ae]{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.resources-table tbody tr[data-v-70ce20ae]{border-bottom:1px solid #f3f4f6;transition:background-color .2s}.resources-table tbody tr[data-v-70ce20ae]:hover{background-color:#f9fafb}.resources-table td[data-v-70ce20ae]{padding:16px;font-size:14px}.badge-cell[data-v-70ce20ae]{font-weight:600;color:#1a1a1a}.name-cell[data-v-70ce20ae]{font-weight:500;color:#1a1a1a}.job-cell[data-v-70ce20ae]{color:#6b7280}.status-badge[data-v-70ce20ae]{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600}.status-badge.status-assigned[data-v-70ce20ae]{background:#d1fae5;color:#065f46}.status-badge.status-not-assigned[data-v-70ce20ae]{background:#f3f4f6;color:#6b7280}.projects-cell[data-v-70ce20ae],.certs-cell[data-v-70ce20ae],.job-number-cell[data-v-70ce20ae]{color:#9ca3af}.job-number-badge[data-v-70ce20ae]{display:inline-block;padding:4px 10px;background:#eff6ff;color:#1d4ed8;border-radius:4px;font-size:12px;font-weight:600;font-family:monospace;letter-spacing:.3px}.text-muted[data-v-70ce20ae]{color:#9ca3af}.project-badge[data-v-70ce20ae]{display:inline-block;padding:4px 10px;background:#ecfdf5;color:#065f46;border-radius:4px;font-size:12px;font-weight:600}.cert-indicator[data-v-70ce20ae]{display:inline-block;padding:4px 8px;background:#f3f4f6;border-radius:4px;font-size:12px;color:#6b7280}.cert-indicator.has-certs[data-v-70ce20ae]{background:#dbeafe;color:#1e40af;font-weight:600}.actions-cell[data-v-70ce20ae]{text-align:right}.btn-icon[data-v-70ce20ae]{padding:6px 10px;background:none;border:none;cursor:pointer;font-size:16px;opacity:.6;transition:opacity .2s}.btn-icon[data-v-70ce20ae]:hover{opacity:1}.empty-state[data-v-70ce20ae]{padding:60px;text-align:center;color:#9ca3af;font-size:14px}.modal-overlay[data-v-70ce20ae]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:24px}.modal-card[data-v-70ce20ae]{background:#fff;border-radius:12px;width:100%;max-width:860px;max-height:90vh;overflow-y:auto;padding:28px 32px;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;gap:24px}.modal-header[data-v-70ce20ae]{display:flex;justify-content:space-between;align-items:center}.modal-header h2[data-v-70ce20ae]{font-size:20px;font-weight:700;color:#111827;margin:0}.btn-close[data-v-70ce20ae]{background:none;border:none;cursor:pointer;font-size:20px;color:#6b7280;padding:4px 8px;border-radius:4px;transition:background .15s}.btn-close[data-v-70ce20ae]:hover{background:#f3f4f6;color:#111827}.modal-overlay[data-v-978cfea4]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-container[data-v-978cfea4]{background:#fff;border-radius:16px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a}.modal-header[data-v-978cfea4]{padding:24px 32px;border-bottom:1px solid #e5e7eb}.header-content[data-v-978cfea4]{display:flex;justify-content:space-between;align-items:center}.modal-title[data-v-978cfea4]{font-size:24px;font-weight:700;color:#1a1a1a;margin:0}.header-actions[data-v-978cfea4]{display:flex;align-items:center;gap:12px}.btn-test-data[data-v-978cfea4]{background:#10b981;border:none;color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-test-data[data-v-978cfea4]:hover{background:#059669}.btn-close[data-v-978cfea4]{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:4px;line-height:1;transition:color .2s}.btn-close[data-v-978cfea4]:hover{color:#1a1a1a}.modal-body[data-v-978cfea4]{flex:1;overflow-y:auto;padding:32px}.form-section[data-v-978cfea4]{margin-bottom:32px}.form-section[data-v-978cfea4]:last-child{margin-bottom:0}.section-title[data-v-978cfea4]{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.form-grid[data-v-978cfea4]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group[data-v-978cfea4]{display:flex;flex-direction:column;gap:8px}.form-group-wide[data-v-978cfea4]{grid-column:1 / -1}.form-label[data-v-978cfea4]{font-size:14px;font-weight:600;color:#374151}.form-input[data-v-978cfea4],.form-select[data-v-978cfea4]{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;transition:all .2s}.form-input[data-v-978cfea4]:focus,.form-select[data-v-978cfea4]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}textarea.form-input[data-v-978cfea4]{resize:vertical;font-family:inherit}.form-footer[data-v-978cfea4]{display:flex;justify-content:flex-end;gap:12px;padding:24px 32px;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 16px 16px}.btn-cancel[data-v-978cfea4],.btn-submit[data-v-978cfea4]{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-978cfea4]{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-cancel[data-v-978cfea4]:hover{background:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-978cfea4]{background:#3b82f6;color:#fff}.btn-submit[data-v-978cfea4]:hover{background:#2563eb}@media (max-width: 768px){.form-grid[data-v-978cfea4]{grid-template-columns:1fr}.modal-container[data-v-978cfea4]{max-height:95vh}.modal-header[data-v-978cfea4],.modal-body[data-v-978cfea4],.form-footer[data-v-978cfea4]{padding:20px}}.clients-view[data-v-689ac0a8]{width:100%}.page-header[data-v-689ac0a8]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.page-header h1[data-v-689ac0a8]{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.header-actions[data-v-689ac0a8]{display:flex;gap:12px}.btn-primary[data-v-689ac0a8],.btn-secondary[data-v-689ac0a8]{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary[data-v-689ac0a8]{background:#3b82f6;color:#fff}.btn-primary[data-v-689ac0a8]:hover{background:#2563eb}.btn-secondary[data-v-689ac0a8]{background:#fff;color:#1a1a1a;border:1px solid #e5e7eb}.btn-secondary[data-v-689ac0a8]:hover{background:#f9fafb}.stats-grid[data-v-689ac0a8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:32px}.stat-card[data-v-689ac0a8]{border-radius:12px;padding:24px;color:#fff;transition:transform .2s}.stat-card[data-v-689ac0a8]:hover{transform:translateY(-4px)}.stat-blue[data-v-689ac0a8]{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-green[data-v-689ac0a8]{background:linear-gradient(135deg,#10b981,#059669)}.stat-teal[data-v-689ac0a8]{background:linear-gradient(135deg,#14b8a6,#0d9488)}.stat-orange[data-v-689ac0a8]{background:linear-gradient(135deg,#f97316,#ea580c)}.stat-label[data-v-689ac0a8]{font-size:14px;font-weight:500;opacity:.9;margin-bottom:8px}.stat-value[data-v-689ac0a8]{font-size:36px;font-weight:700;line-height:1}.search-section[data-v-689ac0a8]{margin-bottom:24px}.search-box[data-v-689ac0a8]{position:relative;max-width:600px}.search-icon[data-v-689ac0a8]{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;color:#9ca3af}.search-input[data-v-689ac0a8]{width:100%;padding:12px 16px 12px 45px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;transition:all .2s}.search-input[data-v-689ac0a8]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input[data-v-689ac0a8]::placeholder{color:#9ca3af}.table-section[data-v-689ac0a8]{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.loading-state[data-v-689ac0a8],.error-state[data-v-689ac0a8]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-689ac0a8]{color:#dc2626}.table-container[data-v-689ac0a8]{overflow-x:auto}.clients-table[data-v-689ac0a8]{width:100%;border-collapse:collapse}.clients-table thead[data-v-689ac0a8]{background:#f9fafb;border-bottom:1px solid #e5e7eb}.clients-table th[data-v-689ac0a8]{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.clients-table tbody tr[data-v-689ac0a8]{border-bottom:1px solid #f3f4f6;transition:background-color .2s;cursor:pointer}.clients-table tbody tr[data-v-689ac0a8]:hover{background-color:#f9fafb}.clients-table td[data-v-689ac0a8]{padding:16px;font-size:14px}.company-cell[data-v-689ac0a8]{min-width:250px}.company-info[data-v-689ac0a8]{display:flex;align-items:center;gap:12px}.company-icon[data-v-689ac0a8]{width:40px;height:40px;background:#dbeafe;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.company-details[data-v-689ac0a8]{display:flex;flex-direction:column}.company-name[data-v-689ac0a8]{font-weight:600;color:#1a1a1a;margin-bottom:2px}.company-code-small[data-v-689ac0a8]{font-size:12px;color:#6b7280}.code-cell[data-v-689ac0a8]{font-weight:500;color:#1a1a1a}.industry-cell[data-v-689ac0a8],.location-cell[data-v-689ac0a8],.contact-cell[data-v-689ac0a8]{color:#6b7280}.status-badge[data-v-689ac0a8]{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600}.status-badge.status-active[data-v-689ac0a8]{background:#d1fae5;color:#065f46}.status-badge.status-inactive[data-v-689ac0a8]{background:#fee2e2;color:#991b1b}.status-badge.status-prospect[data-v-689ac0a8]{background:#dbeafe;color:#1e40af}.badge-yes[data-v-689ac0a8]{display:inline-block;padding:4px 10px;background:#d1fae5;color:#065f46;border-radius:4px;font-size:12px;font-weight:600}.badge-no[data-v-689ac0a8]{display:inline-block;padding:4px 10px;background:#f3f4f6;color:#6b7280;border-radius:4px;font-size:12px;font-weight:600}.empty-state[data-v-689ac0a8]{padding:60px;text-align:center;color:#9ca3af;font-size:14px}@media (max-width: 768px){.stats-grid[data-v-689ac0a8]{grid-template-columns:1fr}}.client-view[data-v-9cc788bd]{min-height:100vh;background-color:#f9fafb;padding:24px}.loading[data-v-9cc788bd],.error[data-v-9cc788bd]{text-align:center;padding:60px;background:#fff;border-radius:12px;margin:0 auto;max-width:600px}.error[data-v-9cc788bd]{color:#dc2626}.page-header[data-v-9cc788bd]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.btn-back[data-v-9cc788bd],.btn-edit[data-v-9cc788bd]{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-back[data-v-9cc788bd]{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-back[data-v-9cc788bd]:hover{background:#f9fafb;border-color:#9ca3af}.btn-edit[data-v-9cc788bd]{background:#3b82f6;color:#fff}.btn-edit[data-v-9cc788bd]:hover{background:#2563eb}.client-banner[data-v-9cc788bd]{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:16px;padding:40px;color:#fff;margin-bottom:24px;position:relative;display:grid;grid-template-columns:auto 1fr auto auto;gap:32px;align-items:center}.client-icon[data-v-9cc788bd]{display:flex;align-items:center}.icon-circle[data-v-9cc788bd]{width:100px;height:100px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;border:3px solid rgba(255,255,255,.3)}.icon-symbol[data-v-9cc788bd]{font-size:48px}.client-main-info h1[data-v-9cc788bd]{font-size:32px;font-weight:700;margin:0 0 8px}.client-code[data-v-9cc788bd]{font-size:16px;opacity:.9;margin-bottom:4px}.client-industry[data-v-9cc788bd]{font-size:14px;opacity:.8}.client-banner-details[data-v-9cc788bd]{display:flex;gap:32px}.detail-item[data-v-9cc788bd]{display:flex;flex-direction:column;gap:4px}.detail-label[data-v-9cc788bd]{font-size:12px;opacity:.8;font-weight:500}.detail-value[data-v-9cc788bd]{font-size:16px;font-weight:600}.client-status-badge[data-v-9cc788bd]{display:flex;align-items:flex-start}.status-pill[data-v-9cc788bd]{padding:8px 16px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-pill.status-active[data-v-9cc788bd]{background:#d1fae5;color:#065f46}.status-pill.status-inactive[data-v-9cc788bd]{background:#fee2e2;color:#991b1b}.status-pill.status-prospect[data-v-9cc788bd]{background:#dbeafe;color:#1e40af}.content-grid[data-v-9cc788bd]{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:24px}.content-section[data-v-9cc788bd]{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.content-section.full-width[data-v-9cc788bd]{grid-column:1 / -1}.content-section h2[data-v-9cc788bd]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.info-grid[data-v-9cc788bd]{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.info-item[data-v-9cc788bd]{display:flex;flex-direction:column;gap:6px}.info-label[data-v-9cc788bd]{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.info-value[data-v-9cc788bd]{font-size:15px;color:#1a1a1a;font-weight:500}.link[data-v-9cc788bd]{color:#3b82f6;text-decoration:none}.link[data-v-9cc788bd]:hover{text-decoration:underline}.empty-state[data-v-9cc788bd]{padding:60px;text-align:center;color:#9ca3af}.empty-icon[data-v-9cc788bd]{font-size:64px;margin-bottom:16px;opacity:.5}.empty-state p[data-v-9cc788bd]{margin:0;font-size:14px}.notes-content[data-v-9cc788bd]{color:#374151;line-height:1.6;white-space:pre-wrap}.projects-container[data-v-9cc788bd]{display:flex;flex-direction:column;gap:24px}.projects-group[data-v-9cc788bd]{display:flex;flex-direction:column;gap:8px}.projects-group-header[data-v-9cc788bd]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.group-dot[data-v-9cc788bd]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dot-current[data-v-9cc788bd]{background:#16a34a}.dot-upcoming[data-v-9cc788bd]{background:#2563eb}.dot-past[data-v-9cc788bd]{background:#9ca3af}.dot-undated[data-v-9cc788bd]{background:#f59e0b}.group-label[data-v-9cc788bd]{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.group-count[data-v-9cc788bd]{background:#f3f4f6;color:#6b7280;font-size:12px;font-weight:600;padding:2px 8px;border-radius:10px}.projects-list[data-v-9cc788bd]{display:flex;flex-direction:column;gap:4px}.project-row[data-v-9cc788bd]{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:16px;padding:12px 16px;background:#f9fafb;border-radius:8px;cursor:pointer;transition:background .15s;border:1px solid #f3f4f6}.project-row[data-v-9cc788bd]:hover{background:#f0f9ff;border-color:#bae6fd}.project-row-past[data-v-9cc788bd]{opacity:.7}.project-name[data-v-9cc788bd]{font-size:14px;font-weight:600;color:#111827}.project-code[data-v-9cc788bd]{font-size:12px;color:#6b7280;font-family:monospace;background:#e5e7eb;padding:2px 8px;border-radius:4px}.project-dates[data-v-9cc788bd]{font-size:13px;color:#6b7280;white-space:nowrap}.project-status-badge[data-v-9cc788bd]{font-size:11px;font-weight:600;padding:4px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.status-current[data-v-9cc788bd]{background:#dcfce7;color:#15803d}.status-upcoming[data-v-9cc788bd]{background:#dbeafe;color:#1d4ed8}.status-past[data-v-9cc788bd]{background:#f3f4f6;color:#6b7280}.status-planning[data-v-9cc788bd]{background:#fef3c7;color:#92400e}@media (max-width: 1024px){.content-grid[data-v-9cc788bd]{grid-template-columns:1fr}.client-banner[data-v-9cc788bd]{grid-template-columns:1fr;gap:20px}.client-banner-details[data-v-9cc788bd]{flex-direction:column;gap:16px}.info-grid[data-v-9cc788bd]{grid-template-columns:1fr}}.client-edit-view[data-v-2c422cde]{min-height:100vh;background-color:#f9fafb}.form-container[data-v-2c422cde]{position:relative}.page-header[data-v-2c422cde]{position:fixed;top:0;left:0;right:0;z-index:1001;display:flex;align-items:center;gap:20px;padding:20px;background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.page-header h1[data-v-2c422cde]{margin:0;font-size:24px;font-weight:600;color:#1a1a1a}.btn-back[data-v-2c422cde]{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back[data-v-2c422cde]:hover{background-color:#f9fafb;border-color:#9ca3af}.loading[data-v-2c422cde],.error[data-v-2c422cde]{padding:40px;text-align:center;background:#fff;border-radius:8px;margin:20px}.error[data-v-2c422cde]{color:#dc2626}.employee-list[data-v-805d6d8a]{padding:20px}.header[data-v-805d6d8a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header h2[data-v-805d6d8a]{margin:0;font-size:24px;font-weight:600;color:#1a1a1a}.actions[data-v-805d6d8a]{display:flex;gap:12px;align-items:center}.search-input[data-v-805d6d8a]{padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;width:250px}.search-input[data-v-805d6d8a]:focus{outline:none;border-color:#3b82f6}.btn-export[data-v-805d6d8a]{padding:8px 16px;background-color:#059669;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}.btn-export[data-v-805d6d8a]:hover:not(:disabled){background-color:#047857}.btn-export[data-v-805d6d8a]:disabled{opacity:.7;cursor:not-allowed}.btn-primary[data-v-805d6d8a]{padding:8px 16px;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-primary[data-v-805d6d8a]:hover{background-color:#2563eb}.loading[data-v-805d6d8a],.error[data-v-805d6d8a],.empty[data-v-805d6d8a]{padding:40px;text-align:center;color:#6b7280}.error[data-v-805d6d8a]{color:#dc2626}.table-container[data-v-805d6d8a]{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}table[data-v-805d6d8a]{width:100%;border-collapse:collapse}thead[data-v-805d6d8a]{background-color:#f9fafb}th[data-v-805d6d8a]{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}td[data-v-805d6d8a]{padding:16px;border-top:1px solid #f3f4f6}.checkbox-col[data-v-805d6d8a]{width:40px;padding-left:16px;padding-right:4px}.checkbox[data-v-805d6d8a]{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.employee-row[data-v-805d6d8a]{cursor:pointer;transition:background-color .2s}.employee-row[data-v-805d6d8a]:hover{background-color:#f9fafb}.employee-row.selected[data-v-805d6d8a]{background-color:#eff6ff}.employee-row.selected[data-v-805d6d8a]:hover{background-color:#dbeafe}.status-badge[data-v-805d6d8a]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.status-active[data-v-805d6d8a]{background-color:#d1fae5;color:#065f46}.status-inactive[data-v-805d6d8a]{background-color:#fee2e2;color:#991b1b}.actions-cell[data-v-805d6d8a]{display:flex;gap:8px}.btn-secondary[data-v-805d6d8a],.btn-danger[data-v-805d6d8a]{padding:6px 12px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;background:#fff;color:#374151}.btn-secondary[data-v-805d6d8a]:hover{background:#f3f4f6;border-color:#9ca3af}.btn-primary[data-v-805d6d8a]{padding:6px 12px;border:1px solid #3b82f6;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;background:#3b82f6;color:#fff}.btn-primary[data-v-805d6d8a]:hover{background:#2563eb;border-color:#2563eb}.btn-danger[data-v-805d6d8a]{border-color:#dc2626;color:#dc2626}.btn-danger[data-v-805d6d8a]:hover{background:#dc2626;color:#fff}.employees-view[data-v-ef10ba25]{min-height:100vh;background-color:#f9fafb}.modal-overlay[data-v-ef10ba25]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:24px}.modal-card[data-v-ef10ba25]{background:#fff;border-radius:12px;width:100%;max-width:860px;max-height:90vh;overflow-y:auto;padding:28px 32px;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;gap:24px}.modal-header[data-v-ef10ba25]{display:flex;justify-content:space-between;align-items:center}.modal-header h2[data-v-ef10ba25]{font-size:20px;font-weight:700;color:#111827;margin:0}.btn-close[data-v-ef10ba25]{background:none;border:none;cursor:pointer;font-size:20px;color:#6b7280;padding:4px 8px;border-radius:4px;transition:background .15s}.btn-close[data-v-ef10ba25]:hover{background:#f3f4f6;color:#111827}.modal-overlay[data-v-7527eebc]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-7527eebc]{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 50px #0000004d}.modal-header[data-v-7527eebc]{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.modal-header h2[data-v-7527eebc]{margin:0;font-size:20px;font-weight:600;color:#1a1a1a}.close-btn[data-v-7527eebc]{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:6px;transition:all .2s}.close-btn[data-v-7527eebc]:hover{background-color:#f3f4f6;color:#1a1a1a}.modal-body[data-v-7527eebc]{flex:1;overflow-y:auto;padding:24px}.form-group[data-v-7527eebc]{margin-bottom:20px}.form-group label[data-v-7527eebc]{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.form-group input[data-v-7527eebc],.form-group select[data-v-7527eebc],.form-group textarea[data-v-7527eebc]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s;box-sizing:border-box}.form-group input[data-v-7527eebc]:focus,.form-group select[data-v-7527eebc]:focus,.form-group textarea[data-v-7527eebc]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-group select[data-v-7527eebc]:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed}.field-hint[data-v-7527eebc]{margin:6px 0 0;font-size:12px;color:#ef4444}.project-info-bar[data-v-7527eebc]{display:flex;align-items:center;gap:20px;padding:10px 16px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin-bottom:20px;flex-wrap:wrap}.project-info-divider[data-v-7527eebc]{width:1px;height:28px;background:#fcd34d;flex-shrink:0}.project-info-item[data-v-7527eebc]{display:flex;flex-direction:column;gap:2px}.project-info-label[data-v-7527eebc]{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#92400e}.project-info-value[data-v-7527eebc]{font-size:13px;font-weight:500;color:#1a1a1a}.project-info-value.project-name[data-v-7527eebc]{font-weight:700;color:#b45309}.form-grid[data-v-7527eebc]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.modal-footer[data-v-7527eebc]{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid #e5e7eb;margin-top:20px}.btn-cancel[data-v-7527eebc]{padding:10px 20px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel[data-v-7527eebc]:hover{background-color:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-7527eebc]{padding:10px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #10b9814d}.btn-submit[data-v-7527eebc]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-submit[data-v-7527eebc]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.form-grid[data-v-7527eebc]{grid-template-columns:1fr}}.vdu[data-v-9cbeabb6]{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.vdu-header[data-v-9cbeabb6]{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.vdu-title[data-v-9cbeabb6]{font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}.vdu-btn-upload[data-v-9cbeabb6]{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:5px;font-size:12px;font-weight:600;color:#0369a1;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.vdu-btn-upload[data-v-9cbeabb6]:hover:not(.vdu-btn-upload--busy){background:#e0f2fe}.vdu-btn-upload--busy[data-v-9cbeabb6]{opacity:.65;cursor:not-allowed}.vdu-spinner[data-v-9cbeabb6]{display:inline-block;width:9px;height:9px;border:2px solid #bae6fd;border-top-color:#0369a1;border-radius:50%;animation:spin-9cbeabb6 .6s linear infinite;flex-shrink:0}@keyframes spin-9cbeabb6{to{transform:rotate(360deg)}}.vdu-error[data-v-9cbeabb6]{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:5px;padding:6px 10px;font-size:12px;margin-bottom:8px}.vdu-empty[data-v-9cbeabb6]{font-size:12px;color:#9ca3af}.vdu-list[data-v-9cbeabb6]{display:flex;flex-direction:column;gap:5px}.vdu-item[data-v-9cbeabb6]{display:flex;align-items:center;gap:8px;padding:7px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:border-color .15s}.vdu-item[data-v-9cbeabb6]:hover{border-color:#93c5fd}.vdu-icon[data-v-9cbeabb6]{font-size:15px;flex-shrink:0}.vdu-info[data-v-9cbeabb6]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.vdu-name[data-v-9cbeabb6]{font-size:12px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vdu-meta[data-v-9cbeabb6]{font-size:11px;color:#9ca3af}.vdu-actions[data-v-9cbeabb6]{display:flex;align-items:center;gap:5px;flex-shrink:0}.vdu-btn-view[data-v-9cbeabb6]{padding:3px 9px;background:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:11px;font-weight:500;color:#374151;cursor:pointer;transition:background .15s}.vdu-btn-view[data-v-9cbeabb6]:hover{background:#f3f4f6}.vdu-btn-del[data-v-9cbeabb6]{background:none;border:none;color:#d1d5db;cursor:pointer;font-size:12px;padding:3px 5px;border-radius:4px;transition:color .15s,background .15s}.vdu-btn-del[data-v-9cbeabb6]:hover{color:#dc2626;background:#fee2e2}.visa-section[data-v-3d5e2cee]{background:#fff;border-radius:10px;padding:0}.visa-section-header[data-v-3d5e2cee]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.visa-section-header h2[data-v-3d5e2cee]{margin:0;font-size:18px;font-weight:600;color:#111827}.btn-add-visa[data-v-3d5e2cee]{padding:8px 16px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.btn-add-visa[data-v-3d5e2cee]:hover{background:#1d4ed8}.visa-error[data-v-3d5e2cee]{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:6px;padding:8px 12px;font-size:13px;margin-bottom:12px}.visa-loading[data-v-3d5e2cee],.visa-empty[data-v-3d5e2cee]{color:#9ca3af;font-size:14px;padding:8px 0}.visa-list[data-v-3d5e2cee]{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.visa-card[data-v-3d5e2cee]{display:flex;flex-direction:column;padding:14px 16px;border-radius:8px;border:1px solid #e5e7eb;background:#f9fafb;gap:0}.visa-card--valid[data-v-3d5e2cee]{border-color:#86efac;background:#f0fdf4}.visa-card--expiring_soon[data-v-3d5e2cee]{border-color:#fdba74;background:#fff7ed}.visa-card--expired[data-v-3d5e2cee]{border-color:#fca5a5;background:#fef2f2}.visa-card-main[data-v-3d5e2cee]{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.visa-card-body[data-v-3d5e2cee]{flex:1;display:flex;flex-direction:column;gap:4px}.visa-card-top[data-v-3d5e2cee]{display:flex;align-items:center;gap:10px}.visa-country[data-v-3d5e2cee]{font-weight:600;font-size:15px;color:#111827}.visa-type-tag[data-v-3d5e2cee]{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;background:#e5e7eb;color:#374151;text-transform:uppercase;letter-spacing:.04em}.visa-dates[data-v-3d5e2cee]{font-size:13px;color:#6b7280}.visa-ref[data-v-3d5e2cee]{font-size:12px;color:#9ca3af}.visa-notes[data-v-3d5e2cee]{font-size:12px;color:#6b7280;font-style:italic}.invitation-letter-row[data-v-3d5e2cee]{display:inline-flex;align-items:center;gap:6px;background:#fefce8;border:1px solid #fde68a;border-radius:5px;padding:3px 10px;font-size:12px;margin-top:2px}.invitation-letter-icon[data-v-3d5e2cee]{font-size:13px}.invitation-letter-text[data-v-3d5e2cee]{color:#92400e;font-weight:500}.invitation-letter-view[data-v-3d5e2cee]{background:none;border:none;color:#d97706;cursor:pointer;font-size:12px;font-weight:600;padding:0;text-decoration:underline}.invitation-letter-view[data-v-3d5e2cee]:hover{color:#b45309}.visa-card-aside[data-v-3d5e2cee]{display:flex;align-items:center;gap:10px;flex-shrink:0}.visa-badge[data-v-3d5e2cee]{font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px;white-space:nowrap}.visa-badge--valid[data-v-3d5e2cee]{background:#dcfce7;color:#16a34a}.visa-badge--expiring_soon[data-v-3d5e2cee]{background:#ffedd5;color:#ea580c}.visa-badge--expired[data-v-3d5e2cee]{background:#fee2e2;color:#dc2626}.visa-del-btn[data-v-3d5e2cee]{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:14px;padding:4px 6px;border-radius:4px;transition:color .2s,background .2s}.visa-del-btn[data-v-3d5e2cee]:hover{color:#dc2626;background:#fee2e2}.checklist-badge[data-v-3d5e2cee]{font-size:11px;font-weight:600;padding:3px 8px;border-radius:12px;background:#f3f4f6;color:#374151;white-space:nowrap}.checklist-badge--done[data-v-3d5e2cee]{background:#dcfce7;color:#16a34a}.checklist-badge--half[data-v-3d5e2cee]{background:#fef9c3;color:#ca8a04}.checklist-badge--low[data-v-3d5e2cee]{background:#f3f4f6;color:#6b7280}.visa-checklist-link[data-v-3d5e2cee]{margin-top:8px;text-align:right}.link-checklist[data-v-3d5e2cee]{font-size:13px;color:#2563eb;text-decoration:none;font-weight:500}.link-checklist[data-v-3d5e2cee]:hover{text-decoration:underline}.visa-form-box[data-v-3d5e2cee]{border:1px solid #e5e7eb;border-radius:8px;padding:16px;background:#f9fafb}.visa-form-grid[data-v-3d5e2cee]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.field-group[data-v-3d5e2cee]{display:flex;flex-direction:column;gap:5px}.field-group.full[data-v-3d5e2cee]{grid-column:1 / -1}.field-group label[data-v-3d5e2cee]{font-size:13px;font-weight:500;color:#374151}.field-group input[data-v-3d5e2cee],.field-group select[data-v-3d5e2cee]{padding:9px 11px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;background:#fff}.field-group input[data-v-3d5e2cee]:focus,.field-group select[data-v-3d5e2cee]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.visa-form-actions[data-v-3d5e2cee]{display:flex;gap:10px;justify-content:flex-end}.btn-cancel[data-v-3d5e2cee]{padding:8px 16px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:13px;cursor:pointer}.btn-cancel[data-v-3d5e2cee]:hover{background:#f3f4f6}.btn-save[data-v-3d5e2cee]{padding:8px 18px;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.btn-save[data-v-3d5e2cee]:hover:not(:disabled){background:#15803d}.btn-save[data-v-3d5e2cee]:disabled{opacity:.6;cursor:not-allowed}.prev-exp-section[data-v-c94a2dcb]{width:100%}.section-header[data-v-c94a2dcb]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2[data-v-c94a2dcb]{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.header-actions[data-v-c94a2dcb]{display:flex;gap:10px;align-items:center}.btn-add[data-v-c94a2dcb]{background:#10b981;color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s}.btn-add[data-v-c94a2dcb]:hover{background:#059669;transform:translateY(-1px)}.btn-import[data-v-c94a2dcb]{background:#6366f1;color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s}.btn-import[data-v-c94a2dcb]:hover:not(:disabled){background:#4f46e5;transform:translateY(-1px)}.btn-import[data-v-c94a2dcb]:disabled{opacity:.7;cursor:not-allowed}.import-modal[data-v-c94a2dcb]{background:#fff;border-radius:12px;width:100%;max-width:960px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003}.import-modal-body[data-v-c94a2dcb]{flex:1;overflow:hidden;display:flex;flex-direction:column;padding:16px 24px;gap:12px}.import-select-all[data-v-c94a2dcb]{display:flex;align-items:center;gap:16px}.checkbox-label[data-v-c94a2dcb]{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:#374151;cursor:pointer}.import-hint[data-v-c94a2dcb]{font-size:12px;color:#9ca3af}.import-table-wrapper[data-v-c94a2dcb]{flex:1;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px}.import-table[data-v-c94a2dcb]{width:100%;border-collapse:collapse;font-size:13px}.import-table thead[data-v-c94a2dcb]{position:sticky;top:0;background:#f9fafb;z-index:1}.import-table th[data-v-c94a2dcb]{padding:10px 12px;text-align:left;font-weight:600;color:#6b7280;border-bottom:1px solid #e5e7eb;white-space:nowrap}.import-table td[data-v-c94a2dcb]{padding:10px 12px;border-bottom:1px solid #f3f4f6;vertical-align:top}.import-table tr:last-child td[data-v-c94a2dcb]{border-bottom:none}.import-table tr:hover td[data-v-c94a2dcb]{background:#f9fafb}.row-unchecked td[data-v-c94a2dcb]{opacity:.4}.cell-primary[data-v-c94a2dcb]{font-weight:500;color:#1a1a1a}.cell-secondary[data-v-c94a2dcb]{font-size:12px;color:#6b7280;margin-top:2px}.cell-dates[data-v-c94a2dcb]{white-space:nowrap;color:#6b7280}.import-count[data-v-c94a2dcb]{font-size:13px;color:#6b7280;margin-right:auto}.state-msg[data-v-c94a2dcb]{padding:20px;color:#6b7280;text-align:center}.empty-state[data-v-c94a2dcb]{padding:32px;text-align:center;color:#9ca3af}.exp-list[data-v-c94a2dcb]{display:flex;flex-direction:column;gap:12px}.exp-card[data-v-c94a2dcb]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;transition:box-shadow .2s}.exp-card[data-v-c94a2dcb]:hover{box-shadow:0 2px 8px #00000014}.exp-header-row[data-v-c94a2dcb]{display:flex;align-items:center;gap:10px;margin-bottom:3px}.exp-title[data-v-c94a2dcb]{font-size:15px;font-weight:600;color:#1a1a1a}.exp-status[data-v-c94a2dcb]{font-size:11px;font-weight:500;padding:2px 8px;border-radius:99px}.status-active[data-v-c94a2dcb]{background:#d1fae5;color:#065f46}.status-completed[data-v-c94a2dcb]{background:#f3f4f6;color:#6b7280}.exp-company[data-v-c94a2dcb]{font-size:14px;color:#374151;margin-bottom:6px;font-style:italic}.exp-meta[data-v-c94a2dcb]{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;color:#6b7280}.exp-location[data-v-c94a2dcb]:before{content:"📍 "}.exp-project[data-v-c94a2dcb]:before{content:"📋 "}.exp-dates[data-v-c94a2dcb]:before{content:"📅 "}.exp-scope[data-v-c94a2dcb]{font-size:12px;color:#9ca3af;margin-top:6px;font-style:italic}.form-group select[data-v-c94a2dcb],.form-group textarea[data-v-c94a2dcb]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1a1a1a;transition:border-color .2s;font-family:inherit}.form-group select[data-v-c94a2dcb]:focus,.form-group textarea[data-v-c94a2dcb]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group.full-row[data-v-c94a2dcb]{grid-column:1 / -1}.exp-actions[data-v-c94a2dcb]{display:flex;gap:8px;flex-shrink:0}.btn-icon[data-v-c94a2dcb]{width:32px;height:32px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-edit[data-v-c94a2dcb]:hover{background:#dbeafe;border-color:#3b82f6;color:#1d4ed8}.btn-delete[data-v-c94a2dcb]:hover{background:#fee2e2;border-color:#ef4444;color:#dc2626}.modal-overlay[data-v-c94a2dcb]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100;padding:20px}.exp-modal[data-v-c94a2dcb]{background:#fff;border-radius:12px;width:100%;max-width:560px;box-shadow:0 20px 60px #0003}.exp-modal-header[data-v-c94a2dcb]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.exp-modal-header h3[data-v-c94a2dcb]{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.close-btn[data-v-c94a2dcb]{background:none;border:none;cursor:pointer;font-size:16px;color:#6b7280;padding:4px}.close-btn[data-v-c94a2dcb]:hover{color:#1a1a1a}.exp-form[data-v-c94a2dcb]{padding:24px}.form-row[data-v-c94a2dcb]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px}.form-row[data-v-c94a2dcb]:last-of-type{margin-bottom:0}.form-group[data-v-c94a2dcb]{display:flex;flex-direction:column;gap:6px}.form-group[data-v-c94a2dcb]:only-child{grid-column:1 / -1}.form-group label[data-v-c94a2dcb]{font-size:13px;font-weight:500;color:#374151}.form-group input[data-v-c94a2dcb]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1a1a1a;transition:border-color .2s}.form-group input[data-v-c94a2dcb]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-footer[data-v-c94a2dcb]{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;margin-top:20px;border-top:1px solid #e5e7eb}.btn-cancel[data-v-c94a2dcb]{padding:8px 20px;border:1px solid #d1d5db;background:#fff;border-radius:6px;cursor:pointer;font-size:14px;color:#374151;transition:all .2s}.btn-cancel[data-v-c94a2dcb]:hover{background:#f9fafb}.btn-save[data-v-c94a2dcb]{padding:8px 20px;background:#1e40af;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-save[data-v-c94a2dcb]:hover:not(:disabled){background:#1d4ed8}.btn-save[data-v-c94a2dcb]:disabled{opacity:.6;cursor:not-allowed}.import-mode-selector[data-v-c94a2dcb]{display:flex;gap:10px}.mode-card[data-v-c94a2dcb]{flex:1;padding:12px 14px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;background:#f9fafb}.mode-card[data-v-c94a2dcb]:hover{border-color:#a5b4fc;background:#f5f3ff}.mode-card-active[data-v-c94a2dcb]{border-color:#6366f1;background:#eef2ff}.mode-title[data-v-c94a2dcb]{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.mode-desc[data-v-c94a2dcb]{font-size:12px;color:#6b7280;line-height:1.4}.import-warning[data-v-c94a2dcb]{padding:10px 14px;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;font-size:13px;color:#92400e;line-height:1.5}.import-warning-red[data-v-c94a2dcb]{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.import-section-title[data-v-c94a2dcb]{font-size:13px;font-weight:600;color:#374151;display:flex;justify-content:space-between;align-items:center}.cert-info-section[data-v-c94a2dcb]{border:1px solid #e0e7ff;border-radius:8px;overflow:hidden;flex-shrink:0}.cert-info-header[data-v-c94a2dcb]{background:#eef2ff;padding:10px 14px;font-size:13px;font-weight:600;color:#3730a3}.cert-info-body[data-v-c94a2dcb]{padding:12px 14px;background:#fff}.cert-info-body p[data-v-c94a2dcb]{margin:0 0 10px;font-size:13px;color:#4b5563;line-height:1.5}.cert-info-list[data-v-c94a2dcb]{display:flex;flex-wrap:wrap;gap:6px}.cert-chip[data-v-c94a2dcb]{display:inline-block;padding:4px 10px;background:#e0e7ff;color:#3730a3;border-radius:99px;font-size:12px;font-weight:500}.employee-view[data-v-8a86d808]{min-height:100vh;background-color:#f5f5f5;padding:20px}.page-header[data-v-8a86d808]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header-actions[data-v-8a86d808]{display:flex;gap:12px;align-items:center}.btn-back[data-v-8a86d808]{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back[data-v-8a86d808]:hover{background-color:#f9fafb;border-color:#9ca3af}.btn-edit[data-v-8a86d808]{padding:10px 24px;background:#1e40af;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #1e40af4d}.btn-edit[data-v-8a86d808]:hover{background:#1d4ed8;transform:translateY(-1px)}.export-dropdown[data-v-8a86d808]{position:relative}.btn-export[data-v-8a86d808]{padding:10px 20px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.btn-export[data-v-8a86d808]:hover{background:#f0fdf4;border-color:#10b981;color:#059669}.dropdown-arrow[data-v-8a86d808]{font-size:10px;opacity:.7}.export-menu[data-v-8a86d808]{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:180px;z-index:100;overflow:hidden}.export-menu-item[data-v-8a86d808]{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;background:none;border:none;text-align:left;font-size:14px;color:#374151;cursor:pointer;transition:background .15s}.export-menu-item[data-v-8a86d808]:hover{background:#f9fafb;color:#059669}.export-icon[data-v-8a86d808]{font-size:16px}.employee-banner[data-v-8a86d808]{background:linear-gradient(135deg,#1e3a5f,#1e40af);border-radius:12px;padding:32px;color:#fff;margin-bottom:24px;display:grid;grid-template-columns:auto 1fr auto auto;gap:24px;align-items:center;box-shadow:0 4px 16px #00000026}.employee-avatar[data-v-8a86d808]{display:flex;align-items:center}.avatar-photo img[data-v-8a86d808]{width:90px;height:110px;object-fit:cover;border-radius:6px;border:3px solid rgba(255,255,255,.5);display:block}.avatar-circle[data-v-8a86d808]{width:80px;height:80px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;border:3px solid rgba(255,255,255,.5)}.avatar-initials[data-v-8a86d808]{font-size:32px;font-weight:700;color:#fff}.employee-main-info h1[data-v-8a86d808]{margin:0 0 8px;font-size:26px;font-weight:700}.employee-id[data-v-8a86d808]{font-size:14px;opacity:.9;margin-bottom:4px}.employee-job[data-v-8a86d808]{font-size:16px;opacity:.95;font-weight:500}.employee-banner-details[data-v-8a86d808]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-item[data-v-8a86d808]{display:flex;flex-direction:column}.detail-label[data-v-8a86d808]{font-size:12px;opacity:.8;margin-bottom:4px}.detail-value[data-v-8a86d808]{font-size:15px;font-weight:600}.employee-status-badge[data-v-8a86d808]{display:flex;align-items:center}.status-pill[data-v-8a86d808]{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}.employee-banner .status-pill[data-v-8a86d808]{background:#fff;color:#1e40af;padding:8px 16px;font-size:13px}.content-grid[data-v-8a86d808]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.content-section[data-v-8a86d808]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px}.content-section.full-width[data-v-8a86d808]{grid-column:1 / -1}.content-section h2[data-v-8a86d808]{margin:0 0 20px;font-size:18px;font-weight:600;color:#1a1a1a}.section-header[data-v-8a86d808]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2[data-v-8a86d808]{margin:0}.btn-assign[data-v-8a86d808]{background:#10b981;color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s}.btn-assign[data-v-8a86d808]:hover{background:#059669;transform:translateY(-1px)}.info-grid[data-v-8a86d808]{display:grid;grid-template-columns:1fr;gap:16px}.info-item[data-v-8a86d808]{display:flex;flex-direction:column}.info-label[data-v-8a86d808]{font-size:13px;color:#6b7280;margin-bottom:4px}.info-value[data-v-8a86d808]{font-size:14px;color:#1a1a1a;font-weight:500}.certifications-table-wrap[data-v-8a86d808],.allocations-table-wrap[data-v-8a86d808]{overflow-x:auto}.certifications-table[data-v-8a86d808],.allocations-table[data-v-8a86d808]{width:100%;border-collapse:collapse;font-size:14px}.certifications-table th[data-v-8a86d808],.allocations-table th[data-v-8a86d808]{padding:10px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;background:#f9fafb;border-bottom:1px solid #e5e7eb}.certifications-table td[data-v-8a86d808],.allocations-table td[data-v-8a86d808]{padding:12px 16px;border-bottom:1px solid #f3f4f6;color:#1a1a1a;vertical-align:middle}.certifications-table tr:last-child td[data-v-8a86d808],.allocations-table tr:last-child td[data-v-8a86d808]{border-bottom:none}.row-expired td[data-v-8a86d808]{background:#fff5f5}.row-expiring td[data-v-8a86d808]{background:#fffbeb}.cert-name-cell[data-v-8a86d808]{font-weight:600}.cert-category-cell[data-v-8a86d808]{color:#6b7280;font-size:13px}.cert-badge[data-v-8a86d808]{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600}.badge-valid[data-v-8a86d808]{background:#d1fae5;color:#065f46}.badge-expiring[data-v-8a86d808]{background:#fef3c7;color:#92400e}.badge-expired[data-v-8a86d808]{background:#fee2e2;color:#991b1b}.cert-action-cell[data-v-8a86d808]{width:40px;text-align:center}.btn-delete-cert[data-v-8a86d808]{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:14px;padding:2px 6px;border-radius:4px;line-height:1;transition:color .15s,background .15s}.btn-delete-cert[data-v-8a86d808]:hover{color:#dc2626;background:#fee2e2}.period-cell[data-v-8a86d808]{white-space:nowrap;font-size:13px;color:#374151}.project-code[data-v-8a86d808]{display:inline-block;font-size:11px;font-weight:600;background:#dbeafe;color:#1e40af;border-radius:4px;padding:2px 6px;margin-right:6px}.status-planned[data-v-8a86d808]{background:#dbeafe;color:#1e40af}.status-active[data-v-8a86d808]{background:#d1fae5;color:#065f46}.status-completed[data-v-8a86d808]{background:#1e3a8a;color:#fff}.status-cancelled[data-v-8a86d808]{background:#fee2e2;color:#991b1b}.status-clickable[data-v-8a86d808]{cursor:pointer;transition:opacity .15s}.status-clickable[data-v-8a86d808]:hover{opacity:.75}.status-edit-inline[data-v-8a86d808]{display:flex;align-items:center;gap:6px}.status-select[data-v-8a86d808]{font-size:12px;padding:3px 6px;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#111827;cursor:pointer}.btn-status-save[data-v-8a86d808]{font-size:11px;padding:3px 10px;background:#10b981;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;transition:background .15s}.btn-status-save[data-v-8a86d808]:hover:not(:disabled){background:#059669}.btn-status-save[data-v-8a86d808]:disabled{opacity:.5;cursor:not-allowed}.btn-status-cancel[data-v-8a86d808]{font-size:11px;padding:3px 7px;background:transparent;color:#6b7280;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;transition:background .15s}.btn-status-cancel[data-v-8a86d808]:hover{background:#f3f4f6}.alloc-assign[data-v-8a86d808]{margin-top:16px;display:flex;justify-content:flex-end}.empty-state[data-v-8a86d808]{padding:32px;text-align:center;color:#9ca3af}.loading[data-v-8a86d808],.error[data-v-8a86d808]{padding:40px;text-align:center;background:#fff;border-radius:8px;margin-top:20px}.error[data-v-8a86d808]{color:#dc2626}@media (max-width: 768px){.content-grid[data-v-8a86d808]{grid-template-columns:1fr}.employee-banner[data-v-8a86d808]{grid-template-columns:1fr;text-align:center}.employee-banner-details[data-v-8a86d808]{grid-template-columns:1fr}.header-actions[data-v-8a86d808]{flex-wrap:wrap}}.employee-edit-view[data-v-fd5bbecf]{min-height:100vh;background-color:#f9fafb}.form-container[data-v-fd5bbecf]{position:relative}.page-header[data-v-fd5bbecf]{position:fixed;top:0;left:0;right:0;z-index:1001;display:flex;align-items:center;gap:20px;padding:20px;background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.page-header h1[data-v-fd5bbecf]{margin:0;font-size:24px;font-weight:600;color:#1a1a1a}.btn-back[data-v-fd5bbecf]{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back[data-v-fd5bbecf]:hover{background-color:#f9fafb;border-color:#9ca3af}.loading[data-v-fd5bbecf],.error[data-v-fd5bbecf]{padding:40px;text-align:center;background:#fff;border-radius:8px;margin:20px}.error[data-v-fd5bbecf]{color:#dc2626}.visa-container[data-v-fd5bbecf]{max-width:900px;margin:80px auto 0;padding:24px 20px 40px}.dates-warning[data-v-605f4247]{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin-bottom:16px;grid-column:1 / -1}.dates-warning-icon[data-v-605f4247]{font-size:18px;color:#d97706;flex-shrink:0;margin-top:2px}.dates-warning strong[data-v-605f4247]{display:block;font-size:13px;font-weight:600;color:#92400e;margin-bottom:4px}.dates-warning p[data-v-605f4247]{margin:0;font-size:12px;color:#b45309}.modal-overlay[data-v-605f4247]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-container[data-v-605f4247]{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;width:100%;max-width:1200px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.modal-header[data-v-605f4247]{position:sticky;top:0;background:linear-gradient(135deg,#ec4899,#f43f5e);color:#fff;padding:24px 32px;z-index:10;border-radius:12px 12px 0 0}.header-content[data-v-605f4247]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.modal-title[data-v-605f4247]{font-size:24px;font-weight:700;margin:0}.header-actions[data-v-605f4247]{display:flex;gap:12px;align-items:center}.btn-test-data[data-v-605f4247]{display:flex;align-items:center;gap:6px;padding:10px 16px;background:#10b981;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-test-data[data-v-605f4247]:hover{background:#059669}.btn-draft[data-v-605f4247]{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff3;border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:background .2s}.btn-draft[data-v-605f4247]:hover{background:#ffffff4d}.btn-icon[data-v-605f4247]{font-size:18px}.btn-close[data-v-605f4247]{padding:8px 12px;background:transparent;border:none;border-radius:8px;color:#fff;font-size:24px;cursor:pointer;transition:background .2s}.btn-close[data-v-605f4247]:hover{background:#fff3}.last-saved[data-v-605f4247]{font-size:12px;opacity:.8;margin:0}.modal-body[data-v-605f4247]{padding:32px;overflow-y:auto}.form-section[data-v-605f4247]{margin-bottom:40px}.section-title[data-v-605f4247]{font-size:18px;font-weight:700;color:#1a1a1a;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.section-header[data-v-605f4247]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header .section-title[data-v-605f4247]{flex:1;margin-bottom:0}.form-grid[data-v-605f4247]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.form-group[data-v-605f4247]{display:flex;flex-direction:column}.form-label[data-v-605f4247]{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:6px}.form-input[data-v-605f4247],.form-select[data-v-605f4247]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .2s}.form-input[data-v-605f4247]:focus,.form-select[data-v-605f4247]:focus{outline:none;border-color:#ec4899;box-shadow:0 0 0 3px #ec48991a}.form-input-disabled[data-v-605f4247]{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-input[data-v-605f4247]::placeholder{color:#9ca3af}.form-hint[data-v-605f4247]{font-size:12px;color:#6b7280;margin-top:4px}.form-hint-warning[data-v-605f4247]{color:#f59e0b}.form-hint-conflict[data-v-605f4247]{color:#dc2626;font-weight:500}.option-partial[data-v-605f4247]{color:#dc2626;font-style:italic}.alert[data-v-605f4247]{border-radius:8px;padding:16px;margin-bottom:16px}.alert-warning[data-v-605f4247]{background:#fef3c7;border:1px solid #fbbf24}.alert p[data-v-605f4247]{font-size:14px;color:#92400e;margin:0}.btn-add[data-v-605f4247]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fce7f3;color:#be185d;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-add[data-v-605f4247]:hover{background:#fbcfe8}.resource-card[data-v-605f4247]{position:relative;background:#f9fafb;border-radius:12px;padding:20px;margin-bottom:16px;border:1px solid #e5e7eb}.btn-remove[data-v-605f4247]{position:absolute;top:12px;right:12px;padding:6px 10px;background:transparent;border:none;border-radius:6px;font-size:18px;cursor:pointer;transition:background .2s}.btn-remove[data-v-605f4247]:hover{background:#fee2e2}.resource-grid[data-v-605f4247]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.form-group-sm[data-v-605f4247]{display:flex;flex-direction:column}.form-group-full[data-v-605f4247]{grid-column:1 / -1}.form-label-sm[data-v-605f4247]{display:block;font-size:12px;font-weight:600;color:#6b7280;margin-bottom:4px}.form-input-sm[data-v-605f4247],.form-select-sm[data-v-605f4247],.form-textarea-sm[data-v-605f4247]{width:100%;padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#1a1a1a;background:#fff;transition:all .2s}.form-input-sm[data-v-605f4247]:focus,.form-select-sm[data-v-605f4247]:focus,.form-textarea-sm[data-v-605f4247]:focus{outline:none;border-color:#ec4899;box-shadow:0 0 0 2px #ec48991a}.form-textarea-sm[data-v-605f4247]{resize:vertical;min-height:60px;font-family:inherit}.certifications-section[data-v-605f4247]{margin-bottom:12px}.certifications-grid[data-v-605f4247]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;padding:12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;max-height:150px;overflow-y:auto}.checkbox-label-sm[data-v-605f4247]{display:flex;align-items:center;gap:6px;font-size:12px;color:#374151;cursor:pointer;padding:4px;border-radius:4px;transition:background .15s}.checkbox-label-sm[data-v-605f4247]:hover{background:#f3f4f6}.form-checkbox-sm[data-v-605f4247]{width:16px;height:16px;cursor:pointer;border-radius:4px}.multi-select-container[data-v-605f4247]{display:flex;flex-direction:column;gap:8px}.selected-items[data-v-605f4247]{display:flex;flex-wrap:wrap;gap:6px;min-height:32px;padding:8px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.selected-chip[data-v-605f4247]{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:#10b981;color:#fff;border-radius:4px;font-size:12px;font-weight:600}.chip-remove[data-v-605f4247]{background:transparent;border:none;color:#fff;font-size:16px;cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.chip-remove[data-v-605f4247]:hover{background:#fff3}.no-data[data-v-605f4247]{font-size:12px;color:#9ca3af;font-style:italic;grid-column:1 / -1;text-align:center;padding:8px}.allocation-summary[data-v-605f4247]{background:#dbeafe;border:1px solid #93c5fd;border-radius:12px;padding:16px;margin-bottom:20px}.summary-title[data-v-605f4247]{font-size:14px;font-weight:700;color:#1e40af;margin:0 0 12px}.summary-items[data-v-605f4247]{display:flex;flex-direction:column;gap:8px}.summary-item[data-v-605f4247]{display:flex;justify-content:space-between;align-items:center;font-size:14px}.summary-role[data-v-605f4247]{color:#374151}.summary-count[data-v-605f4247]{font-weight:700}.count-complete[data-v-605f4247]{color:#059669}.count-incomplete[data-v-605f4247]{color:#d97706}.cert-selected-list[data-v-605f4247]{display:flex;flex-wrap:wrap;gap:8px;min-height:40px;padding:10px 12px;background:#fff;border:1px solid #d1d5db;border-radius:8px}.cert-chip[data-v-605f4247]{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#dcfce7;color:#166534;border:1px solid #86efac;border-radius:6px;font-size:13px;font-weight:500}.no-selection-hint[data-v-605f4247]{font-size:13px;color:#9ca3af;font-style:italic;align-self:center}.requirements-card[data-v-605f4247]{background:#f0fdf4;border:1px solid #86efac;border-radius:12px;padding:20px}.requirements-description[data-v-605f4247]{font-size:14px;color:#166534;margin:0 0 16px;line-height:1.5}.requirements-grid[data-v-605f4247]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.checkbox-label[data-v-605f4247]{display:flex;align-items:center;gap:10px;font-size:14px;color:#374151;cursor:pointer;padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #e5e7eb;transition:all .2s}.checkbox-label[data-v-605f4247]:hover{background:#f9fafb;border-color:#10b981}.form-checkbox[data-v-605f4247]{width:18px;height:18px;cursor:pointer;border-radius:4px;accent-color:#10b981}.form-footer[data-v-605f4247]{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e5e7eb;margin-top:8px}.btn-cancel[data-v-605f4247]{padding:12px 24px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-605f4247]:hover{background:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-605f4247]{padding:12px 32px;border:none;border-radius:8px;background:linear-gradient(135deg,#ec4899,#f43f5e);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit[data-v-605f4247]:hover{background:linear-gradient(135deg,#db2777,#e11d48);box-shadow:0 4px 12px #ec48994d}@media (max-width: 768px){.modal-container[data-v-605f4247]{max-width:100%;max-height:100vh;border-radius:0}.modal-header[data-v-605f4247]{border-radius:0}.modal-body[data-v-605f4247]{padding:20px}.form-grid[data-v-605f4247],.resource-grid[data-v-605f4247],.certifications-grid[data-v-605f4247]{grid-template-columns:1fr}}.projects-view[data-v-9da671ba]{width:100%}.page-header[data-v-9da671ba]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.page-header h1[data-v-9da671ba]{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.header-actions[data-v-9da671ba]{display:flex;gap:12px}.btn-primary[data-v-9da671ba],.btn-secondary[data-v-9da671ba]{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary[data-v-9da671ba]{background:#3b82f6;color:#fff}.btn-primary[data-v-9da671ba]:hover{background:#2563eb}.btn-secondary[data-v-9da671ba]{background:#fff;color:#1a1a1a;border:1px solid #e5e7eb}.btn-secondary[data-v-9da671ba]:hover{background:#f9fafb}.stats-grid[data-v-9da671ba]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:32px}.stat-card[data-v-9da671ba]{border-radius:12px;padding:24px;color:#fff;transition:transform .2s}.stat-card[data-v-9da671ba]:hover{transform:translateY(-4px)}.stat-blue[data-v-9da671ba]{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-green[data-v-9da671ba]{background:linear-gradient(135deg,#10b981,#059669)}.stat-orange[data-v-9da671ba]{background:linear-gradient(135deg,#f97316,#ea580c)}.stat-teal[data-v-9da671ba]{background:linear-gradient(135deg,#14b8a6,#0d9488)}.stat-label[data-v-9da671ba]{font-size:14px;font-weight:500;opacity:.9;margin-bottom:8px}.stat-value[data-v-9da671ba]{font-size:36px;font-weight:700;line-height:1}.search-section[data-v-9da671ba]{margin-bottom:24px;display:flex;flex-direction:column;gap:12px}.search-box[data-v-9da671ba]{position:relative;max-width:600px}.status-filter[data-v-9da671ba]{display:flex;align-items:center;gap:8px}.status-select[data-v-9da671ba]{padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#374151;background:#fff;cursor:pointer}.btn-clear-status[data-v-9da671ba]{padding:6px 12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#6b7280;font-size:13px;cursor:pointer}.btn-clear-status[data-v-9da671ba]:hover{background:#f3f4f6}.date-filters[data-v-9da671ba]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.date-filter-group[data-v-9da671ba]{display:flex;align-items:center;gap:6px}.date-label[data-v-9da671ba]{font-size:13px;color:#6b7280;white-space:nowrap;font-weight:500}.date-input[data-v-9da671ba]{padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;background:#fff;color:#1a1a1a;cursor:pointer;transition:all .2s}.date-input[data-v-9da671ba]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.date-filter-separator[data-v-9da671ba]{width:1px;height:28px;background:#e5e7eb;margin:0 4px}.btn-clear-dates[data-v-9da671ba]{padding:7px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;font-weight:500;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s}.btn-clear-dates[data-v-9da671ba]:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.search-icon[data-v-9da671ba]{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;color:#9ca3af}.search-input[data-v-9da671ba]{width:100%;padding:12px 16px 12px 45px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;transition:all .2s}.search-input[data-v-9da671ba]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input[data-v-9da671ba]::placeholder{color:#9ca3af}.table-section[data-v-9da671ba]{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.loading-state[data-v-9da671ba],.error-state[data-v-9da671ba]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-9da671ba]{color:#dc2626}.table-container[data-v-9da671ba]{overflow-x:auto}.projects-table[data-v-9da671ba]{width:100%;border-collapse:collapse;min-width:1600px}.projects-table thead[data-v-9da671ba]{background:#f9fafb;border-bottom:1px solid #e5e7eb}.projects-table th[data-v-9da671ba]{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.sortable-th[data-v-9da671ba]{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable-th[data-v-9da671ba]:hover{color:#374151;background-color:#f3f4f6}.sort-arrows[data-v-9da671ba]{display:inline-block;margin-left:4px;font-size:10px;opacity:.5;vertical-align:middle}.sortable-th:hover .sort-arrows[data-v-9da671ba],.sortable-th .sort-arrows[data-v-9da671ba]:not(:only-child){opacity:1}.projects-table tbody tr[data-v-9da671ba]{border-bottom:1px solid #f3f4f6;transition:background-color .2s;cursor:pointer}.projects-table tbody tr[data-v-9da671ba]:hover{background-color:#f9fafb}.projects-table td[data-v-9da671ba]{padding:16px;font-size:14px}.project-cell[data-v-9da671ba]{min-width:200px}.project-info[data-v-9da671ba]{display:flex;align-items:center;gap:12px}.project-icon[data-v-9da671ba]{width:40px;height:40px;background:#dbeafe;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.project-name[data-v-9da671ba]{font-weight:600;color:#1a1a1a}.code-cell[data-v-9da671ba]{font-family:Courier New,monospace;font-weight:500;color:#1a1a1a}.customer-cell[data-v-9da671ba],.location-cell[data-v-9da671ba]{color:#6b7280}.budget-cell[data-v-9da671ba]{font-weight:600;color:#1a1a1a}.date-cell[data-v-9da671ba]{color:#6b7280;white-space:nowrap}.activity-cell[data-v-9da671ba],.description-cell[data-v-9da671ba],.country-cell[data-v-9da671ba]{color:#6b7280;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge[data-v-9da671ba]{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.status-badge.status-active[data-v-9da671ba],.status-badge.status-in_progress[data-v-9da671ba],.status-badge.status-ongoing[data-v-9da671ba]{background:#d1fae5;color:#065f46}.status-badge.status-committed[data-v-9da671ba]{background:#dbeafe;color:#1e40af}.status-badge.status-planning[data-v-9da671ba]{background:#fef3c7;color:#92400e}.status-badge.status-on_hold[data-v-9da671ba]{background:#fee2e2;color:#991b1b}.status-badge.status-completed[data-v-9da671ba]{background:#e0f2fe;color:#0369a1}.status-badge.status-cancelled[data-v-9da671ba]{background:#f3f4f6;color:#6b7280}.active-badge[data-v-9da671ba]{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600}.active-badge.active-yes[data-v-9da671ba]{background:#d1fae5;color:#065f46}.active-badge.active-no[data-v-9da671ba]{background:#fee2e2;color:#991b1b}.empty-state[data-v-9da671ba]{padding:60px;text-align:center;color:#9ca3af;font-size:14px}@media (max-width: 768px){.stats-grid[data-v-9da671ba]{grid-template-columns:1fr}.table-container[data-v-9da671ba]{overflow-x:scroll}}.modal-overlay[data-v-c483d4dc]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-c483d4dc]{background:#fff;border-radius:12px;width:100%;max-width:640px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 50px #0000004d}.modal-header[data-v-c483d4dc]{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e5e7eb}.modal-header h2[data-v-c483d4dc]{margin:0 0 4px;font-size:18px;font-weight:600;color:#1a1a1a}.modal-subtitle[data-v-c483d4dc]{margin:0;font-size:13px;color:#6b7280}.close-btn[data-v-c483d4dc]{background:none;border:none;font-size:20px;color:#6b7280;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s;flex-shrink:0}.close-btn[data-v-c483d4dc]:hover{background-color:#f3f4f6;color:#1a1a1a}.modal-body[data-v-c483d4dc]{flex:1;overflow-y:auto;padding:24px}.form-group[data-v-c483d4dc]{margin-bottom:20px}.form-group label[data-v-c483d4dc]{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.form-group input[data-v-c483d4dc],.form-group select[data-v-c483d4dc],.form-group textarea[data-v-c483d4dc]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s;box-sizing:border-box}.form-group input[data-v-c483d4dc]:focus,.form-group select[data-v-c483d4dc]:focus,.form-group textarea[data-v-c483d4dc]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-grid[data-v-c483d4dc]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.loading-employees[data-v-c483d4dc]{padding:20px;text-align:center;color:#6b7280;font-size:14px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.employee-search[data-v-c483d4dc]{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;margin-bottom:8px;box-sizing:border-box;transition:all .2s}.employee-search[data-v-c483d4dc]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.employee-list[data-v-c483d4dc]{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px;padding:8px;background:#f9fafb}.employee-option[data-v-c483d4dc]{display:flex;align-items:center;justify-content:space-between;padding:12px;border-radius:8px;cursor:pointer;background:#fff;border:2px solid transparent;transition:all .15s}.employee-option[data-v-c483d4dc]:hover:not(.ineligible-role){border-color:#10b981;background:#f0fdf4}.employee-option.selected[data-v-c483d4dc]{border-color:#10b981;background:#f0fdf4}.employee-option.ineligible-role[data-v-c483d4dc]{opacity:.5;cursor:not-allowed}.employee-option.fully-unavailable[data-v-c483d4dc]{background:#fff7ed;border-color:#fed7aa}.employee-option.fully-unavailable[data-v-c483d4dc]:hover{border-color:#f97316;background:#fff7ed}.employee-info[data-v-c483d4dc]{display:flex;align-items:center;gap:12px}.employee-avatar[data-v-c483d4dc]{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.employee-details[data-v-c483d4dc]{display:flex;flex-direction:column;gap:2px}.employee-name[data-v-c483d4dc]{font-size:14px;font-weight:600;color:#1a1a1a}.employee-meta[data-v-c483d4dc]{font-size:12px;color:#6b7280}.employee-status[data-v-c483d4dc]{flex-shrink:0}.badge[data-v-c483d4dc]{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}.badge-available[data-v-c483d4dc]{background:#d1fae5;color:#065f46}.badge-partial[data-v-c483d4dc]{background:#fef3c7;color:#92400e}.badge-unavailable[data-v-c483d4dc]{background:#fee2e2;color:#991b1b}.badge-ineligible[data-v-c483d4dc]{background:#e5e7eb;color:#6b7280}.no-employees[data-v-c483d4dc]{padding:20px;text-align:center;color:#9ca3af;font-size:13px}.availability-warning[data-v-c483d4dc]{display:flex;gap:12px;padding:14px 16px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin-bottom:20px}.warning-icon[data-v-c483d4dc]{font-size:18px;flex-shrink:0;color:#d97706;margin-top:1px}.warning-text[data-v-c483d4dc]{flex:1}.warning-text strong[data-v-c483d4dc]{font-size:13px;font-weight:600;color:#92400e}.warning-text p[data-v-c483d4dc]{margin:4px 0 0;font-size:12px;color:#b45309}.warning-note[data-v-c483d4dc]{margin-top:4px!important;font-style:italic;opacity:.8}.modal-footer[data-v-c483d4dc]{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid #e5e7eb;margin-top:20px}.btn-cancel[data-v-c483d4dc]{padding:10px 20px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel[data-v-c483d4dc]:hover{background-color:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-c483d4dc]{padding:10px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #10b9814d}.btn-submit[data-v-c483d4dc]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-submit[data-v-c483d4dc]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.form-grid[data-v-c483d4dc]{grid-template-columns:1fr}}.modal-overlay[data-v-4019d292]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-4019d292]{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 50px #0000004d}.modal-header[data-v-4019d292]{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.modal-header h2[data-v-4019d292]{margin:0;font-size:20px;font-weight:600;color:#1a1a1a}.close-btn[data-v-4019d292]{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:6px;transition:all .2s}.close-btn[data-v-4019d292]:hover{background-color:#f3f4f6;color:#1a1a1a}.modal-body[data-v-4019d292]{flex:1;overflow-y:auto;padding:24px}.form-group[data-v-4019d292]{margin-bottom:20px}.form-group label[data-v-4019d292]{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.form-group input[data-v-4019d292],.form-group select[data-v-4019d292],.form-group textarea[data-v-4019d292]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s;box-sizing:border-box}.form-group input[data-v-4019d292]:focus,.form-group select[data-v-4019d292]:focus,.form-group textarea[data-v-4019d292]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-grid[data-v-4019d292]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.certifications-info[data-v-4019d292]{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;padding:16px;margin-bottom:20px}.certifications-info h4[data-v-4019d292]{margin:0 0 12px;font-size:14px;font-weight:600;color:#065f46}.certifications-info ul[data-v-4019d292]{margin:0;padding-left:20px}.certifications-info li[data-v-4019d292]{font-size:13px;color:#047857;margin-bottom:6px}.mandatory-badge[data-v-4019d292],.optional-badge[data-v-4019d292]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;margin-left:8px;text-transform:uppercase}.mandatory-badge[data-v-4019d292]{background:#dc2626;color:#fff}.optional-badge[data-v-4019d292]{background:#2563eb;color:#fff}.modal-footer[data-v-4019d292]{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid #e5e7eb;margin-top:20px}.btn-cancel[data-v-4019d292]{padding:10px 20px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel[data-v-4019d292]:hover{background-color:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-4019d292]{padding:10px 24px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #3b82f64d}.btn-submit[data-v-4019d292]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-submit[data-v-4019d292]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.form-grid[data-v-4019d292]{grid-template-columns:1fr}}.project-view[data-v-d9b52629]{min-height:100vh;background-color:#f9fafb;padding:24px}.loading[data-v-d9b52629],.error[data-v-d9b52629]{text-align:center;padding:60px;background:#fff;border-radius:12px;margin:0 auto;max-width:600px}.error[data-v-d9b52629]{color:#dc2626}.page-header[data-v-d9b52629]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.btn-back[data-v-d9b52629],.btn-edit[data-v-d9b52629],.btn-delete[data-v-d9b52629]{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-back[data-v-d9b52629]{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-back[data-v-d9b52629]:hover{background:#f9fafb;border-color:#9ca3af}.btn-edit[data-v-d9b52629]{background:#3b82f6;color:#fff}.btn-edit[data-v-d9b52629]:hover{background:#2563eb}.btn-delete[data-v-d9b52629]{background:#fff;color:#dc2626;border:1px solid #fca5a5}.btn-delete[data-v-d9b52629]:hover{background:#fef2f2;border-color:#dc2626}.project-banner[data-v-d9b52629]{background:linear-gradient(135deg,#10b981,#059669);border-radius:16px;padding:40px;color:#fff;margin-bottom:24px;position:relative;display:grid;grid-template-columns:auto 1fr auto auto;gap:32px;align-items:center}.project-icon[data-v-d9b52629]{display:flex;align-items:center}.icon-circle[data-v-d9b52629]{width:100px;height:100px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;border:3px solid rgba(255,255,255,.3)}.icon-symbol[data-v-d9b52629]{font-size:48px}.project-main-info h1[data-v-d9b52629]{font-size:32px;font-weight:700;margin:0 0 8px}.project-code[data-v-d9b52629]{font-size:16px;opacity:.9;margin-bottom:4px;font-family:Courier New,monospace}.project-client[data-v-d9b52629]{font-size:14px;opacity:.8}.project-banner-details[data-v-d9b52629]{display:flex;gap:32px}.detail-item[data-v-d9b52629]{display:flex;flex-direction:column;gap:4px}.detail-label[data-v-d9b52629]{font-size:12px;opacity:.8;font-weight:500}.detail-value[data-v-d9b52629]{font-size:16px;font-weight:600}.project-status-badge[data-v-d9b52629]{display:flex;align-items:flex-start}.status-pill[data-v-d9b52629]{padding:8px 16px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-pill.status-active[data-v-d9b52629]{background:#d1fae5;color:#065f46}.status-pill.status-inactive[data-v-d9b52629]{background:#fee2e2;color:#991b1b}.content-grid[data-v-d9b52629]{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:24px}.content-section[data-v-d9b52629]{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.content-section.full-width[data-v-d9b52629]{grid-column:1 / -1}.content-section h2[data-v-d9b52629]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.info-grid[data-v-d9b52629]{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.info-item[data-v-d9b52629]{display:flex;flex-direction:column;gap:6px}.info-label[data-v-d9b52629]{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.info-value[data-v-d9b52629]{font-size:15px;color:#1a1a1a;font-weight:500}.description-content[data-v-d9b52629]{color:#374151;line-height:1.6;white-space:pre-wrap;margin:0}.section-header[data-v-d9b52629]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-header h2[data-v-d9b52629]{margin:0;padding-bottom:0;border-bottom:none}.btn-assign[data-v-d9b52629]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;box-shadow:0 2px 8px #10b9814d}.btn-assign[data-v-d9b52629]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.empty-state[data-v-d9b52629]{padding:60px;text-align:center;color:#9ca3af}.empty-icon[data-v-d9b52629]{font-size:64px;margin-bottom:16px;opacity:.5}.empty-state p[data-v-d9b52629]{margin:0;font-size:14px}.team-grid[data-v-d9b52629]{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.team-member-card[data-v-d9b52629]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s}.team-member-card[data-v-d9b52629]:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.member-header[data-v-d9b52629]{display:flex;gap:16px;align-items:start;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.btn-remove-member[data-v-d9b52629]{margin-left:auto;background:none;border:none;color:#9ca3af;cursor:pointer;font-size:14px;width:24px;height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-remove-member[data-v-d9b52629]:hover{background:#fee2e2;color:#dc2626}.member-avatar[data-v-d9b52629]{width:56px;height:56px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-initials[data-v-d9b52629]{color:#fff;font-size:20px;font-weight:700}.member-info[data-v-d9b52629]{flex:1;min-width:0}.member-name[data-v-d9b52629]{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.member-id[data-v-d9b52629]{font-size:12px;color:#6b7280;font-family:Courier New,monospace;margin-bottom:2px}.member-job[data-v-d9b52629]{font-size:13px;color:#374151}.member-details[data-v-d9b52629]{display:flex;flex-direction:column;gap:8px}.detail-row[data-v-d9b52629]{display:flex;justify-content:space-between;align-items:center;font-size:13px}.detail-row .detail-label[data-v-d9b52629]{color:#6b7280;font-weight:500}.detail-row .detail-value[data-v-d9b52629]{color:#1a1a1a;font-weight:600}.status-pill.status-planned[data-v-d9b52629]{background:#dbeafe;color:#1e40af}.status-pill.status-cancelled[data-v-d9b52629]{background:#fee2e2;color:#991b1b}.status-pill.status-completed[data-v-d9b52629]{background:#e5e7eb;color:#374151}.btn-add-role[data-v-d9b52629]{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;box-shadow:0 2px 8px #3b82f64d}.btn-add-role[data-v-d9b52629]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.roles-grid[data-v-d9b52629]{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.role-requirement-card[data-v-d9b52629]{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s}.role-requirement-card[data-v-d9b52629]:hover{box-shadow:0 6px 16px #0000001a;transform:translateY(-2px);border-color:#3b82f6}.role-header[data-v-d9b52629]{display:flex;justify-content:space-between;align-items:start;margin-bottom:16px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.role-header-actions[data-v-d9b52629]{display:flex;align-items:center;gap:8px}.btn-remove-role[data-v-d9b52629]{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:14px;width:24px;height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-remove-role[data-v-d9b52629]:hover{background:#fee2e2;color:#dc2626}.role-title h3[data-v-d9b52629]{margin:0 0 4px;font-size:18px;font-weight:600;color:#1a1a1a}.role-code[data-v-d9b52629]{font-size:12px;color:#6b7280;font-family:Courier New,monospace;background:#f3f4f6;padding:2px 8px;border-radius:4px}.priority-badge[data-v-d9b52629]{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;white-space:nowrap}.priority-critical[data-v-d9b52629]{background:#fee2e2;color:#991b1b}.priority-high[data-v-d9b52629]{background:#fed7aa;color:#9a3412}.priority-medium[data-v-d9b52629]{background:#dbeafe;color:#1e40af}.priority-low[data-v-d9b52629]{background:#e5e7eb;color:#374151}.role-stats[data-v-d9b52629]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;padding:12px;background:#f9fafb;border-radius:8px}.stat-item[data-v-d9b52629]{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-label[data-v-d9b52629]{font-size:11px;color:#6b7280;font-weight:500;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.stat-value[data-v-d9b52629]{font-size:20px;font-weight:700;color:#1a1a1a}.stat-value.remaining[data-v-d9b52629]{color:#3b82f6}.certifications-section[data-v-d9b52629]{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;padding:12px;margin-bottom:12px}.certifications-section h4[data-v-d9b52629]{margin:0 0 8px;font-size:13px;font-weight:600;color:#065f46}.cert-list[data-v-d9b52629]{margin:0;padding-left:20px}.cert-list li[data-v-d9b52629]{font-size:12px;color:#047857;margin-bottom:4px}.cert-badge[data-v-d9b52629]{display:inline-block;padding:2px 6px;border-radius:8px;font-size:9px;font-weight:600;margin-left:6px;text-transform:uppercase}.cert-badge.mandatory[data-v-d9b52629]{background:#dc2626;color:#fff}.cert-badge.optional[data-v-d9b52629]{background:#6b7280;color:#fff}.role-dates[data-v-d9b52629]{display:flex;gap:16px;font-size:12px;color:#6b7280;padding-top:8px;border-top:1px solid #e5e7eb}@media (max-width: 1024px){.content-grid[data-v-d9b52629]{grid-template-columns:1fr}.project-banner[data-v-d9b52629]{grid-template-columns:1fr;gap:20px}.project-banner-details[data-v-d9b52629]{flex-direction:column;gap:16px}.info-grid[data-v-d9b52629]{grid-template-columns:1fr}}.project-edit-view[data-v-72c4d57e]{min-height:100vh;background-color:#f9fafb}.form-container[data-v-72c4d57e]{position:relative}.page-header[data-v-72c4d57e]{position:fixed;top:0;left:0;right:0;z-index:1001;display:flex;align-items:center;gap:20px;padding:20px;background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.page-header h1[data-v-72c4d57e]{margin:0;font-size:24px;font-weight:600;color:#1a1a1a}.btn-back[data-v-72c4d57e]{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back[data-v-72c4d57e]:hover{background-color:#f9fafb;border-color:#9ca3af}.loading[data-v-72c4d57e],.error[data-v-72c4d57e]{padding:40px;text-align:center;background:#fff;border-radius:8px;margin:20px}.error[data-v-72c4d57e]{color:#dc2626}.modal-overlay[data-v-33d10061]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-container[data-v-33d10061]{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;width:100%;max-width:1200px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.modal-header[data-v-33d10061]{position:sticky;top:0;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:24px 32px;display:flex;justify-content:space-between;align-items:center;z-index:10;border-radius:12px 12px 0 0}.modal-title[data-v-33d10061]{font-size:24px;font-weight:700;margin:0}.header-actions[data-v-33d10061]{display:flex;align-items:center;gap:12px}.btn-test-data[data-v-33d10061]{background:#10b981;border:none;color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-test-data[data-v-33d10061]:hover{background:#059669}.btn-close[data-v-33d10061]{padding:8px 12px;background:transparent;border:none;border-radius:8px;color:#fff;font-size:24px;cursor:pointer;transition:background .2s}.btn-close[data-v-33d10061]:hover{background:#fff3}.modal-body[data-v-33d10061]{padding:32px;overflow-y:auto}.form-section[data-v-33d10061]{margin-bottom:40px}.section-title[data-v-33d10061]{font-size:18px;font-weight:700;color:#1a1a1a;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.form-grid[data-v-33d10061]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.form-group[data-v-33d10061]{display:flex;flex-direction:column}.form-group-wide[data-v-33d10061]{grid-column:1 / -1}.form-label[data-v-33d10061]{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:6px}.form-input[data-v-33d10061],.form-select[data-v-33d10061]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .2s}.form-input[data-v-33d10061]:focus,.form-select[data-v-33d10061]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-input-disabled[data-v-33d10061]{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-input[data-v-33d10061]::placeholder{color:#9ca3af}.checkbox-group[data-v-33d10061]{display:flex;align-items:center;gap:10px;padding-top:28px}.form-checkbox[data-v-33d10061]{width:20px;height:20px;cursor:pointer;border-radius:4px;border:1px solid #d1d5db}.checkbox-label[data-v-33d10061]{font-size:14px;font-weight:600;color:#374151;cursor:pointer}.multi-select-container[data-v-33d10061]{display:flex;flex-direction:column;gap:8px}.selected-items[data-v-33d10061]{display:flex;flex-wrap:wrap;gap:6px;min-height:32px;padding:8px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.selected-chip[data-v-33d10061]{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:#10b981;color:#fff;border-radius:4px;font-size:12px;font-weight:600}.chip-remove[data-v-33d10061]{background:transparent;border:none;color:#fff;font-size:16px;cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.chip-remove[data-v-33d10061]:hover{background:#fff3}.search-autocomplete[data-v-33d10061]{position:relative}.autocomplete-dropdown[data-v-33d10061]{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #0000001a;max-height:220px;overflow-y:auto;z-index:100;margin-top:2px}.autocomplete-item[data-v-33d10061]{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;font-size:14px;color:#1a1a1a;cursor:pointer;transition:background .15s}.autocomplete-item[data-v-33d10061]:hover{background:#f0fdf4}.autocomplete-id[data-v-33d10061]{font-size:12px;color:#6b7280}.autocomplete-empty[data-v-33d10061]{padding:12px 14px;font-size:14px;color:#6b7280;text-align:center}.contacts-section[data-v-33d10061]{margin-top:32px}.section-header[data-v-33d10061]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.subsection-title[data-v-33d10061]{font-size:16px;font-weight:600;color:#1a1a1a;margin:0}.btn-add[data-v-33d10061]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#d1fae5;color:#065f46;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-add[data-v-33d10061]:hover{background:#a7f3d0}.contact-card[data-v-33d10061]{position:relative;background:#f9fafb;border-radius:12px;padding:20px;margin-bottom:16px;border:1px solid #e5e7eb}.btn-remove[data-v-33d10061]{position:absolute;top:12px;right:12px;padding:6px 10px;background:transparent;border:none;border-radius:6px;font-size:18px;cursor:pointer;transition:background .2s}.btn-remove[data-v-33d10061]:hover{background:#fee2e2}.contact-grid[data-v-33d10061]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.form-group-sm[data-v-33d10061]{display:flex;flex-direction:column}.form-label-sm[data-v-33d10061]{display:block;font-size:12px;font-weight:600;color:#6b7280;margin-bottom:4px}.form-input-sm[data-v-33d10061]{width:100%;padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#1a1a1a;background:#fff;transition:all .2s}.form-input-sm[data-v-33d10061]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 2px #10b9811a}.form-footer[data-v-33d10061]{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e5e7eb;margin-top:8px}.btn-cancel[data-v-33d10061]{padding:12px 24px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-33d10061]:hover{background:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-33d10061]{padding:12px 32px;border:none;border-radius:8px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit[data-v-33d10061]:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d}@media (max-width: 768px){.modal-container[data-v-33d10061]{max-width:100%;max-height:100vh;border-radius:0}.modal-header[data-v-33d10061]{border-radius:0}.modal-body[data-v-33d10061]{padding:20px}.form-grid[data-v-33d10061],.contact-grid[data-v-33d10061]{grid-template-columns:1fr}}.sites-view[data-v-f80ddf5a]{width:100%}.page-header[data-v-f80ddf5a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.page-header h1[data-v-f80ddf5a]{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.header-actions[data-v-f80ddf5a]{display:flex;gap:12px}.btn-primary[data-v-f80ddf5a],.btn-secondary[data-v-f80ddf5a]{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary[data-v-f80ddf5a]{background:#10b981;color:#fff}.btn-primary[data-v-f80ddf5a]:hover{background:#059669}.btn-secondary[data-v-f80ddf5a]{background:#fff;color:#1a1a1a;border:1px solid #e5e7eb}.btn-secondary[data-v-f80ddf5a]:hover{background:#f9fafb}.stats-grid[data-v-f80ddf5a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:32px}.stat-card[data-v-f80ddf5a]{border-radius:12px;padding:24px;color:#fff;transition:transform .2s}.stat-card[data-v-f80ddf5a]:hover{transform:translateY(-4px)}.stat-green[data-v-f80ddf5a]{background:linear-gradient(135deg,#10b981,#059669)}.stat-emerald[data-v-f80ddf5a]{background:linear-gradient(135deg,#059669,#047857)}.stat-teal[data-v-f80ddf5a]{background:linear-gradient(135deg,#14b8a6,#0d9488)}.stat-cyan[data-v-f80ddf5a]{background:linear-gradient(135deg,#06b6d4,#0891b2)}.stat-label[data-v-f80ddf5a]{font-size:14px;font-weight:500;opacity:.9;margin-bottom:8px}.stat-value[data-v-f80ddf5a]{font-size:36px;font-weight:700;line-height:1}.sites-list-section[data-v-f80ddf5a]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.section-header[data-v-f80ddf5a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-header h2[data-v-f80ddf5a]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.search-box[data-v-f80ddf5a]{position:relative;width:400px}.search-icon[data-v-f80ddf5a]{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;color:#9ca3af}.search-input[data-v-f80ddf5a]{width:100%;padding:10px 16px 10px 45px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;transition:all .2s}.search-input[data-v-f80ddf5a]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input[data-v-f80ddf5a]::placeholder{color:#9ca3af}.loading-state[data-v-f80ddf5a],.error-state[data-v-f80ddf5a]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-f80ddf5a]{color:#dc2626}.table-container[data-v-f80ddf5a]{overflow-x:auto}.sites-table[data-v-f80ddf5a]{width:100%;border-collapse:collapse}.sites-table thead[data-v-f80ddf5a]{background:#f9fafb;border-bottom:2px solid #e5e7eb}.sites-table th[data-v-f80ddf5a]{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.sites-table tbody tr[data-v-f80ddf5a]{border-bottom:1px solid #f3f4f6;transition:background-color .2s;cursor:pointer}.sites-table tbody tr[data-v-f80ddf5a]:hover{background-color:#f0f9ff}.sites-table td[data-v-f80ddf5a]{padding:16px;font-size:14px}.site-name-cell[data-v-f80ddf5a]{font-weight:600;color:#1a1a1a}.code-cell[data-v-f80ddf5a]{font-family:Courier New,monospace;font-weight:500;color:#1a1a1a}.type-cell[data-v-f80ddf5a],.location-cell[data-v-f80ddf5a],.capacity-cell[data-v-f80ddf5a]{color:#6b7280}.status-badge[data-v-f80ddf5a]{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600}.status-badge.status-active[data-v-f80ddf5a]{background:#d1fae5;color:#065f46}.status-badge.status-inactive[data-v-f80ddf5a]{background:#fee2e2;color:#991b1b}.empty-state[data-v-f80ddf5a]{padding:60px;text-align:center;color:#9ca3af;font-size:14px}.actions-cell[data-v-f80ddf5a]{width:48px;text-align:center}.btn-delete[data-v-f80ddf5a]{background:none;border:none;color:#9ca3af;font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px;transition:color .2s,background .2s;line-height:1}.btn-delete[data-v-f80ddf5a]:hover:not(:disabled){color:#dc2626;background:#fee2e2}.btn-delete[data-v-f80ddf5a]:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 768px){.stats-grid[data-v-f80ddf5a]{grid-template-columns:1fr}.section-header[data-v-f80ddf5a]{flex-direction:column;align-items:flex-start;gap:16px}.search-box[data-v-f80ddf5a]{width:100%}.table-container[data-v-f80ddf5a]{overflow-x:scroll}}.site-view[data-v-bb7a8163]{min-height:100vh;background-color:#f9fafb;padding:24px}.loading[data-v-bb7a8163],.error[data-v-bb7a8163]{padding:40px;text-align:center;background:#fff;border-radius:8px;margin:20px}.error[data-v-bb7a8163]{color:#dc2626}.content[data-v-bb7a8163]{max-width:1400px;margin:0 auto}.back-button-container[data-v-bb7a8163]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.btn-back[data-v-bb7a8163]{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back[data-v-bb7a8163]:hover{background-color:#f9fafb;border-color:#9ca3af}.btn-edit[data-v-bb7a8163]{padding:10px 24px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit[data-v-bb7a8163]:hover{background-color:#2563eb}.site-header[data-v-bb7a8163]{background:linear-gradient(135deg,#14b8a6,#0d9488);border-radius:16px;padding:48px;margin-bottom:24px;color:#fff;display:flex;justify-content:space-between;align-items:flex-start}.header-content[data-v-bb7a8163]{display:flex;gap:24px;align-items:center}.site-icon[data-v-bb7a8163]{width:80px;height:80px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px}.header-info[data-v-bb7a8163]{flex:1}.site-title[data-v-bb7a8163]{font-size:32px;font-weight:700;margin:0 0 12px;line-height:1.2}.site-meta[data-v-bb7a8163]{display:flex;align-items:center;gap:12px;font-size:16px;opacity:.95}.site-code[data-v-bb7a8163]{font-family:Courier New,monospace;font-weight:600;background:#fff3;padding:4px 12px;border-radius:6px}.separator[data-v-bb7a8163]{opacity:.6}.header-badges[data-v-bb7a8163]{display:flex;gap:12px}.status-badge[data-v-bb7a8163]{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;background:#ffffff40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.info-grid[data-v-bb7a8163]{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:24px;margin-bottom:24px}.info-section[data-v-bb7a8163]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.section-title[data-v-bb7a8163]{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.info-rows[data-v-bb7a8163]{display:flex;flex-direction:column;gap:16px}.info-row[data-v-bb7a8163]{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f3f4f6}.info-row[data-v-bb7a8163]:last-child{border-bottom:none}.info-label[data-v-bb7a8163]{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.info-value[data-v-bb7a8163]{font-size:14px;font-weight:500;color:#1a1a1a;text-align:right}@media (max-width: 768px){.site-view[data-v-bb7a8163]{padding:16px}.site-header[data-v-bb7a8163]{padding:32px 24px}.header-content[data-v-bb7a8163]{flex-direction:column;text-align:center}.site-icon[data-v-bb7a8163]{width:60px;height:60px;font-size:30px}.site-title[data-v-bb7a8163]{font-size:24px}.info-grid[data-v-bb7a8163]{grid-template-columns:1fr}}.site-edit-view[data-v-e5b9e85a]{min-height:100vh;background-color:#f9fafb}.form-container[data-v-e5b9e85a]{position:relative}.page-header[data-v-e5b9e85a]{position:fixed;top:0;left:0;right:0;z-index:1001;display:flex;align-items:center;gap:20px;padding:20px;background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.page-header h1[data-v-e5b9e85a]{margin:0;font-size:24px;font-weight:600;color:#1a1a1a}.btn-back[data-v-e5b9e85a]{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back[data-v-e5b9e85a]:hover{background-color:#f9fafb;border-color:#9ca3af}.loading[data-v-e5b9e85a],.error[data-v-e5b9e85a]{padding:40px;text-align:center;background:#fff;border-radius:8px;margin:20px}.error[data-v-e5b9e85a]{color:#dc2626}.modal-overlay[data-v-4a2446db]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-container[data-v-4a2446db]{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;width:100%;max-width:1200px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.modal-header[data-v-4a2446db]{position:sticky;top:0;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:24px 32px;display:flex;justify-content:space-between;align-items:center;z-index:10;border-radius:12px 12px 0 0}.modal-title[data-v-4a2446db]{font-size:24px;font-weight:700;margin:0}.header-actions[data-v-4a2446db]{display:flex;align-items:center;gap:12px}.btn-test-data[data-v-4a2446db]{background:#10b981;border:none;color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-test-data[data-v-4a2446db]:hover{background:#059669}.btn-close[data-v-4a2446db]{padding:8px 12px;background:transparent;border:none;border-radius:8px;color:#fff;font-size:24px;cursor:pointer;transition:background .2s}.btn-close[data-v-4a2446db]:hover{background:#fff3}.tabs-container[data-v-4a2446db]{display:flex;gap:8px;background:#f9fafb;padding:16px 32px;border-bottom:1px solid #e5e7eb}.tab-button[data-v-4a2446db]{padding:12px 20px;border:none;background:transparent;border-radius:8px;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s}.tab-button[data-v-4a2446db]:hover{background:#fff;color:#1a1a1a}.tab-button.active[data-v-4a2446db]{background:#fff;color:#f59e0b;box-shadow:0 1px 3px #0000001a;border-bottom:2px solid #f59e0b}.modal-body[data-v-4a2446db]{padding:32px;overflow-y:auto}.form-section[data-v-4a2446db]{margin-bottom:40px}.section-title[data-v-4a2446db]{font-size:18px;font-weight:700;color:#1a1a1a;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.form-grid[data-v-4a2446db]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.form-group[data-v-4a2446db]{display:flex;flex-direction:column}.form-group-wide[data-v-4a2446db]{grid-column:1 / -1}.form-label[data-v-4a2446db]{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:6px}.form-input[data-v-4a2446db],.form-select[data-v-4a2446db],.form-textarea[data-v-4a2446db]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .2s}.form-textarea[data-v-4a2446db]{resize:vertical}.form-input[data-v-4a2446db]:focus,.form-select[data-v-4a2446db]:focus,.form-textarea[data-v-4a2446db]:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.form-input[data-v-4a2446db]::placeholder{color:#9ca3af}.checkbox-group[data-v-4a2446db]{display:flex;align-items:center;gap:10px;padding-top:28px}.form-checkbox[data-v-4a2446db]{width:20px;height:20px;cursor:pointer;border-radius:4px;border:1px solid #d1d5db}.checkbox-label[data-v-4a2446db]{font-size:14px;font-weight:600;color:#374151;cursor:pointer}.multi-select-container[data-v-4a2446db]{display:flex;flex-direction:column;gap:8px}.selected-items[data-v-4a2446db]{display:flex;flex-wrap:wrap;gap:6px;min-height:32px;padding:8px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.selected-chip[data-v-4a2446db]{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:#f59e0b;color:#fff;border-radius:4px;font-size:12px;font-weight:600}.chip-remove[data-v-4a2446db]{background:transparent;border:none;color:#fff;font-size:16px;cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.chip-remove[data-v-4a2446db]:hover{background:#fff3}.mb-4[data-v-4a2446db]{margin-bottom:16px}.roles-container[data-v-4a2446db]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.no-roles-text[data-v-4a2446db]{font-size:14px;color:#6b7280;font-style:italic;margin:0}.roles-grid[data-v-4a2446db]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.role-item[data-v-4a2446db]{display:flex;align-items:start;gap:10px}.role-label[data-v-4a2446db]{flex:1;cursor:pointer;display:flex;flex-direction:column}.role-name[data-v-4a2446db]{font-size:14px;font-weight:600;color:#1a1a1a}.role-description[data-v-4a2446db]{font-size:12px;color:#6b7280;margin-top:2px}.form-footer[data-v-4a2446db]{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e5e7eb;margin-top:8px}.btn-cancel[data-v-4a2446db]{padding:12px 24px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-4a2446db]:hover{background:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-4a2446db]{padding:12px 32px;border:none;border-radius:8px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit[data-v-4a2446db]:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #f59e0b4d}@media (max-width: 768px){.modal-container[data-v-4a2446db]{max-width:100%;max-height:100vh;border-radius:0}.modal-header[data-v-4a2446db]{border-radius:0}.tabs-container[data-v-4a2446db]{flex-direction:column;gap:8px}.modal-body[data-v-4a2446db]{padding:20px}.form-grid[data-v-4a2446db],.roles-grid[data-v-4a2446db]{grid-template-columns:1fr}}.modal-overlay[data-v-d39133f8]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-container[data-v-d39133f8]{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;width:100%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-d39133f8]{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.modal-title[data-v-d39133f8]{font-size:20px;font-weight:700;margin:0}.btn-close[data-v-d39133f8]{padding:6px 10px;background:transparent;border:none;border-radius:6px;color:#fff;font-size:20px;cursor:pointer;transition:background .2s}.btn-close[data-v-d39133f8]:hover{background:#fff3}.modal-body[data-v-d39133f8]{padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.info-card[data-v-d39133f8]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.info-row[data-v-d39133f8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-label[data-v-d39133f8]{font-size:12px;color:#6b7280;margin:0 0 4px}.info-value[data-v-d39133f8]{font-size:14px;font-weight:600;color:#1a1a1a;margin:0}.form-grid[data-v-d39133f8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.form-group[data-v-d39133f8]{display:flex;flex-direction:column}.form-group-wide[data-v-d39133f8]{grid-column:1 / -1}.form-label[data-v-d39133f8]{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:6px}.form-input[data-v-d39133f8],.form-select[data-v-d39133f8],.form-textarea[data-v-d39133f8]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .2s}.form-textarea[data-v-d39133f8]{resize:vertical}.form-input[data-v-d39133f8]:focus,.form-select[data-v-d39133f8]:focus,.form-textarea[data-v-d39133f8]:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.checkbox-group[data-v-d39133f8]{display:flex;align-items:center;gap:10px;padding-top:28px}.form-checkbox[data-v-d39133f8]{width:20px;height:20px;cursor:pointer;border-radius:4px;border:1px solid #d1d5db}.checkbox-label[data-v-d39133f8]{font-size:14px;font-weight:600;color:#374151;cursor:pointer}.form-footer[data-v-d39133f8]{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e5e7eb}.btn-cancel[data-v-d39133f8]{padding:10px 20px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-d39133f8]:hover{background:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-d39133f8]{padding:10px 24px;border:none;border-radius:8px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit[data-v-d39133f8]:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #f59e0b4d}@media (max-width: 768px){.modal-container[data-v-d39133f8]{max-width:100%;max-height:100vh;border-radius:0}.modal-body[data-v-d39133f8]{padding:20px}.form-grid[data-v-d39133f8],.info-row[data-v-d39133f8]{grid-template-columns:1fr}}.certifications-view[data-v-0c80616e]{width:100%}.header-section[data-v-0c80616e]{background:linear-gradient(135deg,#f59e0b,#d97706);padding:32px 40px;border-radius:12px;margin-bottom:24px}.header-content[data-v-0c80616e]{display:flex;align-items:center;gap:20px}.header-icon[data-v-0c80616e]{font-size:48px;line-height:1}.header-text h1[data-v-0c80616e]{font-size:28px;font-weight:700;color:#fff;margin:0 0 8px}.header-text p[data-v-0c80616e]{font-size:14px;color:#ffffffe6;margin:0}.tabs-section[data-v-0c80616e]{display:flex;gap:8px;margin-bottom:32px}.tab[data-v-0c80616e]{padding:12px 24px;border:none;background:#fff;border-radius:8px;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #0000001a}.tab[data-v-0c80616e]:hover{color:#f59e0b}.tab.active[data-v-0c80616e]{background:#f59e0b;color:#fff}.content-section[data-v-0c80616e]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.filter-notice[data-v-0c80616e]{display:flex;align-items:center;gap:12px;padding:12px 20px;background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;margin-bottom:20px;font-size:14px;font-weight:500;color:#92400e}.filter-icon[data-v-0c80616e]{font-size:18px}.btn-clear-filter[data-v-0c80616e]{margin-left:auto;padding:6px 16px;border:none;border-radius:6px;background:#f59e0b;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-clear-filter[data-v-0c80616e]:hover{background:#d97706}.search-header[data-v-0c80616e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.header-actions[data-v-0c80616e]{display:flex;gap:12px}.search-box[data-v-0c80616e]{position:relative;flex:1;max-width:600px}.search-icon[data-v-0c80616e]{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;color:#9ca3af}.search-input[data-v-0c80616e]{width:100%;padding:12px 16px 12px 45px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;transition:all .2s}.search-input[data-v-0c80616e]:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.search-input[data-v-0c80616e]::placeholder{color:#9ca3af}.btn-add[data-v-0c80616e],.btn-secondary[data-v-0c80616e]{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-add[data-v-0c80616e]{background:#f59e0b;color:#fff}.btn-add[data-v-0c80616e]:hover{background:#d97706}.btn-secondary[data-v-0c80616e]{background:#fff;color:#1a1a1a;border:1px solid #e5e7eb}.btn-secondary[data-v-0c80616e]:hover{background:#f9fafb}.loading-state[data-v-0c80616e],.error-state[data-v-0c80616e]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-0c80616e]{color:#dc2626}.table-container[data-v-0c80616e]{overflow-x:auto}.certifications-table[data-v-0c80616e]{width:100%;border-collapse:collapse;min-width:1200px}.certifications-table thead[data-v-0c80616e]{background:#f9fafb;border-bottom:2px solid #e5e7eb}.certifications-table th[data-v-0c80616e]{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.certifications-table tbody tr[data-v-0c80616e]{border-bottom:1px solid #f3f4f6;transition:background-color .2s}.certifications-table tbody tr.clickable-row[data-v-0c80616e]{cursor:pointer}.certifications-table tbody tr.clickable-row[data-v-0c80616e]:hover{background-color:#fef3c7}.certifications-table td[data-v-0c80616e]{padding:16px;font-size:14px;color:#1a1a1a}.name-cell[data-v-0c80616e]{font-weight:600;min-width:200px}.employee-link[data-v-0c80616e]{cursor:pointer;color:#1a1a1a;text-decoration:underline;text-decoration-color:transparent;transition:color .15s,text-decoration-color .15s}.employee-link[data-v-0c80616e]:hover{color:#d97706;text-decoration-color:#d97706}.code-cell[data-v-0c80616e]{font-family:Courier New,monospace;font-weight:500;color:#1a1a1a}.category-badge[data-v-0c80616e]{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:lowercase}.category-badge.category-technical[data-v-0c80616e]{background:#dbeafe;color:#1e40af}.category-badge.category-safety[data-v-0c80616e]{background:#fce7f3;color:#9f1239}.category-badge.category-medical[data-v-0c80616e]{background:#fce7f3;color:#be123c}.category-badge.category-operational[data-v-0c80616e]{background:#e0e7ff;color:#3730a3}.category-badge.category-other[data-v-0c80616e]{background:#f3f4f6;color:#4b5563}.validity-cell[data-v-0c80616e],.authority-cell[data-v-0c80616e],.cost-cell[data-v-0c80616e]{color:#6b7280}.description-cell[data-v-0c80616e]{max-width:300px}.description-text[data-v-0c80616e]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;color:#6b7280;line-height:1.5}.actions-cell[data-v-0c80616e]{white-space:nowrap}.action-btn[data-v-0c80616e]{border:none;background:none;cursor:pointer;padding:4px 8px;font-size:16px;transition:transform .2s}.action-btn[data-v-0c80616e]:hover{transform:scale(1.1)}.edit-btn[data-v-0c80616e]{opacity:.6}.edit-btn[data-v-0c80616e]:hover{opacity:1}.delete-btn[data-v-0c80616e]{opacity:.6}.delete-btn[data-v-0c80616e]:hover{opacity:1}.empty-state[data-v-0c80616e]{padding:60px;text-align:center;color:#9ca3af;font-size:14px}.employee-certifications-placeholder[data-v-0c80616e]{padding:60px;text-align:center;color:#6b7280}.cert-name-cell[data-v-0c80616e]{font-weight:600;color:#1a1a1a;min-width:200px}.date-cell[data-v-0c80616e]{color:#6b7280;white-space:nowrap}.cert-number-cell[data-v-0c80616e]{font-family:Courier New,monospace;font-size:13px;color:#6b7280}.cert-number-link[data-v-0c80616e]{display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:#d97706;font-weight:600;text-decoration:underline;text-decoration-color:transparent;transition:color .15s,text-decoration-color .15s}.cert-number-link[data-v-0c80616e]:hover{color:#b45309;text-decoration-color:#b45309}.doc-icon[data-v-0c80616e]{display:inline-block;padding:1px 5px;background:#fef3c7;color:#b45309;border:1px solid #fcd34d;border-radius:4px;font-size:9px;font-weight:700;letter-spacing:.05em;font-family:sans-serif}.pdf-overlay[data-v-0c80616e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:3000;padding:20px}.pdf-modal[data-v-0c80616e]{background:#fff;border-radius:12px;width:100%;max-width:900px;height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #0006;overflow:hidden}.pdf-modal-header[data-v-0c80616e]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0;gap:16px}.pdf-modal-title[data-v-0c80616e]{display:flex;flex-direction:column;gap:2px;min-width:0}.pdf-title-name[data-v-0c80616e]{font-size:15px;font-weight:700;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-title-number[data-v-0c80616e]{font-size:12px;font-family:Courier New,monospace;color:#d97706;font-weight:600}.pdf-title-employee[data-v-0c80616e]{font-size:12px;color:#6b7280}.pdf-modal-actions[data-v-0c80616e]{display:flex;align-items:center;gap:8px;flex-shrink:0}.pdf-action-btn[data-v-0c80616e]{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .15s;text-decoration:none;display:inline-block}.download-btn[data-v-0c80616e]{background:#f59e0b;color:#fff}.download-btn[data-v-0c80616e]:hover{background:#d97706}.print-btn[data-v-0c80616e]{background:#1a1a1a;color:#fff}.print-btn[data-v-0c80616e]:hover{background:#374151}.pdf-close-btn[data-v-0c80616e]{width:32px;height:32px;border:none;background:#f3f4f6;border-radius:6px;font-size:20px;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;transition:background .15s}.pdf-close-btn[data-v-0c80616e]:hover{background:#e5e7eb;color:#1a1a1a}.pdf-modal-body[data-v-0c80616e]{flex:1;overflow:hidden}.pdf-frame[data-v-0c80616e]{width:100%;height:100%;border:none}.pdf-loading[data-v-0c80616e]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:#6b7280;font-size:14px}.pdf-loading-spinner[data-v-0c80616e]{width:36px;height:36px;border:3px solid #e5e7eb;border-top-color:#f59e0b;border-radius:50%;animation:spin-0c80616e .8s linear infinite}@keyframes spin-0c80616e{to{transform:rotate(360deg)}}.pdf-error[data-v-0c80616e]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:#6b7280;font-size:14px;text-align:center;padding:24px}.org-cell[data-v-0c80616e]{color:#6b7280}.renewal-cell[data-v-0c80616e]{text-align:center}.renewal-badge[data-v-0c80616e]{display:inline-block;padding:4px 10px;background:#fef3c7;color:#92400e;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase}.renewal-badge-no[data-v-0c80616e]{color:#d1d5db;font-weight:500}.status-badge.status-valid[data-v-0c80616e]{background:#d1fae5;color:#065f46}.status-badge.status-expiring_soon[data-v-0c80616e]{background:#fef3c7;color:#92400e}.status-badge.status-expired[data-v-0c80616e]{background:#fee2e2;color:#991b1b}.status-badge.status-suspended[data-v-0c80616e]{background:#e5e7eb;color:#374151}@media (max-width: 768px){.header-section[data-v-0c80616e]{padding:24px}.header-content[data-v-0c80616e]{flex-direction:column;align-items:flex-start}.search-header[data-v-0c80616e]{flex-direction:column;align-items:stretch}.search-box[data-v-0c80616e]{max-width:100%}.table-container[data-v-0c80616e]{overflow-x:scroll}}.certification-view[data-v-89ce39e3]{min-height:100vh;background-color:#f9fafb}.page-header[data-v-89ce39e3]{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:20px 40px;background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.btn-back[data-v-89ce39e3]{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back[data-v-89ce39e3]:hover{background-color:#f9fafb;border-color:#9ca3af}.header-actions[data-v-89ce39e3]{display:flex;gap:12px}.btn-edit[data-v-89ce39e3]{padding:10px 24px;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit[data-v-89ce39e3]:hover{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b4d}.certification-detail[data-v-89ce39e3]{padding:0}.certification-hero[data-v-89ce39e3]{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;padding:60px 40px;display:flex;justify-content:space-between;align-items:center}.hero-content[data-v-89ce39e3]{display:flex;align-items:center;gap:24px}.certification-icon[data-v-89ce39e3]{width:80px;height:80px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px}.certification-info[data-v-89ce39e3]{display:flex;flex-direction:column;gap:8px}.certification-name[data-v-89ce39e3]{font-size:32px;font-weight:700;margin:0;color:#fff}.certification-code[data-v-89ce39e3]{font-size:16px;font-weight:500;margin:0;color:#ffffffe6}.certification-category[data-v-89ce39e3]{display:inline-block;padding:6px 12px;background:#fff3;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;width:fit-content}.hero-meta[data-v-89ce39e3]{display:flex;gap:32px}.meta-item[data-v-89ce39e3]{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.meta-label[data-v-89ce39e3]{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:#fffc}.meta-value[data-v-89ce39e3]{font-size:18px;font-weight:700;color:#fff}.status-badge[data-v-89ce39e3]{padding:6px 12px;border-radius:6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-badge.active[data-v-89ce39e3]{background:#d1fae5;color:#065f46}.status-badge.inactive[data-v-89ce39e3]{background:#fee2e2;color:#991b1b}.content-grid[data-v-89ce39e3]{padding:40px;display:flex;flex-direction:column;gap:32px}.info-section[data-v-89ce39e3]{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.section-title[data-v-89ce39e3]{font-size:20px;font-weight:700;color:#1a1a1a;margin:0 0 24px;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.info-grid[data-v-89ce39e3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.info-item[data-v-89ce39e3]{display:flex;flex-direction:column;gap:6px}.info-label[data-v-89ce39e3]{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.info-value[data-v-89ce39e3]{font-size:16px;font-weight:600;color:#1a1a1a}.description-text[data-v-89ce39e3]{font-size:15px;line-height:1.6;color:#4b5563;margin:0}.loading[data-v-89ce39e3],.error[data-v-89ce39e3]{padding:40px;text-align:center;background:#fff;border-radius:8px;margin:20px}.error[data-v-89ce39e3]{color:#dc2626}@media (max-width: 768px){.certification-hero[data-v-89ce39e3]{flex-direction:column;align-items:flex-start;gap:24px}.hero-meta[data-v-89ce39e3]{width:100%;justify-content:space-between}.content-grid[data-v-89ce39e3],.info-section[data-v-89ce39e3]{padding:20px}.info-grid[data-v-89ce39e3]{grid-template-columns:1fr}}.certification-edit-view[data-v-8332b3ba]{min-height:100vh;background-color:#f9fafb}.form-container[data-v-8332b3ba]{position:relative}.page-header[data-v-8332b3ba]{position:fixed;top:0;left:0;right:0;z-index:1001;display:flex;align-items:center;gap:20px;padding:20px;background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.page-header h1[data-v-8332b3ba]{margin:0;font-size:24px;font-weight:600;color:#1a1a1a}.btn-back[data-v-8332b3ba]{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back[data-v-8332b3ba]:hover{background-color:#f9fafb;border-color:#9ca3af}.loading[data-v-8332b3ba],.error[data-v-8332b3ba]{padding:40px;text-align:center;background:#fff;border-radius:8px;margin:20px}.error[data-v-8332b3ba]{color:#dc2626}.employee-certification-view[data-v-f89d5e96]{max-width:1400px;margin:0 auto;padding:2rem}.loading[data-v-f89d5e96],.error[data-v-f89d5e96]{text-align:center;padding:3rem;font-size:1.1rem}.error[data-v-f89d5e96]{color:#dc3545}.page-header[data-v-f89d5e96]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.btn-back[data-v-f89d5e96]{background:#fff;border:1px solid #dee2e6;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.95rem;transition:all .2s}.btn-back[data-v-f89d5e96]:hover{background:#f8f9fa;border-color:#adb5bd}.header-actions[data-v-f89d5e96]{display:flex;gap:.5rem}.btn-edit[data-v-f89d5e96]{background:#f59e0b;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s}.btn-edit[data-v-f89d5e96]:hover{background:#d97706;transform:translateY(-1px);box-shadow:0 4px 6px #f59e0b33}.certification-hero[data-v-f89d5e96]{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:12px;padding:2.5rem;color:#fff;margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center}.hero-content[data-v-f89d5e96]{display:flex;gap:1.5rem;align-items:center}.certification-icon[data-v-f89d5e96]{font-size:4rem;background:#fff3;border-radius:50%;width:100px;height:100px;display:flex;align-items:center;justify-content:center}.certification-name[data-v-f89d5e96]{font-size:2rem;font-weight:700;margin:0 0 .5rem}.certification-code[data-v-f89d5e96]{font-size:1.1rem;margin:0 0 .5rem;opacity:.9}.certification-category[data-v-f89d5e96]{display:inline-block;background:#ffffff40;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500}.hero-meta[data-v-f89d5e96]{display:flex;gap:2rem;align-items:center}.meta-item[data-v-f89d5e96]{text-align:right}.meta-label[data-v-f89d5e96]{display:block;font-size:.85rem;opacity:.9;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.meta-value[data-v-f89d5e96]{display:block;font-size:1.5rem;font-weight:700}.meta-value.expiring-soon[data-v-f89d5e96]{color:#fbbf24}.status-badge[data-v-f89d5e96]{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem}.status-badge.active[data-v-f89d5e96]{background:#10b981;color:#fff}.status-badge.expired[data-v-f89d5e96]{background:#ef4444;color:#fff}.status-badge.pending[data-v-f89d5e96]{background:#f59e0b;color:#fff}.content-grid[data-v-f89d5e96]{display:flex;flex-direction:column;gap:2rem}.info-section[data-v-f89d5e96]{background:#fff;border-radius:12px;padding:2rem;border:1px solid #e5e7eb}.section-title[data-v-f89d5e96]{font-size:1.3rem;font-weight:600;margin:0 0 1.5rem;color:#1f2937}.info-grid[data-v-f89d5e96]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.info-item[data-v-f89d5e96]{display:flex;flex-direction:column;gap:.5rem}.info-label[data-v-f89d5e96]{font-size:.85rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.info-value[data-v-f89d5e96]{font-size:1rem;color:#1f2937;font-weight:500}.description-text[data-v-f89d5e96]{color:#4b5563;line-height:1.7;margin:0}.document-link[data-v-f89d5e96]{display:inline-flex;align-items:center;gap:.5rem;color:#2563eb;text-decoration:none;font-weight:500;transition:color .2s}.document-link[data-v-f89d5e96]:hover{color:#1d4ed8;text-decoration:underline}@media (max-width: 768px){.employee-certification-view[data-v-f89d5e96]{padding:1rem}.certification-hero[data-v-f89d5e96]{flex-direction:column;gap:1.5rem;text-align:center}.hero-content[data-v-f89d5e96]{flex-direction:column}.hero-meta[data-v-f89d5e96]{flex-direction:column;gap:1rem;width:100%}.meta-item[data-v-f89d5e96]{text-align:center}.info-grid[data-v-f89d5e96]{grid-template-columns:1fr}}.employee-certification-edit[data-v-02201d0b]{max-width:1200px;margin:0 auto;padding:2rem}.loading[data-v-02201d0b],.error[data-v-02201d0b]{text-align:center;padding:3rem;font-size:1.1rem}.error[data-v-02201d0b]{color:#dc3545}.page-header[data-v-02201d0b]{margin-bottom:2rem}.btn-back[data-v-02201d0b]{background:#fff;border:1px solid #dee2e6;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.95rem;margin-bottom:1rem;transition:all .2s}.btn-back[data-v-02201d0b]:hover{background:#f8f9fa;border-color:#adb5bd}.page-title[data-v-02201d0b]{font-size:2rem;font-weight:700;color:#1f2937;margin:0}.form-container[data-v-02201d0b]{background:#fff;border-radius:12px;padding:2rem;border:1px solid #e5e7eb}.form-section[data-v-02201d0b]{margin-bottom:2rem}.section-title[data-v-02201d0b]{font-size:1.3rem;font-weight:600;margin:0 0 1.5rem;color:#1f2937;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.form-row[data-v-02201d0b]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-group[data-v-02201d0b]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-02201d0b]{font-weight:600;color:#374151;font-size:.95rem}.form-group input[type=text][data-v-02201d0b],.form-group input[type=date][data-v-02201d0b],.form-group input[type=url][data-v-02201d0b],.form-group input[type=number][data-v-02201d0b],.form-group select[data-v-02201d0b],.form-group textarea[data-v-02201d0b]{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:all .2s}.form-group input[type=text][data-v-02201d0b]:focus,.form-group input[type=date][data-v-02201d0b]:focus,.form-group input[type=url][data-v-02201d0b]:focus,.form-group input[type=number][data-v-02201d0b]:focus,.form-group select[data-v-02201d0b]:focus,.form-group textarea[data-v-02201d0b]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-group input[type=text][data-v-02201d0b]:disabled,.form-group select[data-v-02201d0b]:disabled{background:#f3f4f6;cursor:not-allowed}.upload-zone[data-v-02201d0b]{border:2px dashed #d1d5db;border-radius:8px;padding:1.25rem;cursor:pointer;transition:all .2s;background:#fafafa;min-height:80px;display:flex;align-items:center;justify-content:center}.upload-zone[data-v-02201d0b]:hover,.upload-zone--dragover[data-v-02201d0b]{border-color:#3b82f6;background:#eff6ff}.upload-zone--has-file[data-v-02201d0b]{border-style:solid;border-color:#10b981;background:#f0fdf4}.upload-input[data-v-02201d0b]{display:none}.upload-placeholder[data-v-02201d0b]{display:flex;flex-direction:column;align-items:center;gap:4px;color:#6b7280}.upload-icon[data-v-02201d0b]{font-size:1.5rem}.upload-text[data-v-02201d0b]{font-size:.9rem;font-weight:500;color:#374151}.upload-hint[data-v-02201d0b]{font-size:.8rem;color:#9ca3af}.upload-file-info[data-v-02201d0b]{display:flex;align-items:center;gap:10px;width:100%}.upload-file-icon[data-v-02201d0b]{font-size:1.3rem;flex-shrink:0}.upload-file-name[data-v-02201d0b]{font-size:.9rem;font-weight:500;color:#1f2937;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file-link[data-v-02201d0b]{font-size:.9rem;font-weight:500;color:#2563eb;flex:1;text-decoration:underline}.upload-remove[data-v-02201d0b]{background:none;border:none;color:#dc2626;cursor:pointer;font-size:.85rem;font-weight:600;padding:2px 6px;border-radius:4px;transition:background .15s;flex-shrink:0}.upload-remove[data-v-02201d0b]:hover{background:#fee2e2}.upload-error[data-v-02201d0b]{font-size:.85rem;color:#dc2626;margin-top:4px}.form-group input[type=checkbox][data-v-02201d0b]{width:1.25rem;height:1.25rem;cursor:pointer;margin-right:.5rem}.form-group label[data-v-02201d0b]:has(input[type=checkbox]){flex-direction:row;align-items:center}.form-actions[data-v-02201d0b]{display:flex;gap:1rem;justify-content:flex-end;padding-top:2rem;border-top:1px solid #e5e7eb}.btn-cancel[data-v-02201d0b]{background:#fff;border:1px solid #d1d5db;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s}.btn-cancel[data-v-02201d0b]:hover{background:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-02201d0b]{background:#2563eb;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s}.btn-submit[data-v-02201d0b]:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 6px #2563eb33}.btn-submit[data-v-02201d0b]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.employee-certification-edit[data-v-02201d0b]{padding:1rem}.form-container[data-v-02201d0b]{padding:1.5rem}.form-row[data-v-02201d0b]{grid-template-columns:1fr}.form-actions[data-v-02201d0b]{flex-direction:column}.btn-cancel[data-v-02201d0b],.btn-submit[data-v-02201d0b]{width:100%}}.employee-certification-create[data-v-042ba4fa]{max-width:1200px;margin:0 auto;padding:2rem}.loading[data-v-042ba4fa],.error[data-v-042ba4fa]{text-align:center;padding:3rem;font-size:1.1rem}.error[data-v-042ba4fa]{color:#dc3545}.page-header[data-v-042ba4fa]{margin-bottom:2rem}.btn-back[data-v-042ba4fa]{background:#fff;border:1px solid #dee2e6;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.95rem;margin-bottom:1rem;transition:all .2s}.btn-back[data-v-042ba4fa]:hover{background:#f8f9fa;border-color:#adb5bd}.page-title[data-v-042ba4fa]{font-size:2rem;font-weight:700;color:#1f2937;margin:0}.form-container[data-v-042ba4fa]{background:#fff;border-radius:12px;padding:2rem;border:1px solid #e5e7eb}.form-section[data-v-042ba4fa]{margin-bottom:2rem}.section-title[data-v-042ba4fa]{font-size:1.3rem;font-weight:600;margin:0 0 1.5rem;color:#1f2937;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.form-row[data-v-042ba4fa]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-group[data-v-042ba4fa]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-042ba4fa]{font-weight:600;color:#374151;font-size:.95rem}.form-group input[type=text][data-v-042ba4fa],.form-group input[type=date][data-v-042ba4fa],.form-group input[type=url][data-v-042ba4fa],.form-group input[type=number][data-v-042ba4fa],.form-group select[data-v-042ba4fa],.form-group textarea[data-v-042ba4fa]{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:all .2s}.form-group input[type=text][data-v-042ba4fa]:focus,.form-group input[type=date][data-v-042ba4fa]:focus,.form-group input[type=url][data-v-042ba4fa]:focus,.form-group input[type=number][data-v-042ba4fa]:focus,.form-group select[data-v-042ba4fa]:focus,.form-group textarea[data-v-042ba4fa]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-group input[type=checkbox][data-v-042ba4fa]{width:1.25rem;height:1.25rem;cursor:pointer;margin-right:.5rem}.form-group label[data-v-042ba4fa]:has(input[type=checkbox]){flex-direction:row;align-items:center}.hint[data-v-042ba4fa]{font-size:.85rem;color:#6b7280;font-style:italic}.searchable-select[data-v-042ba4fa]{position:relative}.searchable-input[data-v-042ba4fa]{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:all .2s;box-sizing:border-box}.searchable-input[data-v-042ba4fa]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.searchable-dropdown[data-v-042ba4fa]{position:absolute;z-index:200;left:0;right:0;top:calc(100% + 2px);background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 8px 24px #0000001f;max-height:240px;overflow-y:auto;margin:0;padding:4px 0;list-style:none}.searchable-dropdown li[data-v-042ba4fa]{padding:8px 14px;font-size:.9rem;color:#111827;cursor:pointer}.searchable-dropdown li[data-v-042ba4fa]:hover,.searchable-dropdown li.highlighted[data-v-042ba4fa]{background:#eff6ff;color:#1d4ed8}.searchable-empty[data-v-042ba4fa]{position:absolute;z-index:200;left:0;right:0;top:calc(100% + 2px);background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px 14px;font-size:.875rem;color:#6b7280;box-shadow:0 8px 24px #0000001f}.upload-zone[data-v-042ba4fa]{border:2px dashed #d1d5db;border-radius:8px;padding:1.25rem;cursor:pointer;transition:all .2s;background:#fafafa;min-height:80px;display:flex;align-items:center;justify-content:center}.upload-zone[data-v-042ba4fa]:hover,.upload-zone--dragover[data-v-042ba4fa]{border-color:#3b82f6;background:#eff6ff}.upload-zone--has-file[data-v-042ba4fa]{border-style:solid;border-color:#10b981;background:#f0fdf4}.upload-input[data-v-042ba4fa]{display:none}.upload-placeholder[data-v-042ba4fa]{display:flex;flex-direction:column;align-items:center;gap:4px;color:#6b7280}.upload-icon[data-v-042ba4fa]{font-size:1.5rem}.upload-text[data-v-042ba4fa]{font-size:.9rem;font-weight:500;color:#374151}.upload-hint[data-v-042ba4fa]{font-size:.8rem;color:#9ca3af}.upload-file-info[data-v-042ba4fa]{display:flex;align-items:center;gap:10px;width:100%}.upload-file-icon[data-v-042ba4fa]{font-size:1.3rem;flex-shrink:0}.upload-file-name[data-v-042ba4fa]{font-size:.9rem;font-weight:500;color:#1f2937;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file-link[data-v-042ba4fa]{font-size:.9rem;font-weight:500;color:#2563eb;flex:1;text-decoration:underline}.upload-remove[data-v-042ba4fa]{background:none;border:none;color:#dc2626;cursor:pointer;font-size:.85rem;font-weight:600;padding:2px 6px;border-radius:4px;transition:background .15s;flex-shrink:0}.upload-remove[data-v-042ba4fa]:hover{background:#fee2e2}.upload-error[data-v-042ba4fa]{font-size:.85rem;color:#dc2626;margin-top:4px}.form-error[data-v-042ba4fa]{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;padding:.75rem 1rem;border-radius:8px;font-size:.9rem;margin-bottom:1rem}.form-actions[data-v-042ba4fa]{display:flex;gap:1rem;justify-content:flex-end;padding-top:2rem;border-top:1px solid #e5e7eb}.btn-cancel[data-v-042ba4fa]{background:#fff;border:1px solid #d1d5db;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s}.btn-cancel[data-v-042ba4fa]:hover{background:#f9fafb;border-color:#9ca3af}.btn-submit[data-v-042ba4fa]{background:#10b981;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s}.btn-submit[data-v-042ba4fa]:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 6px #10b98133}.btn-submit[data-v-042ba4fa]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.employee-certification-create[data-v-042ba4fa]{padding:1rem}.form-container[data-v-042ba4fa]{padding:1.5rem}.form-row[data-v-042ba4fa]{grid-template-columns:1fr}.form-actions[data-v-042ba4fa]{flex-direction:column}.btn-cancel[data-v-042ba4fa],.btn-submit[data-v-042ba4fa]{width:100%}}.modal-overlay[data-v-36149939]{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}.modal-content[data-v-36149939]{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header[data-v-36149939]{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.modal-header h2[data-v-36149939]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.header-actions[data-v-36149939]{display:flex;align-items:center;gap:12px}.btn-test-data[data-v-36149939]{background:#10b981;border:none;color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-test-data[data-v-36149939]:hover{background:#059669}.close-btn[data-v-36149939]{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:6px;transition:all .2s}.close-btn[data-v-36149939]:hover{background:#f3f4f6;color:#1a1a1a}form[data-v-36149939]{padding:24px}.form-group[data-v-36149939]{margin-bottom:20px}.form-group[data-v-36149939]:last-of-type{margin-bottom:0}label[data-v-36149939]{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}label.required[data-v-36149939]:after{content:" *";color:#dc2626}input[data-v-36149939],textarea[data-v-36149939]{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#1a1a1a;background:#fff;transition:all .2s;box-sizing:border-box}input[data-v-36149939]:focus,textarea[data-v-36149939]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}input[data-v-36149939]::placeholder,textarea[data-v-36149939]::placeholder{color:#9ca3af}textarea[data-v-36149939]{resize:vertical;min-height:100px}.modal-footer[data-v-36149939]{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid #e5e7eb;margin:0 -24px -24px}.btn-cancel[data-v-36149939],.btn-submit[data-v-36149939]{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-36149939]{background:#fff;color:#6b7280;border:1px solid #d1d5db}.btn-cancel[data-v-36149939]:hover{background:#f9fafb;color:#374151}.btn-submit[data-v-36149939]{background:#10b981;color:#fff}.btn-submit[data-v-36149939]:hover{background:#059669}@media (max-width: 640px){.modal-overlay[data-v-36149939]{padding:0}.modal-content[data-v-36149939]{max-width:100%;max-height:100vh;border-radius:0}.modal-footer[data-v-36149939]{flex-direction:column-reverse}.btn-cancel[data-v-36149939],.btn-submit[data-v-36149939]{width:100%}}.role-requirements-view[data-v-474fd44a]{width:100%}.header-section[data-v-474fd44a]{background:linear-gradient(135deg,#10b981,#059669);padding:32px 40px;border-radius:12px;margin-bottom:24px}.header-content[data-v-474fd44a]{display:flex;align-items:center;gap:20px}.header-icon[data-v-474fd44a]{font-size:48px;line-height:1}.header-text h1[data-v-474fd44a]{font-size:28px;font-weight:700;color:#fff;margin:0 0 8px}.header-text p[data-v-474fd44a]{font-size:14px;color:#ffffffe6;margin:0}.tabs-section[data-v-474fd44a]{display:flex;gap:8px;margin-bottom:32px}.tab[data-v-474fd44a]{padding:12px 24px;border:none;background:#fff;border-radius:8px;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #0000001a}.tab[data-v-474fd44a]:hover{color:#10b981}.tab.active[data-v-474fd44a]{background:#10b981;color:#fff}.content-section[data-v-474fd44a]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.section-header[data-v-474fd44a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-header h2[data-v-474fd44a]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.btn-add[data-v-474fd44a]{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;background:#10b981;color:#fff}.btn-add[data-v-474fd44a]:hover{background:#059669}.loading-state[data-v-474fd44a],.error-state[data-v-474fd44a]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-474fd44a]{color:#dc2626}.table-container[data-v-474fd44a]{overflow-x:auto}.roles-table[data-v-474fd44a]{width:100%;border-collapse:collapse}.roles-table thead[data-v-474fd44a]{background:#f9fafb;border-bottom:2px solid #e5e7eb}.roles-table th[data-v-474fd44a]{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.roles-table tbody tr[data-v-474fd44a]{border-bottom:1px solid #f3f4f6;transition:background-color .2s}.roles-table tbody tr[data-v-474fd44a]:hover{background-color:#f9fafb}.roles-table td[data-v-474fd44a]{padding:16px;font-size:14px;color:#1a1a1a}.role-name-cell[data-v-474fd44a]{font-weight:600}.description-cell[data-v-474fd44a]{color:#6b7280;max-width:600px}.actions-cell[data-v-474fd44a]{white-space:nowrap}.action-btn[data-v-474fd44a]{border:none;background:none;cursor:pointer;padding:4px 8px;font-size:18px;transition:transform .2s}.action-btn[data-v-474fd44a]:hover{transform:scale(1.15)}.view-btn[data-v-474fd44a],.edit-btn[data-v-474fd44a],.delete-btn[data-v-474fd44a]{opacity:.6}.view-btn[data-v-474fd44a]:hover,.edit-btn[data-v-474fd44a]:hover,.delete-btn[data-v-474fd44a]:hover{opacity:1}.empty-state[data-v-474fd44a]{padding:60px;text-align:center;color:#9ca3af;font-size:14px}.placeholder-content[data-v-474fd44a]{padding:80px 40px;text-align:center}.placeholder-icon[data-v-474fd44a]{font-size:64px;margin-bottom:24px}.placeholder-content p[data-v-474fd44a]{font-size:16px;color:#6b7280;margin:0 0 8px}.placeholder-subtext[data-v-474fd44a]{font-size:14px;color:#9ca3af}.requirement-form[data-v-474fd44a]{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:24px;margin-bottom:32px}.requirement-form h3[data-v-474fd44a]{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 24px}.form-row[data-v-474fd44a]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.form-group[data-v-474fd44a]{display:flex;flex-direction:column}.form-group label[data-v-474fd44a]{font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.form-group select[data-v-474fd44a],.form-group textarea[data-v-474fd44a]{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#1a1a1a;background:#fff;transition:all .2s;box-sizing:border-box}.form-group select[data-v-474fd44a]:focus,.form-group textarea[data-v-474fd44a]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-group textarea[data-v-474fd44a]{resize:vertical}.form-actions[data-v-474fd44a]{display:flex;gap:12px}.btn-submit[data-v-474fd44a]{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;background:#10b981;color:#fff}.btn-submit[data-v-474fd44a]:hover{background:#059669}.requirements-list[data-v-474fd44a]{display:flex;flex-direction:column;gap:16px}.role-requirements-card[data-v-474fd44a]{background:#f0fdf4;border:1px solid #d1fae5;border-radius:12px;padding:20px}.role-card-header[data-v-474fd44a]{margin-bottom:16px}.role-card-header h3[data-v-474fd44a]{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 4px}.cert-count[data-v-474fd44a]{font-size:13px;color:#6b7280;margin:0}.certifications-list[data-v-474fd44a]{display:flex;flex-direction:column;gap:12px}.certification-item[data-v-474fd44a]{display:flex;justify-content:space-between;align-items:start;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;transition:all .2s}.certification-item[data-v-474fd44a]:hover{box-shadow:0 2px 8px #00000014}.cert-info[data-v-474fd44a]{flex:1}.cert-header[data-v-474fd44a]{display:flex;align-items:center;gap:12px;margin-bottom:4px}.cert-info h4[data-v-474fd44a]{font-size:16px;font-weight:600;color:#1a1a1a;margin:0}.cert-badge[data-v-474fd44a]{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:700;letter-spacing:.5px}.cert-badge.mandatory[data-v-474fd44a]{background:#fecaca;color:#dc2626}.cert-badge.optional[data-v-474fd44a]{background:#dbeafe;color:#2563eb}.cert-code[data-v-474fd44a]{font-size:13px;color:#10b981;font-weight:500;margin:0 0 8px}.cert-description[data-v-474fd44a]{font-size:14px;color:#6b7280;margin:0;line-height:1.5}.btn-remove[data-v-474fd44a]{background:none;border:none;color:#dc2626;font-size:20px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s;opacity:.6;flex-shrink:0}.btn-remove[data-v-474fd44a]:hover{opacity:1;background:#fee2e2}@media (max-width: 768px){.header-section[data-v-474fd44a]{padding:24px}.header-content[data-v-474fd44a]{flex-direction:column;align-items:flex-start}.tabs-section[data-v-474fd44a]{flex-direction:column}.tab[data-v-474fd44a]{width:100%}.section-header[data-v-474fd44a]{flex-direction:column;align-items:flex-start;gap:16px}.btn-add[data-v-474fd44a]{width:100%;justify-content:center}.table-container[data-v-474fd44a]{overflow-x:scroll}.form-row[data-v-474fd44a]{grid-template-columns:1fr}.requirement-form[data-v-474fd44a]{padding:16px}.form-actions[data-v-474fd44a]{flex-direction:column-reverse}.btn-submit[data-v-474fd44a],.btn-cancel[data-v-474fd44a]{width:100%}}.role-view[data-v-15359768]{width:100%}.loading-state[data-v-15359768],.error-state[data-v-15359768]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-15359768]{color:#dc2626}.header-section[data-v-15359768]{background:linear-gradient(135deg,#10b981,#059669);padding:24px 40px 32px;border-radius:12px;margin-bottom:24px}.header-top[data-v-15359768]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.btn-back[data-v-15359768]{background:#fff3;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-back[data-v-15359768]:hover{background:#ffffff4d}.header-actions[data-v-15359768]{display:flex;gap:12px}.btn-edit[data-v-15359768],.btn-delete[data-v-15359768]{background:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit[data-v-15359768]{color:#10b981}.btn-edit[data-v-15359768]:hover{background:#f0fdf4}.btn-delete[data-v-15359768]{color:#dc2626}.btn-delete[data-v-15359768]:hover{background:#fef2f2}.header-content[data-v-15359768]{display:flex;align-items:center;gap:20px}.header-icon[data-v-15359768]{font-size:48px;line-height:1}.header-text h1[data-v-15359768]{font-size:28px;font-weight:700;color:#fff;margin:0 0 8px}.header-text p[data-v-15359768]{font-size:14px;color:#ffffffe6;margin:0}.details-section[data-v-15359768]{display:grid;gap:24px}.section-card[data-v-15359768]{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.section-card h2[data-v-15359768]{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.detail-row[data-v-15359768]{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:16px 0;border-bottom:1px solid #f3f4f6}.detail-row[data-v-15359768]:last-child{border-bottom:none}.detail-row.full-width[data-v-15359768]{grid-template-columns:200px 1fr}.detail-label[data-v-15359768]{font-size:14px;font-weight:600;color:#6b7280}.detail-value[data-v-15359768]{font-size:14px;color:#1a1a1a;word-break:break-word}.status-badge[data-v-15359768]{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.active[data-v-15359768]{background:#d1fae5;color:#065f46}.status-badge.inactive[data-v-15359768]{background:#fee2e2;color:#991b1b}@media (max-width: 768px){.header-section[data-v-15359768]{padding:20px}.header-top[data-v-15359768]{flex-direction:column;align-items:stretch;gap:12px}.header-actions[data-v-15359768]{justify-content:flex-end}.header-content[data-v-15359768]{flex-direction:column;align-items:flex-start}.section-card[data-v-15359768]{padding:24px}.detail-row[data-v-15359768]{grid-template-columns:1fr;gap:8px}.detail-row.full-width[data-v-15359768]{grid-template-columns:1fr}}.role-edit[data-v-cac7a2f0]{width:100%}.loading-state[data-v-cac7a2f0],.error-state[data-v-cac7a2f0]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-cac7a2f0]{color:#dc2626}.header-section[data-v-cac7a2f0]{background:linear-gradient(135deg,#10b981,#059669);padding:24px 40px 32px;border-radius:12px;margin-bottom:24px}.btn-back[data-v-cac7a2f0]{background:#fff3;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:24px}.btn-back[data-v-cac7a2f0]:hover{background:#ffffff4d}.header-content[data-v-cac7a2f0]{display:flex;align-items:center;gap:20px}.header-icon[data-v-cac7a2f0]{font-size:48px;line-height:1}.header-text h1[data-v-cac7a2f0]{font-size:28px;font-weight:700;color:#fff;margin:0 0 8px}.header-text p[data-v-cac7a2f0]{font-size:14px;color:#ffffffe6;margin:0}.form-section[data-v-cac7a2f0]{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.form-card h2[data-v-cac7a2f0]{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.form-group[data-v-cac7a2f0]{margin-bottom:24px}.form-group[data-v-cac7a2f0]:last-of-type{margin-bottom:0}label[data-v-cac7a2f0]{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}label.required[data-v-cac7a2f0]:after{content:" *";color:#dc2626}input[data-v-cac7a2f0],textarea[data-v-cac7a2f0]{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#1a1a1a;background:#fff;transition:all .2s;box-sizing:border-box}input[data-v-cac7a2f0]:focus,textarea[data-v-cac7a2f0]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}input[data-v-cac7a2f0]::placeholder,textarea[data-v-cac7a2f0]::placeholder{color:#9ca3af}textarea[data-v-cac7a2f0]{resize:vertical;min-height:100px}.checkbox-group[data-v-cac7a2f0]{margin-top:24px}.checkbox-label[data-v-cac7a2f0]{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500}.checkbox-label input[type=checkbox][data-v-cac7a2f0]{width:auto;cursor:pointer}.form-actions[data-v-cac7a2f0]{display:flex;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-cancel[data-v-cac7a2f0],.btn-submit[data-v-cac7a2f0]{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-cac7a2f0]{background:#fff;color:#6b7280;border:1px solid #d1d5db}.btn-cancel[data-v-cac7a2f0]:hover{background:#f9fafb;color:#374151}.btn-submit[data-v-cac7a2f0]{background:#10b981;color:#fff}.btn-submit[data-v-cac7a2f0]:hover{background:#059669}@media (max-width: 768px){.header-section[data-v-cac7a2f0]{padding:20px}.header-content[data-v-cac7a2f0]{flex-direction:column;align-items:flex-start}.form-section[data-v-cac7a2f0]{padding:24px}.form-actions[data-v-cac7a2f0]{flex-direction:column-reverse}.btn-cancel[data-v-cac7a2f0],.btn-submit[data-v-cac7a2f0]{width:100%}}.allocation-view[data-v-ffae9eef]{width:100%}.header-section[data-v-ffae9eef]{background:linear-gradient(135deg,#1e40af,#1d4ed8);padding:32px 40px;border-radius:12px;margin-bottom:24px}.header-text h1[data-v-ffae9eef]{font-size:28px;font-weight:700;color:#fff;margin:0 0 8px}.header-text p[data-v-ffae9eef]{font-size:14px;color:#ffffffd9;margin:0}.filter-bar[data-v-ffae9eef]{display:flex;align-items:flex-end;gap:16px;margin-bottom:24px;flex-wrap:wrap}.filter-group[data-v-ffae9eef]{display:flex;flex-direction:column;gap:6px}.filter-group label[data-v-ffae9eef]{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.filter-group select[data-v-ffae9eef]{padding:9px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#fff;min-width:150px;cursor:pointer}.filter-group select[data-v-ffae9eef]:focus{outline:none;border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed81a}.btn-load[data-v-ffae9eef]{padding:10px 24px;background:#1d4ed8;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;height:40px}.btn-load[data-v-ffae9eef]:hover{background:#1e40af;transform:translateY(-1px)}.stats-bar[data-v-ffae9eef]{display:flex;gap:16px;margin-bottom:24px}.stat-card[data-v-ffae9eef]{background:#fff;border-radius:10px;padding:16px 24px;box-shadow:0 1px 3px #00000014;border:1px solid #e5e7eb;min-width:120px}.stat-value[data-v-ffae9eef]{font-size:28px;font-weight:700;color:#1d4ed8;line-height:1}.stat-label[data-v-ffae9eef]{font-size:12px;color:#6b7280;margin-top:4px}.loading-state[data-v-ffae9eef],.error-state[data-v-ffae9eef]{padding:60px;text-align:center;color:#6b7280;background:#fff;border-radius:12px}.error-state[data-v-ffae9eef]{color:#dc2626}.table-section[data-v-ffae9eef]{background:#fff;border-radius:12px;padding:0;box-shadow:0 1px 3px #00000014;overflow:hidden}.allocations-table[data-v-ffae9eef]{width:100%;border-collapse:collapse}.allocations-table thead[data-v-ffae9eef]{background:#f8fafc;border-bottom:2px solid #e5e7eb}.allocations-table th[data-v-ffae9eef]{padding:14px 16px;text-align:left;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.allocations-table tbody tr[data-v-ffae9eef]{border-bottom:1px solid #f3f4f6;transition:background .15s}.clickable-row[data-v-ffae9eef]{cursor:pointer}.clickable-row[data-v-ffae9eef]:hover{background:#f0f7ff}.allocations-table td[data-v-ffae9eef]{padding:14px 16px;font-size:14px;color:#1a1a1a;vertical-align:middle}.cell-with-avatar[data-v-ffae9eef]{display:flex;align-items:center;gap:10px}.avatar[data-v-ffae9eef]{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#1d4ed8,#1e40af);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.cell-name[data-v-ffae9eef]{font-weight:600;color:#1a1a1a;font-size:14px}.cell-sub[data-v-ffae9eef]{font-size:12px;color:#6b7280;margin-top:2px}.site-badge[data-v-ffae9eef]{background:#eff6ff;color:#1e40af;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600}.date-cell[data-v-ffae9eef]{white-space:nowrap;color:#374151;font-size:13px}.date-arrow[data-v-ffae9eef]{color:#9ca3af}.days-badge[data-v-ffae9eef]{background:#f0fdf4;color:#065f46;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600}.location-badge[data-v-ffae9eef]{padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600}.loc-offshore[data-v-ffae9eef]{background:#d1fae5;color:#065f46}.loc-onshore[data-v-ffae9eef]{background:#dbeafe;color:#1e40af}.loc-leave[data-v-ffae9eef],.loc-off[data-v-ffae9eef]{background:#fef3c7;color:#92400e}.loc-sick[data-v-ffae9eef]{background:#fee2e2;color:#991b1b}.empty-state[data-v-ffae9eef]{padding:80px 40px;text-align:center;color:#9ca3af}.empty-icon[data-v-ffae9eef]{font-size:56px;margin-bottom:16px;opacity:.5}.empty-state p[data-v-ffae9eef]{margin:0 0 8px;font-size:15px;font-weight:500;color:#6b7280}.empty-hint[data-v-ffae9eef]{font-size:13px!important;color:#9ca3af!important;font-weight:400!important}.table-footer[data-v-ffae9eef]{padding:16px 20px;border-top:1px solid #f3f4f6;font-size:13px;color:#6b7280}.modal-overlay[data-v-ffae9eef]{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}.detail-modal[data-v-ffae9eef]{background:#fff;border-radius:16px;max-width:640px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.detail-header[data-v-ffae9eef]{background:linear-gradient(135deg,#1e40af,#1d4ed8);padding:28px 32px;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;align-items:flex-start}.detail-header h2[data-v-ffae9eef]{margin:0 0 6px;font-size:22px;font-weight:700;color:#fff}.detail-header p[data-v-ffae9eef]{margin:0;font-size:14px;color:#ffffffd9}.close-btn[data-v-ffae9eef]{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:8px;font-size:18px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.close-btn[data-v-ffae9eef]:hover{background:#ffffff4d}.detail-body[data-v-ffae9eef]{padding:28px 32px;display:flex;flex-direction:column;gap:16px}.detail-grid[data-v-ffae9eef]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-card[data-v-ffae9eef]{background:#f9fafb;border-radius:10px;padding:20px;border:1px solid #e5e7eb}.detail-card.full[data-v-ffae9eef]{grid-column:1 / -1}.detail-card h3[data-v-ffae9eef]{font-size:13px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0 0 14px}.detail-row[data-v-ffae9eef]{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #f3f4f6;font-size:14px}.detail-row[data-v-ffae9eef]:last-child{border-bottom:none}.detail-row span[data-v-ffae9eef]{color:#6b7280}.detail-row strong[data-v-ffae9eef]{color:#1a1a1a;font-weight:600}.detail-footer[data-v-ffae9eef]{padding:20px 32px;border-top:1px solid #f3f4f6}.btn-close-detail[data-v-ffae9eef]{width:100%;padding:12px;background:#1d4ed8;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.btn-close-detail[data-v-ffae9eef]:hover{background:#1e40af}@media (max-width: 768px){.filter-bar[data-v-ffae9eef]{flex-direction:column}.filter-group select[data-v-ffae9eef]{min-width:unset;width:100%}.stats-bar[data-v-ffae9eef]{flex-wrap:wrap}.detail-grid[data-v-ffae9eef]{grid-template-columns:1fr}}.daily-planning-master[data-v-b4501aad]{padding:24px}.controls[data-v-b4501aad]{display:flex;gap:24px;margin-bottom:24px;flex-wrap:wrap;align-items:center}.date-controls[data-v-b4501aad]{display:flex;gap:8px;align-items:center}.nav-btn[data-v-b4501aad]{padding:8px 16px;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:18px;font-weight:600}.nav-btn[data-v-b4501aad]:hover{background:#f3f4f6}.date-input[data-v-b4501aad]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.today-btn[data-v-b4501aad]{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.today-btn[data-v-b4501aad]:hover{background:#5568d3}.filter-controls[data-v-b4501aad]{display:flex;gap:16px;flex:1;flex-wrap:wrap}.filter-group[data-v-b4501aad]{display:flex;gap:8px;align-items:center}.filter-group label[data-v-b4501aad]{font-size:14px;font-weight:500;color:#374151}.filter-group select[data-v-b4501aad]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;min-width:150px}.action-controls[data-v-b4501aad]{display:flex;gap:8px}.btn-secondary[data-v-b4501aad]{padding:8px 16px;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-secondary[data-v-b4501aad]:hover{background:#f3f4f6}.date-header[data-v-b4501aad]{background:#fff;padding:20px 24px;border-radius:12px;border:1px solid #e5e7eb;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.date-header h2[data-v-b4501aad]{margin:0;font-size:24px;font-weight:700;color:#1a1a1a}.stats[data-v-b4501aad]{display:flex;gap:24px}.stat[data-v-b4501aad]{font-size:14px;color:#6b7280}.stat strong[data-v-b4501aad]{color:#1a1a1a;font-size:18px;margin-right:4px}.loading[data-v-b4501aad],.error-message[data-v-b4501aad]{background:#fff;padding:40px;text-align:center;border-radius:12px;border:1px solid #e5e7eb}.error-message[data-v-b4501aad]{color:#dc2626}.assignments-table-container[data-v-b4501aad]{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;margin-bottom:24px}.assignments-table[data-v-b4501aad]{width:100%;border-collapse:collapse}.assignments-table thead[data-v-b4501aad]{background:#f9fafb}.assignments-table th[data-v-b4501aad]{padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.assignments-table tbody tr[data-v-b4501aad]{border-bottom:1px solid #e5e7eb}.assignments-table tbody tr[data-v-b4501aad]:hover{background:#f9fafb}.assignments-table td[data-v-b4501aad]{padding:12px 16px;font-size:14px}.no-data[data-v-b4501aad]{text-align:center;color:#6b7280;padding:40px!important}.employee-info[data-v-b4501aad]{display:flex;flex-direction:column;gap:2px}.employee-name[data-v-b4501aad]{font-weight:600;color:#1a1a1a}.employee-link[data-v-b4501aad]{cursor:pointer}.employee-link[data-v-b4501aad]:hover{color:#2563eb;text-decoration:underline}.employee-code[data-v-b4501aad]{font-size:12px;color:#6b7280}.site-badge[data-v-b4501aad]{display:inline-block;padding:4px 12px;background:#dbeafe;color:#1e40af;border-radius:12px;font-size:13px;font-weight:500}.project-name[data-v-b4501aad],.role-name[data-v-b4501aad]{font-weight:500;color:#374151}.no-value[data-v-b4501aad]{color:#9ca3af}.status-badge[data-v-b4501aad]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:600}.status-badge.status-scheduled[data-v-b4501aad]{background:#d1fae5;color:#065f46}.status-badge.status-off[data-v-b4501aad]{background:#f3f4f6;color:#374151}.status-badge.status-leave[data-v-b4501aad]{background:#fef3c7;color:#92400e}.status-badge.status-sick[data-v-b4501aad]{background:#fee2e2;color:#991b1b}.notes-text[data-v-b4501aad]{font-size:13px;color:#6b7280;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-actions[data-v-b4501aad]{text-align:center}.btn-icon[data-v-b4501aad]{background:none;border:none;cursor:pointer;padding:4px 8px;font-size:16px}.btn-icon[data-v-b4501aad]:hover{opacity:.7}.summary-cards[data-v-b4501aad]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.summary-card[data-v-b4501aad]{background:#fff;padding:20px;border-radius:12px;border:1px solid #e5e7eb}.summary-card h3[data-v-b4501aad]{margin:0 0 16px;font-size:16px;font-weight:600;color:#1a1a1a}.summary-list[data-v-b4501aad]{display:flex;flex-direction:column;gap:8px}.summary-item[data-v-b4501aad]{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f3f4f6}.summary-item[data-v-b4501aad]:last-child{border-bottom:none}.summary-label[data-v-b4501aad]{font-size:14px;color:#374151}.summary-value[data-v-b4501aad]{font-size:16px;font-weight:600;color:#667eea}.weekly-view-summary[data-v-72885d4a]{padding:24px}.summary-header[data-v-72885d4a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:20px;flex-wrap:wrap}.summary-header h2[data-v-72885d4a]{margin:0;font-size:24px;color:#1a1a1a}.controls[data-v-72885d4a]{display:flex;gap:16px;align-items:center}.month-selector[data-v-72885d4a],.year-selector[data-v-72885d4a]{display:flex;align-items:center;gap:8px}.month-selector label[data-v-72885d4a],.year-selector label[data-v-72885d4a]{font-size:14px;font-weight:500;color:#374151}.month-selector select[data-v-72885d4a],.year-selector input[data-v-72885d4a]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.year-selector input[data-v-72885d4a]{width:100px}.filter-item[data-v-72885d4a]{display:flex;align-items:center;gap:8px}.employee-search-wrapper[data-v-72885d4a],.employee-search[data-v-72885d4a]{position:relative}.employee-search-input[data-v-72885d4a]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;width:220px;background:#fff;outline:none}.employee-search-input[data-v-72885d4a]:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.employee-dropdown[data-v-72885d4a]{position:absolute;top:calc(100% + 4px);left:0;min-width:240px;max-height:260px;overflow-y:auto;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:1000}.employee-dropdown-item[data-v-72885d4a]{padding:9px 14px;font-size:13px;color:#1a1a1a;cursor:pointer;transition:background .1s}.employee-dropdown-item[data-v-72885d4a]:hover,.employee-dropdown-item.selected[data-v-72885d4a]{background:#eff6ff;color:#2563eb}.employee-dropdown-empty[data-v-72885d4a]{padding:10px 14px;font-size:13px;color:#9ca3af}.filter-item label[data-v-72885d4a]{font-size:14px;font-weight:500;color:#374151;white-space:nowrap}.filter-item select[data-v-72885d4a]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;min-width:140px}.btn-load[data-v-72885d4a]{background:#2563eb;color:#fff;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-load[data-v-72885d4a]:hover{background:#1d4ed8}.btn-export[data-v-72885d4a]{background:#fff;color:#374151;padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-export[data-v-72885d4a]:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-export[data-v-72885d4a]:disabled{opacity:.5;cursor:not-allowed}.loading[data-v-72885d4a],.empty-message[data-v-72885d4a]{text-align:center;padding:60px 20px;color:#6b7280}.summary-container[data-v-72885d4a]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.summary-table-wrapper[data-v-72885d4a]{overflow-x:auto}.summary-table[data-v-72885d4a]{width:100%;border-collapse:collapse;font-size:14px}.summary-table th[data-v-72885d4a]{background:#f9fafb;padding:12px 8px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.summary-table td[data-v-72885d4a]{padding:12px 8px;border-bottom:1px solid #f3f4f6}.employee-col[data-v-72885d4a]{position:sticky;left:0;background:#f9fafb;z-index:10;min-width:200px}.week-col[data-v-72885d4a]{min-width:100px;text-align:center}.total-col[data-v-72885d4a]{min-width:120px;text-align:center;background:#f9fafb;border-left:2px solid #e5e7eb}.employee-cell[data-v-72885d4a]{position:sticky;left:0;background:#fff;z-index:5}.employee-info[data-v-72885d4a]{display:flex;flex-direction:column;gap:4px}.employee-name[data-v-72885d4a]{font-weight:500;color:#1a1a1a}.employee-link[data-v-72885d4a]{cursor:pointer}.employee-link[data-v-72885d4a]:hover{color:#2563eb;text-decoration:underline}.employee-badge[data-v-72885d4a]{font-size:12px;color:#6b7280}.week-cell[data-v-72885d4a]{cursor:pointer;transition:background .2s}.week-cell[data-v-72885d4a]:hover{background:#f9fafb}.week-data[data-v-72885d4a]{display:flex;flex-direction:column;align-items:center;gap:4px}.days-on[data-v-72885d4a]{color:#059669;font-weight:600;font-size:13px}.days-off[data-v-72885d4a]{color:#6b7280;font-size:12px}.no-data[data-v-72885d4a]{text-align:center;color:#d1d5db}.total-cell[data-v-72885d4a]{background:#f9fafb;border-left:2px solid #e5e7eb}.total-data[data-v-72885d4a]{display:flex;flex-direction:column;align-items:center;gap:4px}.total-on[data-v-72885d4a]{color:#059669;font-weight:700;font-size:14px}.total-off[data-v-72885d4a]{color:#6b7280;font-size:13px}.detail-dialog-overlay[data-v-72885d4a]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.detail-dialog[data-v-72885d4a]{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.dialog-header[data-v-72885d4a]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.dialog-header h3[data-v-72885d4a]{margin:0;font-size:18px}.btn-close[data-v-72885d4a]{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px}.dialog-content[data-v-72885d4a]{padding:24px}.employee-name-detail[data-v-72885d4a]{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.week-period[data-v-72885d4a]{font-size:14px;color:#6b7280;margin-bottom:20px}.loading-detail[data-v-72885d4a],.no-detail[data-v-72885d4a]{text-align:center;padding:40px 20px;color:#6b7280}.day-details[data-v-72885d4a]{display:flex;flex-direction:column;gap:8px}.day-detail-item[data-v-72885d4a]{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border-radius:6px}.day-detail-item.scheduled[data-v-72885d4a]{border-left:4px solid #10b981}.day-detail-item.off[data-v-72885d4a]{border-left:4px solid #9ca3af}.day-date[data-v-72885d4a]{flex:1;font-size:14px;color:#1a1a1a;font-weight:500}.status-badge[data-v-72885d4a]{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600}.status-badge.scheduled[data-v-72885d4a]{background:#d1fae5;color:#065f46}.status-badge.off[data-v-72885d4a]{background:#e5e7eb;color:#374151}.day-site[data-v-72885d4a]{font-size:13px;color:#6b7280}.dialog-actions[data-v-72885d4a]{padding:20px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.btn-primary[data-v-72885d4a]{background:#2563eb;color:#fff;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-primary[data-v-72885d4a]:hover{background:#1d4ed8}.planning-view[data-v-07525c6e]{min-height:100vh;background:#f9fafb}.page-header[data-v-07525c6e]{background:#fff;border-bottom:1px solid #e5e7eb;padding:32px 24px}.page-header h1[data-v-07525c6e]{margin:0 0 8px;font-size:32px;color:#1a1a1a;font-weight:700}.page-description[data-v-07525c6e]{margin:0;color:#6b7280;font-size:16px}.view-controls[data-v-07525c6e]{background:#fff;border-bottom:1px solid #e5e7eb;padding:0 24px}.view-tabs[data-v-07525c6e]{display:flex;gap:4px}.tab-btn[data-v-07525c6e]{background:none;border:none;padding:16px 24px;font-size:15px;font-weight:500;color:#6b7280;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s}.tab-btn[data-v-07525c6e]:hover{color:#1a1a1a;background:#f9fafb}.tab-btn.active[data-v-07525c6e]{color:#2563eb;border-bottom-color:#2563eb}.view-content[data-v-07525c6e]{min-height:calc(100vh - 180px)}.timeline-view[data-v-07525c6e]{padding:24px}.timeline-header[data-v-07525c6e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.timeline-header h2[data-v-07525c6e]{margin:0;font-size:24px;color:#1a1a1a}.timeline-controls[data-v-07525c6e]{display:flex;gap:16px;align-items:center}.filter-group[data-v-07525c6e]{display:flex;align-items:center;gap:8px}.filter-group label[data-v-07525c6e]{font-size:14px;font-weight:500;color:#374151}.filter-group select[data-v-07525c6e]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.date-navigation[data-v-07525c6e]{display:flex;align-items:center;gap:12px}.nav-btn[data-v-07525c6e]{background:#f3f4f6;border:1px solid #d1d5db;width:36px;height:36px;border-radius:6px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center}.nav-btn[data-v-07525c6e]:hover{background:#e5e7eb}.current-year[data-v-07525c6e]{font-size:18px;font-weight:600;color:#1a1a1a;min-width:60px;text-align:center}.loading[data-v-07525c6e],.error-message[data-v-07525c6e]{text-align:center;padding:60px 20px;color:#6b7280}.error-message[data-v-07525c6e]{color:#dc2626}.top-scroll-bar[data-v-07525c6e]{overflow-x:auto;overflow-y:hidden;height:12px;margin-bottom:2px}.top-scroll-inner[data-v-07525c6e]{height:1px}.timeline-container[data-v-07525c6e]{background:#fff;border-radius:8px;border:1px solid #e5e7eb;overflow-x:auto}.planning-table[data-v-07525c6e]{width:max-content;border-collapse:collapse;font-size:14px;min-width:100%}.planning-table th[data-v-07525c6e]{background:#f9fafb;padding:12px 8px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;position:sticky;top:0;z-index:10}.resource-header[data-v-07525c6e]{position:sticky;left:0;background:#f9fafb;z-index:11;min-width:200px;border-right:2px solid #e5e7eb}.month-header[data-v-07525c6e]{min-width:160px;width:160px;text-align:center}.month-info[data-v-07525c6e]{display:flex;flex-direction:column;align-items:center}.month-name[data-v-07525c6e]{font-size:13px}.resource-cell[data-v-07525c6e]{position:sticky;left:0;background:#fff;z-index:5;border-right:2px solid #e5e7eb;padding:12px}.resource-info[data-v-07525c6e]{display:flex;flex-direction:column;gap:4px}.resource-name[data-v-07525c6e]{font-weight:500;color:#1a1a1a}.resource-code[data-v-07525c6e]{font-size:12px;color:#6b7280}.timeline-cell[data-v-07525c6e]{padding:8px 4px;border-bottom:1px solid #f3f4f6;position:relative;min-height:50px;width:160px;min-width:160px}.timeline-content[data-v-07525c6e]{position:relative;height:32px}.allocation-bar[data-v-07525c6e]{position:absolute;height:28px;border-radius:4px;display:flex;align-items:center;padding:0 8px;color:#fff;font-size:12px;font-weight:500;overflow:hidden;cursor:pointer;transition:transform .2s}.allocation-bar[data-v-07525c6e]:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a;filter:brightness(1.1)}.clickable-bar[data-v-07525c6e]{cursor:pointer}.clickable-bar:hover .allocation-label[data-v-07525c6e]{text-decoration:underline}.allocation-label[data-v-07525c6e]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state[data-v-07525c6e]{text-align:center;padding:60px 20px;color:#6b7280}.time-view[data-v-549882dc]{width:100%}.header-section[data-v-549882dc]{background:linear-gradient(135deg,#14b8a6,#0d9488);padding:28px 32px;border-radius:12px;margin-bottom:24px}.header-section h1[data-v-549882dc]{font-size:28px;font-weight:700;color:#fff;margin:0 0 20px}.employee-selector[data-v-549882dc]{display:flex;align-items:center;gap:12px;margin-bottom:20px}.employee-selector label[data-v-549882dc]{font-weight:600;color:#fff;font-size:14px}.employee-select[data-v-549882dc]{padding:10px 16px;border:none;border-radius:8px;background:#fff;color:#0d9488;font-weight:600;font-size:14px;cursor:pointer;min-width:200px;transition:all .2s}.employee-select[data-v-549882dc]:focus{outline:none;box-shadow:0 0 0 3px #ffffff4d}.week-navigation[data-v-549882dc]{display:flex;align-items:center;gap:16px;margin-bottom:20px}.week-btn[data-v-549882dc]{padding:10px 20px;border:none;border-radius:8px;background:#fff3;color:#fff;font-weight:600;cursor:pointer;transition:all .2s}.week-btn[data-v-549882dc]:hover{background:#ffffff4d}.week-info[data-v-549882dc]{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#ffffffe6;border-radius:8px;font-weight:600;color:#0d9488}.calendar-icon[data-v-549882dc]{font-size:18px}.header-actions[data-v-549882dc]{display:flex;gap:12px;flex-wrap:wrap}.action-btn[data-v-549882dc]{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.action-btn.primary[data-v-549882dc]{background:#fff;color:#0d9488}.action-btn.success[data-v-549882dc]{background:#10b981;color:#fff}.action-btn.info[data-v-549882dc]{background:#06b6d4;color:#fff}.action-btn[data-v-549882dc]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.summary-section[data-v-549882dc]{display:flex;gap:24px;align-items:center;padding:20px 24px;background:#fff;border-radius:12px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a;flex-wrap:wrap}.summary-item[data-v-549882dc]{display:flex;align-items:center;gap:8px}.summary-icon[data-v-549882dc]{font-size:20px}.summary-label[data-v-549882dc]{font-weight:600;color:#6b7280}.summary-value[data-v-549882dc]{font-size:18px;font-weight:700;color:#0d9488}.mode-info[data-v-549882dc]{margin-left:auto;font-size:14px;color:#9ca3af}.loading-state[data-v-549882dc],.error-state[data-v-549882dc]{padding:60px;text-align:center;color:#6b7280}.error-state[data-v-549882dc]{color:#dc2626}.content-section[data-v-549882dc]{display:flex;flex-direction:column;gap:24px}.table-section[data-v-549882dc]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;overflow-x:auto}.timesheet-table[data-v-549882dc]{width:100%;border-collapse:collapse;min-width:900px}.timesheet-table thead[data-v-549882dc]{background:#f9fafb;border-bottom:2px solid #e5e7eb}.timesheet-table th[data-v-549882dc]{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.timesheet-table tbody tr[data-v-549882dc]{border-bottom:1px solid #f3f4f6;transition:background-color .2s}.timesheet-table tbody tr[data-v-549882dc]:hover{background-color:#f9fafb}.timesheet-table td[data-v-549882dc]{padding:16px;font-size:14px;color:#1a1a1a}.date-cell[data-v-549882dc]{font-weight:500;white-space:nowrap}.project-cell[data-v-549882dc]{min-width:250px}.project-info[data-v-549882dc]{display:flex;flex-direction:column;gap:4px}.project-name[data-v-549882dc]{font-weight:600;color:#1a1a1a}.activity-desc[data-v-549882dc]{font-size:12px;color:#6b7280}.hour-type-badge[data-v-549882dc]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.hour-type-badge.normal[data-v-549882dc]{background:#dbeafe;color:#1e40af}.hour-type-badge.night[data-v-549882dc]{background:#e0e7ff;color:#4c1d95}.hour-type-badge.weekend[data-v-549882dc]{background:#f3e8ff;color:#6b21a8}.hour-type-badge.holiday[data-v-549882dc]{background:#fce7f3;color:#9f1239}.hours-cell[data-v-549882dc]{font-weight:600;color:#0d9488}.billable-cell[data-v-549882dc]{text-align:center;font-size:18px}.status-badge[data-v-549882dc]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.status-badge.draft[data-v-549882dc]{background:#e5e7eb;color:#4b5563}.status-badge.submitted[data-v-549882dc]{background:#dbeafe;color:#1e40af}.status-badge.site-approved[data-v-549882dc]{background:#fef3c7;color:#92400e}.status-badge.project-approved[data-v-549882dc]{background:#fed7aa;color:#9a3412}.status-badge.finance-approved[data-v-549882dc]{background:#d1fae5;color:#065f46}.actions-cell[data-v-549882dc]{display:flex;gap:8px}.icon-btn[data-v-549882dc]{padding:6px 10px;border:none;background:transparent;cursor:pointer;font-size:16px;border-radius:4px;transition:all .2s}.icon-btn[data-v-549882dc]:hover{background:#f3f4f6}.icon-btn.delete[data-v-549882dc]:hover{background:#fee2e2}.empty-state[data-v-549882dc]{padding:60px;text-align:center;color:#9ca3af;font-size:14px}.info-sections[data-v-549882dc]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.info-card[data-v-549882dc]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.info-card h3[data-v-549882dc]{font-size:16px;font-weight:700;color:#1a1a1a;margin:0 0 16px}.workflow-steps[data-v-549882dc]{display:flex;flex-direction:column;gap:12px}.workflow-step[data-v-549882dc]{display:flex;align-items:center;gap:12px}.step-number[data-v-549882dc]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#0d9488;color:#fff;font-weight:700;font-size:14px}.step-text[data-v-549882dc]{font-size:14px;color:#4b5563}.rules-list[data-v-549882dc],.export-list[data-v-549882dc]{margin:0;padding-left:20px;font-size:14px;color:#4b5563;line-height:1.8}.rules-list li[data-v-549882dc],.export-list li[data-v-549882dc]{margin-bottom:8px}.sub-item[data-v-549882dc]{padding-left:20px;color:#6b7280;font-size:13px}.modal-overlay[data-v-549882dc]{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[data-v-549882dc]{background:#fff;border-radius:12px;padding:32px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-content h2[data-v-549882dc]{font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 24px}.form-group[data-v-549882dc]{margin-bottom:20px}.form-group label[data-v-549882dc]{display:block;font-weight:600;color:#374151;margin-bottom:8px;font-size:14px}.form-group input[type=text][data-v-549882dc],.form-group input[type=date][data-v-549882dc],.form-group input[type=number][data-v-549882dc],.form-group select[data-v-549882dc]{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;transition:all .2s}.form-group input[data-v-549882dc]:focus,.form-group select[data-v-549882dc]:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 3px #0d94881a}.form-group input[type=checkbox][data-v-549882dc]{margin-right:8px}.modal-actions[data-v-549882dc]{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.btn-cancel[data-v-549882dc]{padding:10px 20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-549882dc]:hover{background:#f9fafb}.btn-submit[data-v-549882dc]{padding:10px 20px;border:none;border-radius:8px;background:#0d9488;color:#fff;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit[data-v-549882dc]:hover{background:#0f766e}@media (max-width: 768px){.header-section[data-v-549882dc]{padding:20px}.week-navigation[data-v-549882dc]{flex-direction:column}.summary-section[data-v-549882dc]{flex-direction:column;align-items:flex-start}.mode-info[data-v-549882dc]{margin-left:0}.info-sections[data-v-549882dc]{grid-template-columns:1fr}}.rotation-pattern-manager[data-v-41301c26]{padding:24px}.manager-header[data-v-41301c26]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.manager-header h2[data-v-41301c26]{margin:0;font-size:24px;color:#1a1a1a}.btn-primary[data-v-41301c26]{background:#2563eb;color:#fff;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-primary[data-v-41301c26]:hover{background:#1d4ed8}.btn-primary[data-v-41301c26]:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary[data-v-41301c26]{background:#f3f4f6;color:#374151;padding:10px 20px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-secondary[data-v-41301c26]:hover{background:#e5e7eb}.pattern-form-overlay[data-v-41301c26]{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}.pattern-form-card[data-v-41301c26]{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.form-header[data-v-41301c26]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.form-header h3[data-v-41301c26]{margin:0;font-size:20px;color:#1a1a1a}.btn-close[data-v-41301c26]{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;line-height:1;padding:0;width:32px;height:32px}.btn-close[data-v-41301c26]:hover{color:#1a1a1a}form[data-v-41301c26]{padding:24px}.form-group[data-v-41301c26]{margin-bottom:20px}.form-group label[data-v-41301c26]{display:block;margin-bottom:6px;font-weight:500;color:#374151;font-size:14px}.form-group input[type=text][data-v-41301c26],.form-group input[type=number][data-v-41301c26],.form-group textarea[data-v-41301c26]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;box-sizing:border-box}.form-group input[type=checkbox][data-v-41301c26]{margin-right:8px}.form-row[data-v-41301c26]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pattern-preview[data-v-41301c26]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:20px}.pattern-preview h4[data-v-41301c26]{margin:0 0 12px;font-size:14px;color:#6b7280}.cycle-visualization[data-v-41301c26]{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}.day-block[data-v-41301c26]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:11px;font-weight:600;cursor:help}.day-block.on[data-v-41301c26]{background:#10b981;color:#fff}.day-block.off[data-v-41301c26]{background:#9ca3af;color:#fff}.cycle-stats[data-v-41301c26]{display:flex;gap:16px;font-size:13px}.stat[data-v-41301c26]{padding:4px 8px;border-radius:4px;font-weight:500}.stat.on[data-v-41301c26]{background:#d1fae5;color:#065f46}.stat.off[data-v-41301c26]{background:#e5e7eb;color:#374151}.stat.total[data-v-41301c26]{background:#dbeafe;color:#1e40af}.form-actions[data-v-41301c26]{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.patterns-list[data-v-41301c26]{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.pattern-card[data-v-41301c26]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:box-shadow .2s}.pattern-card[data-v-41301c26]:hover{box-shadow:0 4px 6px -1px #0000001a}.pattern-header[data-v-41301c26]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.pattern-header h3[data-v-41301c26]{margin:0 0 8px;font-size:18px;color:#1a1a1a}.badge[data-v-41301c26]{display:inline-block;padding:3px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge.active[data-v-41301c26]{background:#d1fae5;color:#065f46}.badge.inactive[data-v-41301c26]{background:#f3f4f6;color:#6b7280}.pattern-actions[data-v-41301c26]{display:flex;gap:8px}.btn-icon[data-v-41301c26]{background:none;border:none;cursor:pointer;font-size:18px;padding:4px;border-radius:4px;transition:background .2s}.btn-icon[data-v-41301c26]:hover{background:#f3f4f6}.btn-icon.danger[data-v-41301c26]:hover{background:#fee2e2}.pattern-description[data-v-41301c26]{color:#6b7280;font-size:14px;margin-bottom:12px}.pattern-details[data-v-41301c26]{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.detail-item[data-v-41301c26]{display:flex;font-size:14px}.detail-item .label[data-v-41301c26]{color:#6b7280;font-weight:500;margin-right:8px;min-width:100px}.detail-item .value[data-v-41301c26]{color:#1a1a1a}.mini-visualization[data-v-41301c26]{display:flex;flex-wrap:wrap;gap:3px;margin-top:12px}.mini-day[data-v-41301c26]{width:16px;height:16px;border-radius:2px}.mini-day.on[data-v-41301c26]{background:#10b981}.mini-day.off[data-v-41301c26]{background:#d1d5db}.loading[data-v-41301c26],.error-message[data-v-41301c26]{text-align:center;padding:40px;color:#6b7280}.error-message[data-v-41301c26]{color:#dc2626}.empty-state[data-v-41301c26]{text-align:center;padding:60px 20px;color:#6b7280;grid-column:1 / -1}.empty-state p[data-v-41301c26]{margin:8px 0}.rotation-patterns-view[data-v-a8dddce8]{min-height:100vh;background:#f9fafb}.dialog-overlay[data-v-3a0838c1]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.dialog-card[data-v-3a0838c1]{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.dialog-header[data-v-3a0838c1]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.dialog-header h3[data-v-3a0838c1]{margin:0;font-size:20px;color:#1a1a1a}.btn-close[data-v-3a0838c1]{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;line-height:1;padding:0;width:32px;height:32px}.btn-close[data-v-3a0838c1]:hover{color:#1a1a1a}.dialog-content[data-v-3a0838c1]{padding:24px}.form-group[data-v-3a0838c1]{margin-bottom:20px}.form-group label[data-v-3a0838c1]{display:block;margin-bottom:6px;font-weight:500;color:#374151;font-size:14px}.form-group select[data-v-3a0838c1],.form-group input[data-v-3a0838c1]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;box-sizing:border-box}.form-row[data-v-3a0838c1]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.preview-section[data-v-3a0838c1]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-top:20px}.preview-section h4[data-v-3a0838c1]{margin:0 0 16px;font-size:16px;color:#1a1a1a}.preview-info[data-v-3a0838c1]{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.info-item[data-v-3a0838c1]{display:flex;font-size:14px}.info-item .label[data-v-3a0838c1]{color:#6b7280;font-weight:500;min-width:140px}.info-item .value[data-v-3a0838c1]{color:#1a1a1a}.info-item .value.strong[data-v-3a0838c1]{font-weight:600;color:#2563eb}.mini-preview[data-v-3a0838c1]{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:16px;padding:12px;background:#fff;border-radius:6px}.preview-day[data-v-3a0838c1]{width:12px;height:12px;border-radius:2px}.preview-day.on[data-v-3a0838c1]{background:#10b981}.preview-day.off[data-v-3a0838c1]{background:#9ca3af}.preview-text[data-v-3a0838c1]{margin:0;font-size:14px;color:#374151;line-height:1.6}.preview-text strong[data-v-3a0838c1]{color:#1a1a1a;font-weight:600}.dialog-actions[data-v-3a0838c1]{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb}.btn-primary[data-v-3a0838c1]{background:#2563eb;color:#fff;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-primary[data-v-3a0838c1]:hover:not(:disabled){background:#1d4ed8}.btn-primary[data-v-3a0838c1]:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary[data-v-3a0838c1]{background:#f3f4f6;color:#374151;padding:10px 20px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-secondary[data-v-3a0838c1]:hover{background:#e5e7eb}.daily-planning-calendar[data-v-9f23010a]{padding:24px}.calendar-header[data-v-9f23010a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px;flex-wrap:wrap}.month-navigation[data-v-9f23010a]{display:flex;align-items:center;gap:16px}.month-navigation h3[data-v-9f23010a]{margin:0;font-size:20px;min-width:200px;text-align:center}.nav-btn[data-v-9f23010a]{background:#f3f4f6;border:1px solid #d1d5db;width:36px;height:36px;border-radius:6px;cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center}.nav-btn[data-v-9f23010a]:hover{background:#e5e7eb}.header-filters[data-v-9f23010a]{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.filter-item[data-v-9f23010a]{display:flex;align-items:center;gap:8px}.employee-search-wrapper[data-v-9f23010a],.employee-search[data-v-9f23010a]{position:relative}.employee-search-input[data-v-9f23010a]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;width:220px;background:#fff;outline:none}.employee-search-input[data-v-9f23010a]:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.employee-dropdown[data-v-9f23010a]{position:absolute;top:calc(100% + 4px);left:0;min-width:240px;max-height:260px;overflow-y:auto;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:1000}.employee-dropdown-item[data-v-9f23010a]{padding:9px 14px;font-size:13px;color:#1a1a1a;cursor:pointer;transition:background .1s}.employee-dropdown-item[data-v-9f23010a]:hover{background:#eff6ff;color:#2563eb}.employee-dropdown-empty[data-v-9f23010a]{padding:10px 14px;font-size:13px;color:#9ca3af}.filter-item label[data-v-9f23010a]{font-size:13px;color:#6b7280;white-space:nowrap}.filter-item select[data-v-9f23010a]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;min-width:160px;font-size:13px}.employee-selector[data-v-9f23010a]{display:flex;align-items:center;gap:12px}.employee-selector select[data-v-9f23010a]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;min-width:200px}.header-actions[data-v-9f23010a]{display:flex;gap:8px;align-items:center}.btn-export[data-v-9f23010a]{background:#fff;color:#374151;padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px}.btn-export[data-v-9f23010a]:hover{background:#f3f4f6}.btn-apply[data-v-9f23010a]{background:#2563eb;color:#fff;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-apply[data-v-9f23010a]:hover{background:#1d4ed8}.calendar-legend[data-v-9f23010a]{display:flex;gap:24px;margin-bottom:20px;padding:12px;background:#f9fafb;border-radius:6px}.legend-item[data-v-9f23010a]{display:flex;align-items:center;gap:8px;font-size:14px}.color-box[data-v-9f23010a]{width:24px;height:24px;border-radius:4px;border:1px solid #d1d5db;background:#fff}.color-box.offshore[data-v-9f23010a]{background:#10b981}.color-box.onshore[data-v-9f23010a]{background:#3b82f6}.color-box.off[data-v-9f23010a]{background:#9ca3af}.color-box.leave[data-v-9f23010a]{background:#f59e0b}.color-box.sick[data-v-9f23010a]{background:#ef4444}.color-box.training[data-v-9f23010a]{background:#8b5cf6}.color-box.travel[data-v-9f23010a]{background:#06b6d4}.calendar-grid[data-v-9f23010a]{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.weekday-header[data-v-9f23010a]{text-align:center;font-weight:600;color:#6b7280;padding:8px;font-size:14px}.calendar-day[data-v-9f23010a]{aspect-ratio:1;border:1px solid #e5e7eb;border-radius:6px;padding:8px;position:relative;background:#fff}.calendar-day.other-month[data-v-9f23010a]{opacity:.3}.calendar-day.today[data-v-9f23010a]{border-color:#2563eb;border-width:2px}.day-number[data-v-9f23010a]{font-size:12px;color:#6b7280;font-weight:500;margin-bottom:4px}.day-content[data-v-9f23010a]{border-radius:4px;padding:8px;cursor:pointer;transition:transform .2s;height:calc(100% - 20px);display:flex;flex-direction:column;align-items:center;justify-content:center}.day-content[data-v-9f23010a]:hover{transform:scale(1.05)}.day-content.offshore[data-v-9f23010a]{background:#10b981;color:#fff}.day-content.onshore[data-v-9f23010a]{background:#3b82f6;color:#fff}.day-content.off[data-v-9f23010a]{background:#9ca3af;color:#fff}.day-content.leave[data-v-9f23010a]{background:#f59e0b;color:#fff}.day-content.sick[data-v-9f23010a]{background:#ef4444;color:#fff}.day-content.training[data-v-9f23010a]{background:#8b5cf6;color:#fff}.day-content.travel[data-v-9f23010a]{background:#06b6d4;color:#fff}.day-content.scheduled[data-v-9f23010a]{background:#10b981;color:#fff}.day-content.cancelled[data-v-9f23010a]{background:#ef4444;color:#fff}.day-content.empty[data-v-9f23010a]{background:#f9fafb;border:2px dashed #d1d5db}.day-content.empty[data-v-9f23010a]:hover{background:#f3f4f6}.add-icon[data-v-9f23010a]{font-size:24px;color:#9ca3af}.status-label[data-v-9f23010a]{font-weight:600;font-size:14px}.site-label[data-v-9f23010a]{font-size:11px;margin-top:4px;opacity:.9}.loading[data-v-9f23010a],.empty-message[data-v-9f23010a]{text-align:center;padding:60px 20px;color:#6b7280}.edit-dialog-overlay[data-v-9f23010a]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.edit-dialog[data-v-9f23010a]{background:#fff;border-radius:12px;width:100%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a}.dialog-header[data-v-9f23010a]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.dialog-header h3[data-v-9f23010a]{margin:0;font-size:18px}.btn-close[data-v-9f23010a]{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px}.dialog-content[data-v-9f23010a]{padding:24px}.form-group[data-v-9f23010a]{margin-bottom:20px}.form-group label[data-v-9f23010a]{display:block;margin-bottom:6px;font-weight:500;color:#374151;font-size:14px}.form-group select[data-v-9f23010a],.form-group textarea[data-v-9f23010a]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;box-sizing:border-box}.form-group input[type=checkbox][data-v-9f23010a]{margin-right:8px}.dialog-actions[data-v-9f23010a]{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb}.btn-primary[data-v-9f23010a]{background:#2563eb;color:#fff;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-primary[data-v-9f23010a]:hover{background:#1d4ed8}.btn-secondary[data-v-9f23010a]{background:#f3f4f6;color:#374151;padding:10px 20px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px}.btn-secondary[data-v-9f23010a]:hover{background:#e5e7eb}.btn-danger[data-v-9f23010a]{background:#ef4444;color:#fff;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;margin-right:auto}.btn-danger[data-v-9f23010a]:hover{background:#dc2626}.forecast-table-wrapper[data-v-f0714e72]{overflow-x:auto}.forecast-table[data-v-f0714e72]{width:100%;border-collapse:collapse;font-size:14px}.forecast-table thead tr[data-v-f0714e72]{background:#f9fafb;border-bottom:2px solid #e5e7eb}.forecast-table th[data-v-f0714e72]{padding:12px 20px;text-align:left;font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.forecast-table th[data-v-f0714e72]:nth-child(3),.forecast-table th[data-v-f0714e72]:nth-child(4),.forecast-table th[data-v-f0714e72]:nth-child(5){text-align:right}.forecast-table tbody tr[data-v-f0714e72]{border-bottom:1px solid #f3f4f6;transition:background .15s}.forecast-table tbody tr[data-v-f0714e72]:hover{background:#f9fafb}.forecast-table tbody tr[data-v-f0714e72]:last-child{border-bottom:none}.forecast-table td[data-v-f0714e72]{padding:14px 20px;color:#1a1a1a}.cell-name[data-v-f0714e72]{font-weight:500}.cell-role[data-v-f0714e72]{color:#6b7280}.cell-rate[data-v-f0714e72],.cell-days[data-v-f0714e72],.cell-forecast[data-v-f0714e72]{text-align:right;font-variant-numeric:tabular-nums}.forecast-value[data-v-f0714e72]{color:#1a1a1a;font-weight:500}.no-rate[data-v-f0714e72]{color:#d1d5db}.forecast-table tfoot .total-row[data-v-f0714e72]{background:#f0f7ff;border-top:2px solid #bfdbfe}.forecast-table tfoot td[data-v-f0714e72]{padding:14px 20px}.total-value[data-v-f0714e72]{color:#2563eb;font-size:15px}.forecast-reporting[data-v-dca67581]{padding:24px}.filters-bar[data-v-dca67581]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px;margin-bottom:24px}.filter-group[data-v-dca67581]{display:flex;flex-direction:column;gap:6px}.employee-search-wrapper[data-v-dca67581],.employee-search[data-v-dca67581]{position:relative}.employee-search-input[data-v-dca67581]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;width:220px;background:#fff;outline:none}.employee-search-input[data-v-dca67581]:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.employee-dropdown[data-v-dca67581]{position:absolute;top:calc(100% + 4px);left:0;min-width:240px;max-height:260px;overflow-y:auto;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:1000}.employee-dropdown-item[data-v-dca67581]{padding:9px 14px;font-size:13px;color:#1a1a1a;cursor:pointer;transition:background .1s}.employee-dropdown-item[data-v-dca67581]:hover,.employee-dropdown-item.selected[data-v-dca67581]{background:#eff6ff;color:#2563eb}.employee-dropdown-empty[data-v-dca67581]{padding:10px 14px;font-size:13px;color:#9ca3af}.filter-group label[data-v-dca67581]{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.filter-group select[data-v-dca67581],.filter-group input[type=date][data-v-dca67581]{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;background:#fff;min-width:140px;cursor:pointer}.filter-group select[data-v-dca67581]:focus,.filter-group input[type=date][data-v-dca67581]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.btn-primary[data-v-dca67581]{padding:9px 20px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s;align-self:flex-end}.btn-primary[data-v-dca67581]:hover:not(:disabled){background:#1d4ed8}.btn-primary[data-v-dca67581]:disabled{opacity:.6;cursor:not-allowed}.btn-export[data-v-dca67581]{padding:9px 20px;background:#fff;color:#16a34a;border:1.5px solid #16a34a;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,color .2s;align-self:flex-end}.btn-export[data-v-dca67581]:hover{background:#f0fdf4}.error-message[data-v-dca67581]{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:8px;padding:12px 16px;margin-bottom:16px;font-size:14px}.empty-state[data-v-dca67581]{text-align:center;padding:60px 24px;color:#9ca3af}.empty-icon[data-v-dca67581]{font-size:48px;margin-bottom:12px}.empty-state p[data-v-dca67581]{font-size:16px;margin:0}.report-container[data-v-dca67581]{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.report-header[data-v-dca67581]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb;flex-wrap:wrap;gap:16px}.period-label .period-text[data-v-dca67581]{font-size:16px;font-weight:600;color:#1a1a1a}.summary-cards[data-v-dca67581]{display:flex;gap:16px}.summary-card[data-v-dca67581]{display:flex;flex-direction:column;align-items:center;padding:12px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:120px}.summary-card.highlight[data-v-dca67581]{background:#eff6ff;border-color:#bfdbfe}.card-label[data-v-dca67581]{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.card-value[data-v-dca67581]{font-size:20px;font-weight:700;color:#1a1a1a}.summary-card.highlight .card-value[data-v-dca67581]{color:#2563eb}.no-data[data-v-dca67581]{padding:40px 24px;text-align:center;color:#6b7280;font-size:15px}.unified-table-wrapper[data-v-dca67581]{overflow-x:auto}.unified-table[data-v-dca67581]{width:100%;border-collapse:collapse;font-size:14px}.unified-table thead tr[data-v-dca67581]{background:#f9fafb;border-bottom:2px solid #e5e7eb}.unified-table th[data-v-dca67581]{padding:12px 20px;text-align:left;font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.col-employee[data-v-dca67581]{width:30%}.col-role[data-v-dca67581]{width:25%}.col-rate[data-v-dca67581],.col-days[data-v-dca67581],.col-forecast[data-v-dca67581]{width:15%;text-align:right}.unified-table th.col-rate[data-v-dca67581],.unified-table th.col-days[data-v-dca67581],.unified-table th.col-forecast[data-v-dca67581]{text-align:right}.group-header-row[data-v-dca67581]{background:#f3f4f6;border-top:2px solid #e5e7eb}.group-header-label[data-v-dca67581]{padding:10px 20px;font-size:14px;font-weight:700;color:#1a1a1a}.group-header-total[data-v-dca67581]{padding:10px 20px;font-size:14px;font-weight:700;color:#2563eb;text-align:right}.data-row[data-v-dca67581]{border-bottom:1px solid #f3f4f6;transition:background .15s}.data-row[data-v-dca67581]:hover{background:#f9fafb}.unified-table td[data-v-dca67581]{padding:12px 20px;color:#1a1a1a}.unified-table .cell-name[data-v-dca67581]{font-weight:500}.unified-table .cell-role[data-v-dca67581]{color:#6b7280}.unified-table .cell-rate[data-v-dca67581],.unified-table .cell-days[data-v-dca67581],.unified-table .cell-forecast[data-v-dca67581]{text-align:right;font-variant-numeric:tabular-nums}.forecast-value[data-v-dca67581]{font-weight:500}.no-rate[data-v-dca67581]{color:#d1d5db}.unified-table tfoot .total-row[data-v-dca67581]{background:#f0f7ff;border-top:2px solid #bfdbfe}.unified-table tfoot td[data-v-dca67581]{padding:14px 20px}.total-value[data-v-dca67581]{color:#2563eb;font-size:15px}.rotation-management-view[data-v-d8a3ea66]{min-height:100vh;background:#f9fafb}.page-header[data-v-d8a3ea66]{background:#fff;border-bottom:1px solid #e5e7eb;padding:32px 24px}.page-header h1[data-v-d8a3ea66]{margin:0 0 8px;font-size:32px;color:#1a1a1a;font-weight:700}.page-description[data-v-d8a3ea66]{margin:0;color:#6b7280;font-size:16px}.tabs[data-v-d8a3ea66]{display:flex;gap:4px;padding:0 24px;background:#fff;border-bottom:1px solid #e5e7eb}.tab[data-v-d8a3ea66]{background:none;border:none;padding:16px 24px;font-size:15px;font-weight:500;color:#6b7280;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s}.tab[data-v-d8a3ea66]:hover{color:#1a1a1a;background:#f9fafb}.tab.active[data-v-d8a3ea66]{color:#2563eb;border-bottom-color:#2563eb}.tab-content[data-v-d8a3ea66]{min-height:calc(100vh - 180px)}.employee-planning-view[data-v-fa75d0b6]{min-height:100vh;background:#f9fafb}.page-header[data-v-fa75d0b6]{background:#fff;border-bottom:1px solid #e5e7eb;padding:24px}.header-content[data-v-fa75d0b6]{max-width:1400px;margin:0 auto}.btn-back[data-v-fa75d0b6]{background:#f3f4f6;border:1px solid #d1d5db;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;color:#374151;margin-bottom:16px}.btn-back[data-v-fa75d0b6]:hover{background:#e5e7eb}.employee-info h1[data-v-fa75d0b6]{margin:0 0 8px;font-size:28px;color:#1a1a1a;font-weight:700}.employee-details[data-v-fa75d0b6]{display:flex;gap:16px;color:#6b7280;font-size:14px}.detail-item[data-v-fa75d0b6]:before{content:"•";margin:0 8px 0 0}.detail-item[data-v-fa75d0b6]:first-child:before{content:"";margin:0}.content-container[data-v-fa75d0b6]{max-width:1400px;margin:0 auto;padding:24px}.controls-bar[data-v-fa75d0b6]{background:#fff;border-radius:8px;padding:20px;margin-bottom:24px;border:1px solid #e5e7eb}.date-selector[data-v-fa75d0b6]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.date-selector label[data-v-fa75d0b6]{font-weight:500;color:#374151}.date-selector input[data-v-fa75d0b6]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.btn-load[data-v-fa75d0b6]{background:#2563eb;color:#fff;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-load[data-v-fa75d0b6]:hover{background:#1d4ed8}.quick-periods[data-v-fa75d0b6]{display:flex;gap:8px}.btn-period[data-v-fa75d0b6]{background:#f3f4f6;border:1px solid #d1d5db;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px;color:#374151}.btn-period[data-v-fa75d0b6]:hover{background:#e5e7eb}.loading[data-v-fa75d0b6],.error-message[data-v-fa75d0b6],.empty-message[data-v-fa75d0b6]{text-align:center;padding:40px 20px;color:#6b7280}.error-message[data-v-fa75d0b6]{color:#dc2626}.planning-content[data-v-fa75d0b6]{display:flex;flex-direction:column;gap:24px}.stats-cards[data-v-fa75d0b6]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.stat-card[data-v-fa75d0b6]{background:#fff;border-radius:8px;padding:20px;border:1px solid #e5e7eb;display:flex;align-items:center;gap:16px}.stat-card.on[data-v-fa75d0b6]{border-left:4px solid #10b981}.stat-card.off[data-v-fa75d0b6]{border-left:4px solid #9ca3af}.stat-card.total[data-v-fa75d0b6]{border-left:4px solid #3b82f6}.stat-card.ratio[data-v-fa75d0b6]{border-left:4px solid #8b5cf6}.stat-icon[data-v-fa75d0b6]{font-size:32px}.stat-info[data-v-fa75d0b6]{flex:1}.stat-value[data-v-fa75d0b6]{font-size:32px;font-weight:700;color:#1a1a1a;line-height:1;margin-bottom:4px}.stat-label[data-v-fa75d0b6]{font-size:14px;color:#6b7280}.timeline-section[data-v-fa75d0b6],.allocations-section[data-v-fa75d0b6]{background:#fff;border-radius:8px;padding:24px;border:1px solid #e5e7eb}.timeline-section h2[data-v-fa75d0b6],.allocations-section h2[data-v-fa75d0b6]{margin:0 0 20px;font-size:20px;color:#1a1a1a}.timeline-calendar[data-v-fa75d0b6]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.day-item[data-v-fa75d0b6]{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;transition:box-shadow .2s}.day-item[data-v-fa75d0b6]:hover{box-shadow:0 4px 6px -1px #0000001a}.day-item.scheduled[data-v-fa75d0b6]{border-left:4px solid #10b981}.day-item.off[data-v-fa75d0b6]{border-left:4px solid #9ca3af}.day-item.cancelled[data-v-fa75d0b6]{border-left:4px solid #ef4444}.day-date[data-v-fa75d0b6]{background:#f9fafb;padding:12px;display:flex;align-items:center;gap:8px}.day-number[data-v-fa75d0b6]{font-size:24px;font-weight:700;color:#1a1a1a}.day-name[data-v-fa75d0b6],.month-name[data-v-fa75d0b6]{font-size:12px;color:#6b7280;text-transform:uppercase}.day-details[data-v-fa75d0b6]{padding:12px}.status-badge[data-v-fa75d0b6]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;margin-bottom:8px}.status-badge.scheduled[data-v-fa75d0b6]{background:#d1fae5;color:#065f46}.status-badge.off[data-v-fa75d0b6]{background:#e5e7eb;color:#374151}.status-badge.cancelled[data-v-fa75d0b6]{background:#fee2e2;color:#991b1b}.assignment-info[data-v-fa75d0b6]{margin-top:8px}.info-row[data-v-fa75d0b6]{display:flex;gap:8px;margin-bottom:4px;font-size:14px}.info-row .label[data-v-fa75d0b6]{color:#6b7280;font-weight:500}.info-row .value[data-v-fa75d0b6]{color:#1a1a1a}.assignment-notes[data-v-fa75d0b6]{margin-top:8px;font-size:13px}.assignment-notes .label[data-v-fa75d0b6]{color:#6b7280;font-weight:500;display:block;margin-bottom:4px}.assignment-notes p[data-v-fa75d0b6]{margin:0;color:#374151;font-style:italic}.override-badge[data-v-fa75d0b6]{margin-top:8px;padding:4px 8px;background:#fef3c7;color:#92400e;font-size:11px;border-radius:4px;display:inline-block}.allocations-list[data-v-fa75d0b6]{display:flex;flex-direction:column;gap:12px}.allocation-card[data-v-fa75d0b6]{border:1px solid #e5e7eb;border-radius:6px;padding:16px}.allocation-header[data-v-fa75d0b6]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.allocation-header h3[data-v-fa75d0b6]{margin:0;font-size:16px;color:#1a1a1a}.allocation-dates[data-v-fa75d0b6]{font-size:13px;color:#6b7280}.allocation-body[data-v-fa75d0b6]{display:flex;flex-direction:column;gap:8px}.allocation-detail[data-v-fa75d0b6]{display:flex;gap:8px;font-size:14px}.allocation-detail .label[data-v-fa75d0b6]{color:#6b7280;font-weight:500;min-width:80px}.allocation-detail .value[data-v-fa75d0b6]{color:#1a1a1a}.import-wizard[data-v-2933f29c]{display:flex;flex-direction:column;gap:24px}.steps-bar[data-v-2933f29c]{display:flex;align-items:center}.step[data-v-2933f29c]{display:flex;align-items:center;gap:6px}.step-line[data-v-2933f29c]{flex:1;height:2px;background:#e5e7eb;min-width:20px;margin:0 6px}.step-line.done[data-v-2933f29c]{background:#16a34a}.step-circle[data-v-2933f29c]{width:28px;height:28px;border-radius:50%;border:2px solid #d1d5db;background:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#9ca3af;flex-shrink:0}.step.active .step-circle[data-v-2933f29c]{border-color:#2563eb;color:#2563eb}.step.done .step-circle[data-v-2933f29c]{border-color:#16a34a;background:#16a34a;color:#fff}.step-label[data-v-2933f29c]{font-size:12px;font-weight:500;color:#9ca3af;white-space:nowrap}.step.active .step-label[data-v-2933f29c]{color:#2563eb}.step.done .step-label[data-v-2933f29c]{color:#16a34a}.step-content[data-v-2933f29c]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:24px}.step-content h3[data-v-2933f29c]{font-size:16px;font-weight:700;color:#111827;margin:0 0 6px}.step-desc[data-v-2933f29c]{font-size:14px;color:#6b7280;margin:0 0 20px;line-height:1.5}.drop-zone[data-v-2933f29c]{border:2px dashed #d1d5db;border-radius:8px;padding:40px 24px;text-align:center;cursor:pointer;transition:all .2s;background:#fff}.drop-zone[data-v-2933f29c]:hover,.drop-zone.drag-over[data-v-2933f29c]{border-color:#2563eb;background:#eff6ff}.drop-icon[data-v-2933f29c]{font-size:36px;margin-bottom:10px}.drop-zone p[data-v-2933f29c]{margin:0 0 4px;font-size:14px;color:#374151}.drop-hint[data-v-2933f29c]{font-size:12px;color:#9ca3af}.file-chip[data-v-2933f29c]{display:flex;align-items:center;justify-content:space-between;background:#f0fdf4;border:1px solid #86efac;border-radius:6px;padding:8px 14px;margin-top:12px;font-size:14px;color:#166534;font-weight:500}.btn-ghost[data-v-2933f29c]{background:none;border:none;cursor:pointer;color:#6b7280;font-size:16px;padding:0 4px}.two-col[data-v-2933f29c]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group[data-v-2933f29c]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-2933f29c]{font-size:14px;font-weight:600;color:#374151}.form-group input[data-v-2933f29c]{padding:9px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff}.form-group small[data-v-2933f29c]{font-size:12px;color:#6b7280}.req[data-v-2933f29c]{color:#dc2626}.mapping-table[data-v-2933f29c]{display:flex;flex-direction:column;gap:2px;margin-bottom:20px}.mapping-header[data-v-2933f29c]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:8px 12px;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.mapping-row[data-v-2933f29c]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;align-items:center;padding:10px 12px;border-radius:6px;background:#fff;border:1px solid #f3f4f6}.row-required[data-v-2933f29c]{border-left:3px solid #2563eb}.field-info[data-v-2933f29c]{display:flex;align-items:center;gap:8px}.field-label[data-v-2933f29c]{font-size:13px;font-weight:500;color:#111827}.badge-req[data-v-2933f29c]{font-size:10px;font-weight:700;text-transform:uppercase;background:#dbeafe;color:#1d4ed8;padding:1px 5px;border-radius:3px}.col-select[data-v-2933f29c]{width:100%;padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff}.preview-val[data-v-2933f29c]{font-size:12px;color:#6b7280;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-check[data-v-2933f29c]{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;font-weight:500;color:#111827;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:12px 16px}.confirm-check input[type=checkbox][data-v-2933f29c]{width:16px;height:16px;cursor:pointer}.preview-scroll[data-v-2933f29c]{overflow-x:auto;border:1px solid #e5e7eb;border-radius:6px}.preview-table[data-v-2933f29c]{width:100%;border-collapse:collapse;font-size:13px}.preview-table th[data-v-2933f29c]{background:#f3f4f6;padding:9px 12px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;white-space:nowrap}.preview-table td[data-v-2933f29c]{padding:8px 12px;color:#374151;border-bottom:1px solid #f3f4f6;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-num[data-v-2933f29c]{color:#9ca3af;font-size:12px}.tr-dup td[data-v-2933f29c]{background:#fffbeb}.badge-new[data-v-2933f29c]{font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;background:#d1fae5;color:#065f46}.badge-dup[data-v-2933f29c]{font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;background:#fef3c7;color:#92400e}.badge-warn[data-v-2933f29c]{font-size:12px;font-weight:600;padding:2px 8px;border-radius:10px;background:#fef3c7;color:#92400e;margin-left:8px}.more-rows[data-v-2933f29c]{font-size:13px;color:#6b7280;text-align:center;padding:8px 0 0}.import-summary[data-v-2933f29c]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px 20px;margin-bottom:20px;display:flex;flex-direction:column;gap:10px}.summary-row[data-v-2933f29c]{display:flex;justify-content:space-between;font-size:14px;color:#374151}.warn-text[data-v-2933f29c]{color:#d97706}.green-text[data-v-2933f29c]{color:#16a34a}.btn-import[data-v-2933f29c]{width:100%;padding:14px;background:#16a34a;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s}.btn-import[data-v-2933f29c]:hover:not(:disabled){background:#15803d}.btn-import[data-v-2933f29c]:disabled{background:#9ca3af;cursor:not-allowed}.result-box[data-v-2933f29c]{border-radius:8px;padding:20px;border:1px solid}.result-ok[data-v-2933f29c]{background:#f0fdf4;border-color:#86efac}.result-warn[data-v-2933f29c]{background:#fffbeb;border-color:#fde68a}.result-box h4[data-v-2933f29c]{font-size:16px;font-weight:700;margin:0 0 16px;color:#111827}.result-stats[data-v-2933f29c]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.stat-card[data-v-2933f29c]{display:flex;flex-direction:column;align-items:center;padding:12px;border-radius:6px;background:#fff;border:1px solid #e5e7eb}.stat-num[data-v-2933f29c]{font-size:22px;font-weight:700}.stat-lbl[data-v-2933f29c]{font-size:11px;color:#6b7280;margin-top:2px}.stat-card.green .stat-num[data-v-2933f29c]{color:#16a34a}.stat-card.blue .stat-num[data-v-2933f29c]{color:#2563eb}.stat-card.gray .stat-num[data-v-2933f29c]{color:#6b7280}.stat-card.red .stat-num[data-v-2933f29c]{color:#dc2626}.err-list[data-v-2933f29c]{font-size:13px;color:#374151}.err-list ul[data-v-2933f29c]{margin:6px 0 0;padding-left:18px}.err-list li[data-v-2933f29c]{margin:3px 0}.wizard-nav[data-v-2933f29c]{display:flex;justify-content:space-between;gap:12px}.btn-primary[data-v-2933f29c]{padding:10px 28px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary[data-v-2933f29c]:hover:not(:disabled){background:#1d4ed8}.btn-primary[data-v-2933f29c]:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary[data-v-2933f29c]{padding:10px 24px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-secondary[data-v-2933f29c]:hover:not(:disabled){background:#e5e7eb}.btn-secondary[data-v-2933f29c]:disabled{opacity:.5;cursor:not-allowed}.alert-error[data-v-2933f29c]{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b;padding:10px 14px;border-radius:6px;font-size:14px;margin-top:12px}.modal-overlay[data-v-2933f29c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:9999}.modal-card[data-v-2933f29c]{background:#fff;border-radius:12px;padding:28px 32px;max-width:460px;width:100%;box-shadow:0 20px 60px #00000040}.modal-card h3[data-v-2933f29c]{font-size:18px;font-weight:700;color:#111827;margin:0 0 12px}.modal-card p[data-v-2933f29c]{font-size:14px;color:#374151;margin:0 0 12px;line-height:1.5}.modal-detail[data-v-2933f29c]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:10px 14px;font-size:13px;color:#4b5563;margin-bottom:12px;display:flex;flex-direction:column;gap:4px}.modal-detail code[data-v-2933f29c]{background:#e5e7eb;padding:1px 5px;border-radius:3px;font-family:monospace}.modal-actions[data-v-2933f29c]{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.btn-danger[data-v-2933f29c]{padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-danger[data-v-2933f29c]:hover{background:#b91c1c}.advanced-tools-view[data-v-341fff82]{padding:24px;max-width:1600px;margin:0 auto}.page-header[data-v-341fff82]{margin-bottom:32px}.page-header h1[data-v-341fff82]{font-size:32px;font-weight:700;color:#1a1a1a;margin:0 0 8px}.page-header p[data-v-341fff82]{color:#6b7280;font-size:16px;margin:0}.tools-grid[data-v-341fff82]{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:24px}.tool-section[data-v-341fff82]{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.section-header[data-v-341fff82]{background:linear-gradient(135deg,#1e3a5f,#2563eb);color:#fff;padding:20px 24px}.section-header--blue[data-v-341fff82]{background:linear-gradient(135deg,#0f4c81,#1d72b8)}.project-import-section[data-v-341fff82]{grid-column:1 / -1}.section-header h2[data-v-341fff82]{font-size:20px;font-weight:600;margin:0 0 4px}.section-header p[data-v-341fff82]{margin:0;opacity:.9;font-size:14px}.tool-card[data-v-341fff82]{padding:24px;border-bottom:1px solid #e5e7eb}.tool-card[data-v-341fff82]:last-child{border-bottom:none}.tool-card h3[data-v-341fff82]{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.form-group[data-v-341fff82]{margin-bottom:16px}.form-group label[data-v-341fff82]{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input[data-v-341fff82],.form-group select[data-v-341fff82]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.form-group select[multiple][data-v-341fff82]{min-height:150px}.form-group small[data-v-341fff82]{display:block;margin-top:4px;font-size:12px;color:#6b7280}.form-row[data-v-341fff82]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.checkbox-label[data-v-341fff82]{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox][data-v-341fff82]{width:auto}.btn-primary[data-v-341fff82],.btn-secondary[data-v-341fff82]{width:100%;padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;margin-top:8px}.btn-primary[data-v-341fff82]{background:#667eea;color:#fff}.btn-primary[data-v-341fff82]:hover:not(:disabled){background:#5568d3}.btn-primary[data-v-341fff82]:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary[data-v-341fff82]{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.btn-secondary[data-v-341fff82]:hover{background:#e5e7eb}.info-box[data-v-341fff82]{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:16px;margin-bottom:16px}.info-box p[data-v-341fff82]{margin:0 0 8px;font-size:14px;color:#1e40af}.info-box ul[data-v-341fff82]{margin:0;padding-left:20px;font-size:13px;color:#1e3a8a}.info-box li[data-v-341fff82]{margin:4px 0}.result-box[data-v-341fff82]{margin-top:20px;padding:16px;border-radius:6px;border:1px solid}.result-box.success[data-v-341fff82]{background:#f0fdf4;border-color:#86efac}.result-box.error[data-v-341fff82]{background:#fef2f2;border-color:#fca5a5}.result-box h4[data-v-341fff82]{margin:0 0 12px;font-size:16px}.result-box p[data-v-341fff82]{margin:0;font-size:14px}.validation-summary[data-v-341fff82]{display:flex;gap:12px;margin:12px 0}.badge[data-v-341fff82]{padding:4px 12px;border-radius:12px;font-size:13px;font-weight:600}.badge.error[data-v-341fff82]{background:#fee2e2;color:#991b1b}.badge.warning[data-v-341fff82]{background:#fef3c7;color:#92400e}.badge.info[data-v-341fff82]{background:#dbeafe;color:#1e40af}.issues-list[data-v-341fff82]{margin-top:16px}.issue-item[data-v-341fff82]{padding:12px;margin-bottom:8px;border-radius:6px;border-left:4px solid}.issue-item.error[data-v-341fff82]{background:#fef2f2;border-color:#dc2626}.issue-item.warning[data-v-341fff82]{background:#fffbeb;border-color:#f59e0b}.issue-item.info[data-v-341fff82]{background:#eff6ff;border-color:#3b82f6}.issue-header[data-v-341fff82]{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.issue-type[data-v-341fff82]{font-weight:600;font-size:13px}.issue-severity[data-v-341fff82]{font-size:11px;text-transform:uppercase;font-weight:600;opacity:.7}.issue-item p[data-v-341fff82]{margin:0 0 6px;font-size:14px}.issue-date[data-v-341fff82],.issue-dates[data-v-341fff82]{font-size:12px;color:#6b7280}.error-list[data-v-341fff82]{margin-top:12px}.error-list h5[data-v-341fff82]{font-size:14px;font-weight:600;margin:0 0 8px}.error-list ul[data-v-341fff82]{margin:0;padding-left:20px;font-size:13px}.error-list li[data-v-341fff82]{margin:4px 0}.site-daily-planning-view[data-v-f202f231]{padding:24px;max-width:1600px;margin:0 auto}.page-header[data-v-f202f231]{margin-bottom:24px}.page-header h1[data-v-f202f231]{font-size:32px;font-weight:700;color:#1a1a1a;margin:0 0 8px}.page-header p[data-v-f202f231]{font-size:16px;color:#6b7280;margin:0}.controls[data-v-f202f231]{display:flex;gap:24px;margin-bottom:24px;flex-wrap:wrap;align-items:center}.site-selector[data-v-f202f231]{display:flex;gap:12px;align-items:center}.site-selector label[data-v-f202f231]{font-size:14px;font-weight:600;color:#374151}.site-select[data-v-f202f231]{padding:10px 16px;border:2px solid #667eea;border-radius:8px;font-size:15px;font-weight:500;min-width:300px;background:#fff}.date-controls[data-v-f202f231]{display:flex;gap:8px;align-items:center}.nav-btn[data-v-f202f231]{padding:8px 16px;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:18px;font-weight:600}.nav-btn[data-v-f202f231]:hover{background:#f3f4f6}.date-input[data-v-f202f231]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.today-btn[data-v-f202f231]{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.today-btn[data-v-f202f231]:hover{background:#5568d3}.action-controls[data-v-f202f231]{display:flex;gap:8px;margin-left:auto}.btn-secondary[data-v-f202f231]{padding:8px 16px;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-secondary[data-v-f202f231]:hover:not(:disabled){background:#f3f4f6}.btn-secondary[data-v-f202f231]:disabled{opacity:.5;cursor:not-allowed}.no-selection[data-v-f202f231]{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:60px}.empty-state[data-v-f202f231]{text-align:center;max-width:400px;margin:0 auto}.empty-icon[data-v-f202f231]{font-size:64px;margin-bottom:16px}.empty-state h3[data-v-f202f231]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.empty-state p[data-v-f202f231]{font-size:14px;color:#6b7280;margin:0}.site-info-card[data-v-f202f231]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;padding:24px;margin-bottom:24px}.site-header[data-v-f202f231]{display:flex;justify-content:space-between;align-items:start;gap:24px}.site-details h2[data-v-f202f231]{font-size:28px;font-weight:700;margin:0 0 12px}.site-meta[data-v-f202f231]{display:flex;gap:16px;flex-wrap:wrap}.meta-item[data-v-f202f231]{font-size:14px;opacity:.9}.date-display[data-v-f202f231]{text-align:right}.date-display h3[data-v-f202f231]{font-size:20px;font-weight:600;margin:0 0 12px}.site-stats[data-v-f202f231]{display:flex;gap:16px;justify-content:flex-end}.stat[data-v-f202f231]{font-size:14px;opacity:.9}.stat strong[data-v-f202f231]{font-size:20px;font-weight:700;margin-right:4px}.loading[data-v-f202f231],.error-message[data-v-f202f231]{background:#fff;padding:40px;text-align:center;border-radius:12px;border:1px solid #e5e7eb}.error-message[data-v-f202f231]{color:#dc2626}.assignments-section[data-v-f202f231]{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:24px;margin-bottom:24px}.assignments-section h3[data-v-f202f231]{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.no-assignments[data-v-f202f231]{text-align:center;padding:40px;color:#6b7280}.assignments-table[data-v-f202f231]{width:100%;border-collapse:collapse}.assignments-table thead[data-v-f202f231]{background:#f9fafb}.assignments-table th[data-v-f202f231]{padding:12px;text-align:left;font-size:13px;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.assignments-table tbody tr[data-v-f202f231]{border-bottom:1px solid #e5e7eb}.assignments-table tbody tr[data-v-f202f231]:hover{background:#f9fafb}.assignments-table td[data-v-f202f231]{padding:12px;font-size:14px}.employee-cell[data-v-f202f231]{display:flex;flex-direction:column;gap:2px}.employee-name[data-v-f202f231]{font-weight:600;color:#1a1a1a}.employee-code[data-v-f202f231]{font-size:12px;color:#6b7280}.status-badge[data-v-f202f231]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:600}.status-badge.status-scheduled[data-v-f202f231]{background:#d1fae5;color:#065f46}.status-badge.status-off[data-v-f202f231]{background:#f3f4f6;color:#374151}.status-badge.status-leave[data-v-f202f231]{background:#fef3c7;color:#92400e}.status-badge.status-sick[data-v-f202f231]{background:#fee2e2;color:#991b1b}.rotation-info[data-v-f202f231],.notes[data-v-f202f231]{font-size:13px;color:#6b7280}.no-value[data-v-f202f231]{color:#9ca3af;font-size:13px}.actions-cell[data-v-f202f231]{text-align:center}.btn-icon[data-v-f202f231]{background:none;border:none;cursor:pointer;padding:4px 8px;font-size:16px}.btn-icon[data-v-f202f231]:hover{opacity:.7}.summary-section[data-v-f202f231]{margin-top:24px}.summary-grid[data-v-f202f231]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.summary-card[data-v-f202f231]{background:#fff;padding:20px;border-radius:12px;border:1px solid #e5e7eb}.summary-card h4[data-v-f202f231]{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 16px}.summary-list[data-v-f202f231]{display:flex;flex-direction:column;gap:8px}.summary-item[data-v-f202f231]{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f3f4f6}.summary-item[data-v-f202f231]:last-child{border-bottom:none}.summary-item span[data-v-f202f231]{font-size:14px;color:#374151}.summary-item strong[data-v-f202f231]{font-size:16px;font-weight:700;color:#667eea}.no-data[data-v-f202f231]{color:#9ca3af;font-size:13px;text-align:center;padding:12px 0}.daily-employee-calendar[data-v-c7ba2b05]{padding:24px}.calendar-header[data-v-c7ba2b05]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:20px;flex-wrap:wrap}.calendar-header h2[data-v-c7ba2b05]{margin:0;font-size:24px;color:#1a1a1a}.controls[data-v-c7ba2b05]{display:flex;flex-direction:column;gap:12px}.controls-row[data-v-c7ba2b05]{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.month-selector[data-v-c7ba2b05]{display:flex;align-items:center;gap:8px}.month-selector select[data-v-c7ba2b05]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.year-selector[data-v-c7ba2b05]{display:flex;align-items:center;gap:8px}.year-selector label[data-v-c7ba2b05]{font-size:14px;font-weight:500;color:#374151}.year-selector input[data-v-c7ba2b05]{width:100px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.filter-group[data-v-c7ba2b05]{display:flex;align-items:center;gap:8px}.filter-group label[data-v-c7ba2b05]{font-size:14px;font-weight:500;color:#374151}.filter-group select[data-v-c7ba2b05]{min-width:150px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.employee-search-wrap[data-v-c7ba2b05]{position:relative;display:inline-flex;align-items:center;gap:0}.search-input[data-v-c7ba2b05]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px 0 0 6px;border-right:none;font-size:14px;min-width:180px}.search-input[data-v-c7ba2b05]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.emp-dropdown-toggle[data-v-c7ba2b05]{height:36px;width:30px;border:1px solid #d1d5db;border-left:none;border-radius:0 6px 6px 0;background:#f9fafb;color:#374151;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.emp-dropdown-toggle[data-v-c7ba2b05]:hover{background:#e5e7eb}.dropdown-backdrop[data-v-c7ba2b05]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.emp-dropdown[data-v-c7ba2b05]{position:absolute;top:calc(100% + 4px);left:0;min-width:260px;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:100;max-height:300px;overflow-y:auto}.emp-dropdown-search-wrap[data-v-c7ba2b05]{padding:8px;border-bottom:1px solid #f3f4f6;position:sticky;top:0;background:#fff}.emp-dropdown-search[data-v-c7ba2b05]{width:100%;padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;box-sizing:border-box}.emp-dropdown-search[data-v-c7ba2b05]:focus{outline:none;border-color:#2563eb}.emp-dropdown-item[data-v-c7ba2b05]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;cursor:pointer;transition:background .1s}.emp-dropdown-item[data-v-c7ba2b05]:hover{background:#f0f9ff}.emp-dropdown-name[data-v-c7ba2b05]{font-size:13px;font-weight:500;color:#1a1a1a}.emp-dropdown-meta[data-v-c7ba2b05]{font-size:11px;color:#9ca3af}.emp-dropdown-empty[data-v-c7ba2b05]{padding:12px;text-align:center;font-size:13px;color:#9ca3af}.nav-btn[data-v-c7ba2b05]{background:#f3f4f6;border:1px solid #d1d5db;width:32px;height:32px;border-radius:6px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center}.nav-btn[data-v-c7ba2b05]:hover{background:#e5e7eb}.btn-load[data-v-c7ba2b05]{background:#2563eb;color:#fff;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-load[data-v-c7ba2b05]:hover{background:#1d4ed8}.project-info-bar[data-v-c7ba2b05]{display:flex;align-items:center;gap:20px;padding:10px 16px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin-bottom:12px;flex-wrap:wrap}.project-info-divider[data-v-c7ba2b05]{width:1px;height:28px;background:#fcd34d;flex-shrink:0}.project-info-item[data-v-c7ba2b05]{display:flex;flex-direction:column;gap:2px}.project-info-label[data-v-c7ba2b05]{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#92400e}.project-info-value[data-v-c7ba2b05]{font-size:13px;font-weight:500;color:#1a1a1a}.project-info-value.project-name[data-v-c7ba2b05]{font-weight:700;color:#b45309}.calendar-legend[data-v-c7ba2b05]{display:flex;gap:24px;margin-bottom:20px;padding:12px;background:#f9fafb;border-radius:6px;flex-wrap:wrap}.legend-item[data-v-c7ba2b05]{display:flex;align-items:center;gap:8px;font-size:14px}.color-box[data-v-c7ba2b05]{width:24px;height:24px;border-radius:4px;border:1px solid #d1d5db;background:#fff}.color-box.offshore[data-v-c7ba2b05]{background:#10b981}.color-box.onshore[data-v-c7ba2b05]{background:#3b82f6}.color-box.off[data-v-c7ba2b05]{background:#9ca3af}.color-box.leave[data-v-c7ba2b05]{background:#f59e0b}.loading[data-v-c7ba2b05],.empty-message[data-v-c7ba2b05]{text-align:center;padding:60px 20px;color:#6b7280}.scroll-sentinel[data-v-c7ba2b05]{height:1px}.loading-more[data-v-c7ba2b05]{text-align:center;padding:16px;color:#6b7280;font-size:14px}.scroll-hint[data-v-c7ba2b05]{text-align:center;padding:12px;color:#9ca3af;font-size:13px}.calendar-container[data-v-c7ba2b05]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;position:relative}.scroll-nav[data-v-c7ba2b05]{display:flex;justify-content:flex-end;gap:4px;padding:6px 10px 0;background:#fff}.scroll-btn[data-v-c7ba2b05]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:28px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;line-height:1}.scroll-btn[data-v-c7ba2b05]:hover{background:#f3f4f6;border-color:#9ca3af}.calendar-table-wrapper[data-v-c7ba2b05]{overflow-x:auto}.calendar-table[data-v-c7ba2b05]{width:100%;border-collapse:collapse;font-size:13px}.calendar-table th[data-v-c7ba2b05]{background:#f9fafb;padding:8px 4px;text-align:center;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.calendar-table td[data-v-c7ba2b05]{padding:4px;border-bottom:1px solid #f3f4f6;border-right:1px solid #f3f4f6}.employee-col[data-v-c7ba2b05]{position:sticky;left:0;background:#f9fafb;z-index:10;min-width:160px;text-align:left;padding-left:12px}.id-col[data-v-c7ba2b05]{position:sticky;left:160px;background:#f9fafb;z-index:10;min-width:80px;max-width:90px;text-align:left;padding-left:8px}.role-col[data-v-c7ba2b05]{position:sticky;left:250px;background:#f9fafb;z-index:10;min-width:90px;max-width:100px;text-align:left;padding-left:8px}.nationality-col[data-v-c7ba2b05]{position:sticky;left:350px;background:#f9fafb;z-index:10;min-width:60px;max-width:70px;text-align:left;padding-left:8px}.company-col[data-v-c7ba2b05]{position:sticky;left:420px;background:#f9fafb;z-index:10;min-width:110px;max-width:120px;text-align:left;padding-left:8px}.day-col[data-v-c7ba2b05]{min-width:50px;max-width:60px}.day-col.today[data-v-c7ba2b05]{background:#dbeafe}.day-col.weekend[data-v-c7ba2b05]{background:#fef3c7}.day-header[data-v-c7ba2b05]{display:flex;flex-direction:column;align-items:center;gap:2px}.day-number[data-v-c7ba2b05]{font-size:14px;font-weight:700}.day-name[data-v-c7ba2b05]{font-size:10px;text-transform:uppercase;color:#6b7280}.employee-cell[data-v-c7ba2b05]{position:sticky;left:0;background:#fff;z-index:5;padding-left:12px;min-width:160px}.employee-name[data-v-c7ba2b05]{font-weight:500;color:#1a1a1a;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:148px}.id-cell[data-v-c7ba2b05]{position:sticky;left:160px;background:#fff;z-index:5;padding:4px 8px;font-size:11px;color:#6b7280;white-space:nowrap;min-width:80px;max-width:90px}.role-cell[data-v-c7ba2b05]{position:sticky;left:250px;background:#fff;z-index:5;padding:4px 8px;font-size:11px;color:#374151;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.nationality-cell[data-v-c7ba2b05]{position:sticky;left:350px;background:#fff;z-index:5;padding:4px 8px;font-size:11px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70px}.company-cell[data-v-c7ba2b05]{position:sticky;left:420px;background:#fff;z-index:5;padding:4px 8px;font-size:11px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.day-cell[data-v-c7ba2b05]{cursor:pointer;transition:background .2s;height:60px;vertical-align:middle}.day-cell[data-v-c7ba2b05]:hover{background:#f9fafb}.day-cell.weekend[data-v-c7ba2b05]{background:#fffbeb}.day-content[data-v-c7ba2b05]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:100%;border-radius:4px;padding:4px}.day-content.offshore[data-v-c7ba2b05]{background:#10b981;color:#fff}.day-content.onshore[data-v-c7ba2b05]{background:#3b82f6;color:#fff}.day-content.off[data-v-c7ba2b05]{background:#9ca3af;color:#fff}.day-content.leave[data-v-c7ba2b05]{background:#f59e0b;color:#fff}.day-content.sick[data-v-c7ba2b05]{background:#ef4444;color:#fff}.day-content.training[data-v-c7ba2b05]{background:#8b5cf6;color:#fff}.day-content.travel[data-v-c7ba2b05]{background:#06b6d4;color:#fff}.day-content.scheduled[data-v-c7ba2b05]{background:#10b981;color:#fff}.day-content.empty[data-v-c7ba2b05]{background:transparent;border:1px dashed #d1d5db}.day-content.empty[data-v-c7ba2b05]:hover{background:#f3f4f6}.site-info[data-v-c7ba2b05]{font-size:9px;font-weight:700;text-align:center;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis}.project-info[data-v-c7ba2b05]{font-size:8px;text-align:center;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;opacity:.9}.activity-info[data-v-c7ba2b05]{font-size:8px;text-align:center;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;opacity:.8;text-transform:capitalize;font-style:italic}.no-projects-hint[data-v-c7ba2b05]{margin-top:6px;font-size:12px;color:#9ca3af;font-style:italic}.project-detail-card[data-v-c7ba2b05]{margin-top:8px;padding:8px 12px;background:#f0f7ff;border:1px solid #bfdbfe;border-radius:6px;display:flex;flex-direction:column;gap:4px}.project-detail-row[data-v-c7ba2b05]{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px}.project-detail-label[data-v-c7ba2b05]{color:#3b82f6;font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.03em}.project-detail-value[data-v-c7ba2b05]{color:#1e3a5f;font-weight:500}.project-detail-sep[data-v-c7ba2b05]{color:#93c5fd;font-size:13px}.add-icon[data-v-c7ba2b05]{font-size:20px;color:#9ca3af}.edit-dialog-overlay[data-v-c7ba2b05]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.edit-dialog[data-v-c7ba2b05]{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.dialog-header[data-v-c7ba2b05]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.dialog-header h3[data-v-c7ba2b05]{margin:0;font-size:18px}.btn-close[data-v-c7ba2b05]{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px}.dialog-content[data-v-c7ba2b05]{padding:24px}.employee-name-detail[data-v-c7ba2b05]{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:20px}.form-group[data-v-c7ba2b05]{margin-bottom:20px}.form-group label[data-v-c7ba2b05]{display:block;margin-bottom:6px;font-weight:500;color:#374151;font-size:14px}.form-group select[data-v-c7ba2b05],.form-group input[type=text][data-v-c7ba2b05],.form-group textarea[data-v-c7ba2b05]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;box-sizing:border-box}.form-group input[type=checkbox][data-v-c7ba2b05]{margin-right:8px}.dialog-actions[data-v-c7ba2b05]{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb}.btn-primary[data-v-c7ba2b05]{background:#2563eb;color:#fff;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-primary[data-v-c7ba2b05]:hover{background:#1d4ed8}.btn-secondary[data-v-c7ba2b05]{background:#f3f4f6;color:#374151;padding:10px 20px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px}.btn-secondary[data-v-c7ba2b05]:hover{background:#e5e7eb}.btn-danger[data-v-c7ba2b05]{background:#ef4444;color:#fff;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;margin-right:auto}.btn-danger[data-v-c7ba2b05]:hover{background:#dc2626}.date-range-group[data-v-c7ba2b05]{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:12px;margin-bottom:4px}.date-range-row[data-v-c7ba2b05]{display:flex;gap:12px}.date-range-item[data-v-c7ba2b05]{flex:1;display:flex;flex-direction:column;gap:4px}.date-range-item label[data-v-c7ba2b05]{font-size:12px;font-weight:600;color:#0369a1;text-transform:uppercase;letter-spacing:.03em}.date-input-disabled[data-v-c7ba2b05]{width:100%;padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#f3f4f6;color:#6b7280;box-sizing:border-box}.date-input-end[data-v-c7ba2b05]{width:100%;padding:7px 10px;border:1px solid #0ea5e9;border-radius:6px;font-size:14px;background:#fff;color:#0c4a6e;box-sizing:border-box}.range-hint[data-v-c7ba2b05]{margin-top:6px;font-size:12px;color:#0369a1;font-weight:500}.weekend-warning[data-v-c7ba2b05]{background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;padding:12px 14px;margin-bottom:12px}.weekend-warning-title[data-v-c7ba2b05]{font-size:14px;font-weight:700;color:#92400e;margin-bottom:6px}.weekend-warning-body[data-v-c7ba2b05]{font-size:13px;color:#78350f;margin-bottom:10px}.weekend-warning-actions[data-v-c7ba2b05]{display:flex;gap:8px;flex-wrap:wrap}.btn-confirm-weekend[data-v-c7ba2b05]{padding:6px 12px;background:#f59e0b;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600}.btn-confirm-weekend[data-v-c7ba2b05]:hover{background:#d97706}.btn-skip-weekend[data-v-c7ba2b05]{padding:6px 12px;background:#fff;color:#78350f;border:1px solid #fcd34d;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600}.btn-skip-weekend[data-v-c7ba2b05]:hover{background:#fef3c7}.conflict-error[data-v-c7ba2b05]{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;padding:12px 14px;margin-bottom:12px}.conflict-error-title[data-v-c7ba2b05]{font-size:14px;font-weight:700;color:#dc2626;margin-bottom:6px}.conflict-error-body[data-v-c7ba2b05]{font-size:13px;color:#b91c1c;margin-bottom:6px}.conflict-error-hint[data-v-c7ba2b05]{font-size:12px;color:#7f1d1d;font-style:italic}.daily-calendar-view[data-v-99814dc1]{width:100%;height:100%}.evaluations-view[data-v-a87c077b]{max-width:1400px;margin:0 auto}.page-header[data-v-a87c077b]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.page-title[data-v-a87c077b]{font-size:28px;font-weight:700;color:#0f172a;margin-bottom:4px}.page-subtitle[data-v-a87c077b]{font-size:14px;color:#64748b}.btn-primary[data-v-a87c077b]{background:#1e3a8a;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-primary[data-v-a87c077b]:hover{background:#1e40af}.stats-grid[data-v-a87c077b]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.stat-card[data-v-a87c077b]{border-radius:12px;padding:20px 24px;color:#fff}.stat-total[data-v-a87c077b]{background:linear-gradient(135deg,#0369a1,#0284c7)}.stat-draft[data-v-a87c077b]{background:linear-gradient(135deg,#475569,#64748b)}.stat-submitted[data-v-a87c077b]{background:linear-gradient(135deg,#b45309,#d97706)}.stat-validated[data-v-a87c077b]{background:linear-gradient(135deg,#15803d,#16a34a)}.stat-label[data-v-a87c077b]{font-size:13px;font-weight:600;opacity:.85;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.stat-value[data-v-a87c077b]{font-size:36px;font-weight:800;line-height:1}.filters-bar[data-v-a87c077b]{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.search-wrapper[data-v-a87c077b]{position:relative;flex:1;min-width:240px}.search-icon[data-v-a87c077b]{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.search-input[data-v-a87c077b]{width:100%;padding:8px 12px 8px 34px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1e293b;background:#fff;outline:none;transition:border-color .2s;box-sizing:border-box}.search-input[data-v-a87c077b]:focus{border-color:#1e3a8a}.filter-select[data-v-a87c077b]{padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1e293b;background:#fff;outline:none;cursor:pointer;transition:border-color .2s}.filter-select[data-v-a87c077b]:focus{border-color:#1e3a8a}.btn-clear-filters[data-v-a87c077b]{padding:8px 14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;font-size:13px;color:#64748b;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-clear-filters[data-v-a87c077b]:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.loading-state[data-v-a87c077b]{display:flex;align-items:center;justify-content:center;gap:12px;padding:80px 0;color:#64748b;font-size:15px}.spinner[data-v-a87c077b]{width:24px;height:24px;border:3px solid #e2e8f0;border-top-color:#1e3a8a;border-radius:50%;animation:spin-a87c077b .8s linear infinite}@keyframes spin-a87c077b{to{transform:rotate(360deg)}}.empty-state[data-v-a87c077b]{text-align:center;padding:80px 0;color:#64748b;display:flex;flex-direction:column;align-items:center;gap:12px}.empty-state h3[data-v-a87c077b]{font-size:18px;font-weight:600;color:#374151;margin:0}.empty-state p[data-v-a87c077b]{margin:0;font-size:14px}.table-wrapper[data-v-a87c077b]{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 3px #0000000d}.evaluations-table[data-v-a87c077b]{width:100%;border-collapse:collapse}.evaluations-table thead th[data-v-a87c077b]{background:#f8fafc;padding:11px 14px;text-align:left;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0}.table-row[data-v-a87c077b]{transition:background .15s}.table-row[data-v-a87c077b]:hover{background:#f8fafc}.table-row td[data-v-a87c077b]{padding:13px 14px;border-bottom:1px solid #f1f5f9;font-size:14px;color:#374151;vertical-align:middle}.table-row:last-child td[data-v-a87c077b]{border-bottom:none}.employee-name[data-v-a87c077b]{font-weight:600;color:#0f172a;margin-bottom:3px}.employee-meta[data-v-a87c077b]{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.employee-meta span[data-v-a87c077b]{font-size:11px;color:#64748b}.dept-tag[data-v-a87c077b]{background:#f1f5f9;color:#475569!important;padding:1px 6px;border-radius:3px;font-weight:500!important}.level-tag[data-v-a87c077b]{background:#dbeafe;color:#1e40af!important;padding:1px 6px;border-radius:3px;font-weight:600!important}.period-label[data-v-a87c077b]{font-weight:600;color:#1e3a8a}.period-dates[data-v-a87c077b]{font-size:11px;color:#94a3b8;margin-top:2px}.grid-badge[data-v-a87c077b]{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:700;letter-spacing:.3px}.grid-BC_AR[data-v-a87c077b]{background:#e0f2fe;color:#0369a1}.grid-MM_PE[data-v-a87c077b]{background:#fef3c7;color:#b45309}.grid-WC_PE[data-v-a87c077b]{background:#dcfce7;color:#15803d}.status-badge[data-v-a87c077b]{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600}.status-draft[data-v-a87c077b]{background:#f1f5f9;color:#475569}.status-submitted[data-v-a87c077b]{background:#fef3c7;color:#92400e}.status-validated[data-v-a87c077b]{background:#dcfce7;color:#166534}.score-display[data-v-a87c077b]{display:flex;align-items:center;gap:5px}.score-value[data-v-a87c077b]{font-weight:700;font-size:15px}.score-value.score-excellent[data-v-a87c077b]{color:#16a34a}.score-value.score-good[data-v-a87c077b]{color:#2563eb}.score-value.score-average[data-v-a87c077b]{color:#d97706}.score-value.score-low[data-v-a87c077b]{color:#dc2626}.score-max[data-v-a87c077b]{font-size:12px;color:#94a3b8}.score-bar[data-v-a87c077b]{flex:1;min-width:50px;height:5px;background:#e2e8f0;border-radius:3px;overflow:hidden}.score-fill[data-v-a87c077b]{height:100%;border-radius:3px;transition:width .3s}.score-fill.score-excellent[data-v-a87c077b]{background:#16a34a}.score-fill.score-good[data-v-a87c077b]{background:#2563eb}.score-fill.score-average[data-v-a87c077b]{background:#d97706}.score-fill.score-low[data-v-a87c077b]{background:#dc2626}.no-value[data-v-a87c077b]{color:#94a3b8}.manager-cell[data-v-a87c077b]{color:#475569;font-size:13px}.date-cell[data-v-a87c077b]{color:#64748b;font-size:13px}.actions-cell[data-v-a87c077b]{display:flex;gap:6px}.btn-icon[data-v-a87c077b]{background:none;border:1px solid #e2e8f0;border-radius:6px;padding:5px 7px;cursor:pointer;color:#64748b;transition:all .15s;display:flex;align-items:center}.btn-edit[data-v-a87c077b]:hover{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.btn-delete[data-v-a87c077b]:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.table-footer[data-v-a87c077b]{padding:12px 16px;font-size:13px;color:#94a3b8;border-top:1px solid #f1f5f9;background:#fafafa}.modal-overlay[data-v-a87c077b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-card[data-v-a87c077b]{background:#fff;border-radius:12px;padding:28px;width:440px;max-width:90vw;box-shadow:0 20px 50px #0003}.modal-title[data-v-a87c077b]{font-size:18px;font-weight:700;color:#0f172a;margin-bottom:12px}.modal-body[data-v-a87c077b]{font-size:14px;color:#475569;line-height:1.6;margin-bottom:24px}.modal-actions[data-v-a87c077b]{display:flex;gap:12px;justify-content:flex-end}.btn-secondary[data-v-a87c077b]{background:#fff;border:1px solid #e2e8f0;color:#374151;padding:9px 18px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-secondary[data-v-a87c077b]:hover{background:#f8fafc}.btn-danger[data-v-a87c077b]{background:#dc2626;color:#fff;border:none;padding:9px 18px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-danger[data-v-a87c077b]:hover:not(:disabled){background:#b91c1c}.btn-danger[data-v-a87c077b]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 900px){.stats-grid[data-v-a87c077b]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.stats-grid[data-v-a87c077b]{grid-template-columns:1fr 1fr}.filters-bar[data-v-a87c077b]{flex-direction:column}.search-wrapper[data-v-a87c077b]{min-width:unset}}.evaluation-form-view[data-v-121aea45]{max-width:1200px;margin:0 auto}.form-header[data-v-121aea45]{display:flex;align-items:center;gap:20px;margin-bottom:28px;flex-wrap:wrap}.back-btn[data-v-121aea45]{background:none;border:1px solid #e2e8f0;color:#374151;padding:8px 14px;border-radius:8px;font-size:14px;cursor:pointer;transition:background .2s;white-space:nowrap}.back-btn[data-v-121aea45]:hover{background:#f8fafc}.header-content[data-v-121aea45]{flex:1}.page-title[data-v-121aea45]{font-size:24px;font-weight:700;color:#0f172a;margin-bottom:2px}.page-subtitle[data-v-121aea45]{font-size:13px;color:#64748b}.header-actions[data-v-121aea45]{display:flex;gap:10px}.btn-primary[data-v-121aea45]{background:#1e3a8a;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary[data-v-121aea45]:hover:not(:disabled){background:#1e40af}.btn-primary[data-v-121aea45]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-121aea45]{background:#fff;border:1px solid #e2e8f0;color:#374151;padding:10px 18px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-secondary[data-v-121aea45]:hover:not(:disabled){background:#f8fafc}.btn-secondary[data-v-121aea45]:disabled{opacity:.6;cursor:not-allowed}.loading-state[data-v-121aea45]{display:flex;align-items:center;justify-content:center;gap:12px;padding:80px 0;color:#64748b}.spinner[data-v-121aea45]{width:24px;height:24px;border:3px solid #e2e8f0;border-top-color:#1e3a8a;border-radius:50%;animation:spin-121aea45 .8s linear infinite}@keyframes spin-121aea45{to{transform:rotate(360deg)}}.form-body[data-v-121aea45]{display:flex;flex-direction:column;gap:20px}.form-grid[data-v-121aea45]{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start}.form-card[data-v-121aea45]{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:24px;box-shadow:0 1px 3px #0000000d}.card-title[data-v-121aea45]{font-size:15px;font-weight:700;color:#0f172a;margin-bottom:4px}.card-subtitle[data-v-121aea45]{font-size:13px;color:#64748b;margin-bottom:16px}.card-header-row[data-v-121aea45]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.saipem-logo[data-v-121aea45]{display:flex;align-items:center;gap:8px}.logo-name[data-v-121aea45]{font-size:18px;font-weight:700;color:#1e3a8a;letter-spacing:1px}.identity-grid[data-v-121aea45]{display:grid;grid-template-columns:1fr 1fr;gap:14px}.identity-field[data-v-121aea45]{display:flex;flex-direction:column;gap:4px}.field-label[data-v-121aea45]{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.field-hint[data-v-121aea45]{font-size:11px;color:#64748b;margin-top:3px;font-style:italic}.field-input[data-v-121aea45]{padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#1e293b;background:#fff;outline:none;transition:border-color .2s}.field-input[data-v-121aea45]:focus{border-color:#1e3a8a}.field-input[data-v-121aea45]:disabled{background:#f8fafc;color:#64748b}.status-badge[data-v-121aea45]{display:inline-block;padding:5px 12px;border-radius:20px;font-size:13px;font-weight:600}.status-draft[data-v-121aea45]{background:#f1f5f9;color:#475569}.status-submitted[data-v-121aea45]{background:#fef3c7;color:#92400e}.status-validated[data-v-121aea45]{background:#dcfce7;color:#166534}.score-summary-card[data-v-121aea45]{width:260px;flex-shrink:0}.overall-score-display[data-v-121aea45]{display:flex;align-items:baseline;gap:4px;margin-bottom:10px}.big-score[data-v-121aea45]{font-size:52px;font-weight:800;line-height:1}.big-score.score-excellent[data-v-121aea45]{color:#16a34a}.big-score.score-good[data-v-121aea45]{color:#2563eb}.big-score.score-average[data-v-121aea45]{color:#d97706}.big-score.score-low[data-v-121aea45]{color:#dc2626}.big-score-max[data-v-121aea45]{font-size:20px;color:#94a3b8}.score-bar-large[data-v-121aea45]{height:10px;background:#e2e8f0;border-radius:5px;overflow:hidden;margin-bottom:8px}.score-fill-large[data-v-121aea45]{height:100%;border-radius:5px;transition:width .4s}.score-fill-large.score-excellent[data-v-121aea45]{background:#16a34a}.score-fill-large.score-good[data-v-121aea45]{background:#2563eb}.score-fill-large.score-average[data-v-121aea45]{background:#d97706}.score-fill-large.score-low[data-v-121aea45]{background:#dc2626}.score-label-text[data-v-121aea45]{font-size:13px;font-weight:600;color:#475569;margin-bottom:20px}.weights-summary[data-v-121aea45]{display:flex;flex-direction:column;gap:5px}.weight-row[data-v-121aea45]{display:flex;align-items:center;gap:5px;font-size:11px}.weight-criterion[data-v-121aea45]{flex:1;color:#64748b;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weight-pct[data-v-121aea45]{color:#94a3b8;font-weight:600;min-width:28px;text-align:right}.weight-rating[data-v-121aea45]{min-width:34px;text-align:center;padding:1px 4px;border-radius:3px;font-weight:700;font-size:10px}.rating-excellent[data-v-121aea45]{background:#dcfce7;color:#166534}.rating-good[data-v-121aea45]{background:#dbeafe;color:#1e40af}.rating-average[data-v-121aea45]{background:#fef3c7;color:#92400e}.rating-low[data-v-121aea45]{background:#fee2e2;color:#991b1b}.rating-vlow[data-v-121aea45]{background:#fce7f3;color:#9d174d}.objectives-config-card[data-v-121aea45]{padding:20px 24px}.objectives-header[data-v-121aea45]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.objectives-total[data-v-121aea45]{font-size:14px;font-weight:700;padding:6px 14px;border-radius:6px;white-space:nowrap}.total-ok[data-v-121aea45]{background:#dcfce7;color:#15803d}.total-over[data-v-121aea45]{background:#fee2e2;color:#dc2626}.total-under[data-v-121aea45]{background:#fef3c7;color:#b45309}.objectives-grid[data-v-121aea45]{display:flex;flex-direction:column;gap:12px}.objective-config-row[data-v-121aea45]{display:grid;grid-template-columns:32px 1fr 100px;gap:12px;align-items:start;padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.obj-number[data-v-121aea45]{width:32px;height:32px;background:#1e3a8a;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;margin-top:4px}.obj-fields[data-v-121aea45]{display:flex;flex-direction:column;gap:6px}.obj-label-input[data-v-121aea45],.obj-desc-input[data-v-121aea45]{padding:7px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;color:#1e293b;background:#fff;outline:none;transition:border-color .2s;font-family:inherit}.obj-label-input[data-v-121aea45]:focus,.obj-desc-input[data-v-121aea45]:focus{border-color:#1e3a8a}.obj-desc-input[data-v-121aea45]{resize:vertical}.obj-weight-wrapper[data-v-121aea45]{display:flex;flex-direction:column;gap:4px}.obj-weight-input[data-v-121aea45]{padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:15px;font-weight:700;color:#1e3a8a;background:#fff;outline:none;width:100%;text-align:center;transition:border-color .2s}.obj-weight-input[data-v-121aea45]:focus{border-color:#1e3a8a}.grid-placeholder[data-v-121aea45]{text-align:center;padding:48px;color:#94a3b8;display:flex;flex-direction:column;align-items:center;gap:12px}.grid-placeholder p[data-v-121aea45]{font-size:15px;margin:0}.criteria-section[data-v-121aea45]{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 3px #0000000d}.criteria-header[data-v-121aea45]{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#f8fafc;border-bottom:2px solid #e2e8f0}.criteria-title[data-v-121aea45]{font-size:16px;font-weight:700;color:#0f172a}.criteria-legend[data-v-121aea45]{display:flex;gap:24px}.legend-item[data-v-121aea45]{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.criterion-card[data-v-121aea45]{border-bottom:1px solid #f1f5f9;transition:background .15s}.criterion-card[data-v-121aea45]:last-child{border-bottom:none}.criterion-card[data-v-121aea45]:hover{background:#fafbfc}.criterion-body[data-v-121aea45]{display:grid;grid-template-columns:1fr 100px 320px}.criterion-content[data-v-121aea45]{padding:16px 20px;border-right:1px solid #f1f5f9}.criterion-title[data-v-121aea45]{font-size:12px;font-weight:700;background:#1e3a8a;color:#fff;display:inline-block;padding:2px 8px;border-radius:3px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.3px}.criterion-description[data-v-121aea45]{font-size:13px;color:#475569;line-height:1.6}.criterion-weight[data-v-121aea45]{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #f1f5f9;padding:16px;gap:4px}.weight-badge[data-v-121aea45]{background:#f97316;color:#fff;font-size:14px;font-weight:700;padding:6px 10px;border-radius:6px}.weight-editable[data-v-121aea45]{background:#0369a1}.editable-weight-display[data-v-121aea45]{display:flex;flex-direction:column;align-items:center;gap:3px}.weight-hint[data-v-121aea45]{font-size:9px;color:#94a3b8;text-transform:uppercase;letter-spacing:.3px}.criterion-eval[data-v-121aea45]{padding:16px;display:flex;flex-direction:column;gap:8px;background:#fff9f5}.rating-select[data-v-121aea45]{width:100%;padding:10px 32px 10px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:500;color:#1e293b;background:#fff;outline:none;cursor:pointer;transition:border-color .2s,background .2s;-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='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2364748b' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.rating-select[data-v-121aea45]:focus{border-color:#1e3a8a}.rating-select.rating-excellent[data-v-121aea45]{border-color:#16a34a;background-color:#f0fdf4;color:#166534}.rating-select.rating-good[data-v-121aea45]{border-color:#2563eb;background-color:#eff6ff;color:#1e40af}.rating-select.rating-average[data-v-121aea45]{border-color:#d97706;background-color:#fffbeb;color:#92400e}.rating-select.rating-low[data-v-121aea45]{border-color:#dc2626;background-color:#fef2f2;color:#991b1b}.rating-select.rating-vlow[data-v-121aea45]{border-color:#db2777;background-color:#fdf2f8;color:#9d174d}.criterion-comment[data-v-121aea45]{width:100%;padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;color:#374151;resize:vertical;outline:none;font-family:inherit;transition:border-color .2s;background:#fff;box-sizing:border-box}.criterion-comment[data-v-121aea45]:focus{border-color:#1e3a8a}.general-comment-input[data-v-121aea45]{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#374151;resize:vertical;outline:none;font-family:inherit;line-height:1.6;transition:border-color .2s;box-sizing:border-box}.general-comment-input[data-v-121aea45]:focus{border-color:#1e3a8a}.form-footer[data-v-121aea45]{display:flex;justify-content:flex-end;gap:12px;padding-bottom:32px}@media (max-width: 900px){.form-grid[data-v-121aea45]{grid-template-columns:1fr}.score-summary-card[data-v-121aea45]{width:100%}.criterion-body[data-v-121aea45]{grid-template-columns:1fr}.criterion-weight[data-v-121aea45]{justify-content:flex-start;padding:0 20px 8px;border-right:none}.criterion-eval[data-v-121aea45]{background:#fff}.objective-config-row[data-v-121aea45]{grid-template-columns:32px 1fr}.obj-weight-wrapper[data-v-121aea45]{grid-column:2}.identity-grid[data-v-121aea45]{grid-template-columns:1fr}}.visas-view[data-v-808a8e83]{max-width:1200px;margin:0 auto}.page-header[data-v-808a8e83]{margin-bottom:24px}.header-content[data-v-808a8e83]{display:flex;align-items:center;gap:16px}.header-icon[data-v-808a8e83]{font-size:36px}.header-text h1[data-v-808a8e83]{font-size:24px;font-weight:700;color:#111827;margin:0}.header-text p[data-v-808a8e83]{font-size:14px;color:#6b7280;margin:4px 0 0}.tabs-row[data-v-808a8e83]{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px}.btn-new-visa[data-v-808a8e83]{padding:9px 18px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap;margin-bottom:2px}.btn-new-visa[data-v-808a8e83]:hover{background:#1d4ed8}.tabs-section[data-v-808a8e83]{display:flex;gap:4px;border-bottom:2px solid #e5e7eb;padding-bottom:0}.tab[data-v-808a8e83]{padding:10px 20px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:color .2s,border-color .2s}.tab[data-v-808a8e83]:hover{color:#111827}.tab.active[data-v-808a8e83]{color:#2563eb;border-bottom-color:#2563eb}.content-section[data-v-808a8e83]{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.search-header[data-v-808a8e83]{padding:16px 20px;border-bottom:1px solid #f3f4f6}.search-box[data-v-808a8e83]{display:flex;align-items:center;gap:10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:10px 14px}.search-icon[data-v-808a8e83]{font-size:16px}.search-input[data-v-808a8e83]{border:none;background:none;font-size:14px;width:100%;outline:none;color:#111827}.loading-state[data-v-808a8e83]{padding:40px;text-align:center;color:#6b7280}.error-banner[data-v-808a8e83]{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:6px;padding:10px 16px;font-size:13px;margin:16px 20px}.empty-state[data-v-808a8e83]{padding:60px;text-align:center}.empty-icon[data-v-808a8e83]{font-size:48px;margin-bottom:12px}.empty-state p[data-v-808a8e83]{color:#6b7280;font-size:14px}.employee-visa-table[data-v-808a8e83]{display:flex;flex-direction:column}.table-header[data-v-808a8e83]{display:grid;grid-template-columns:200px 1fr 140px 120px 80px;padding:10px 20px;background:#f9fafb;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e5e7eb}.table-row[data-v-808a8e83]{display:grid;grid-template-columns:200px 1fr 140px 120px 80px;padding:14px 20px;border-bottom:1px solid #f3f4f6;align-items:center;cursor:pointer;transition:background .15s}.table-row[data-v-808a8e83]:last-child{border-bottom:none}.table-row[data-v-808a8e83]:hover{background:#f9fafb}.emp-name[data-v-808a8e83]{font-size:14px;font-weight:600;color:#111827}.emp-position[data-v-808a8e83]{font-size:12px;color:#6b7280}.cell-visas[data-v-808a8e83]{display:flex;flex-direction:column;gap:4px}.visa-pill[data-v-808a8e83]{display:inline-block;font-size:12px;font-weight:500;padding:3px 8px;border-radius:6px;width:fit-content}.visa-pill--valid[data-v-808a8e83]{background:#dcfce7;color:#15803d}.visa-pill--expiring_soon[data-v-808a8e83]{background:#ffedd5;color:#c2410c}.visa-pill--expired[data-v-808a8e83]{background:#fee2e2;color:#b91c1c}.no-visa[data-v-808a8e83]{font-size:12px;color:#9ca3af}.cell-status[data-v-808a8e83]{display:flex;flex-direction:column;gap:4px}.visa-badge[data-v-808a8e83]{font-size:12px;font-weight:600;padding:3px 8px;border-radius:20px;white-space:nowrap;width:fit-content}.visa-badge--valid[data-v-808a8e83]{background:#dcfce7;color:#16a34a}.visa-badge--expiring_soon[data-v-808a8e83]{background:#ffedd5;color:#ea580c}.visa-badge--expired[data-v-808a8e83]{background:#fee2e2;color:#dc2626}.progress-pill[data-v-808a8e83]{font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px}.progress--done[data-v-808a8e83]{background:#dcfce7;color:#16a34a}.progress--half[data-v-808a8e83]{background:#fef9c3;color:#ca8a04}.progress--low[data-v-808a8e83]{background:#f3f4f6;color:#6b7280}.no-checklist[data-v-808a8e83]{color:#9ca3af;font-size:12px}.btn-view[data-v-808a8e83]{padding:6px 12px;background:none;border:1px solid #d1d5db;border-radius:6px;font-size:12px;font-weight:500;color:#374151;cursor:pointer;transition:background .2s}.btn-view[data-v-808a8e83]:hover{background:#f3f4f6}.checklist-header[data-v-808a8e83]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #f3f4f6}.checklist-desc[data-v-808a8e83]{font-size:14px;color:#6b7280;margin:0}.step-form-box[data-v-808a8e83]{padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.step-form-grid[data-v-808a8e83]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.field-group[data-v-808a8e83]{display:flex;flex-direction:column;gap:5px}.field-group.full[data-v-808a8e83]{grid-column:1 / -1}.field-group label[data-v-808a8e83]{font-size:13px;font-weight:500;color:#374151}.field-group input[data-v-808a8e83]{padding:9px 11px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;background:#fff}.field-group input[data-v-808a8e83]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-actions[data-v-808a8e83]{display:flex;gap:10px;justify-content:flex-end}.btn-primary[data-v-808a8e83]{padding:8px 16px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer}.btn-primary[data-v-808a8e83]:hover{background:#1d4ed8}.btn-cancel[data-v-808a8e83]{padding:8px 16px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:13px;cursor:pointer}.btn-cancel[data-v-808a8e83]:hover{background:#f3f4f6}.btn-save[data-v-808a8e83]{padding:8px 18px;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer}.btn-save[data-v-808a8e83]:hover:not(:disabled){background:#15803d}.btn-save[data-v-808a8e83]:disabled{opacity:.6;cursor:not-allowed}.steps-list[data-v-808a8e83]{display:flex;flex-direction:column}.step-row[data-v-808a8e83]{display:grid;grid-template-columns:44px 1fr 80px 100px;align-items:center;padding:14px 20px;border-bottom:1px solid #f3f4f6;gap:12px;transition:background .15s}.step-row[data-v-808a8e83]:last-child{border-bottom:none}.step-row[data-v-808a8e83]:hover{background:#f9fafb}.step-row.inactive[data-v-808a8e83]{opacity:.55}.step-order[data-v-808a8e83]{width:32px;height:32px;border-radius:50%;background:#e5e7eb;color:#374151;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.step-label-text[data-v-808a8e83]{font-size:14px;font-weight:500;color:#111827}.step-desc[data-v-808a8e83]{font-size:12px;color:#6b7280;margin-top:2px}.badge-inactive[data-v-808a8e83]{font-size:11px;font-weight:600;padding:2px 8px;border-radius:12px;background:#f3f4f6;color:#9ca3af}.step-actions[data-v-808a8e83]{display:flex;gap:4px;justify-content:flex-end}.btn-icon[data-v-808a8e83]{background:none;border:1px solid transparent;padding:5px 8px;border-radius:5px;cursor:pointer;font-size:14px;transition:background .15s}.btn-icon[data-v-808a8e83]:hover{background:#f3f4f6}.btn-icon.danger[data-v-808a8e83]:hover{background:#fee2e2}.modal-overlay[data-v-808a8e83]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal[data-v-808a8e83]{background:#fff;border-radius:14px;width:100%;max-width:560px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.modal-header[data-v-808a8e83]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.modal-header h2[data-v-808a8e83]{font-size:17px;font-weight:700;color:#111827;margin:0}.modal-close[data-v-808a8e83]{background:none;border:none;font-size:16px;color:#6b7280;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s}.modal-close[data-v-808a8e83]:hover{background:#f3f4f6;color:#111827}.modal-body[data-v-808a8e83]{padding:20px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.modal-footer[data-v-808a8e83]{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;gap:10px;justify-content:flex-end}.employee-search-wrap[data-v-808a8e83]{position:relative}.emp-search-input[data-v-808a8e83]{width:100%;padding:9px 11px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit}.emp-search-input[data-v-808a8e83]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.emp-dropdown[data-v-808a8e83]{position:absolute;top:100%;left:0;right:0;z-index:10;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 8px 24px #0000001a;margin-top:4px;overflow:hidden}.emp-option[data-v-808a8e83]{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background .15s}.emp-option[data-v-808a8e83]:hover{background:#f0f9ff}.emp-opt-name[data-v-808a8e83]{font-size:14px;font-weight:500;color:#111827}.emp-opt-title[data-v-808a8e83]{font-size:12px;color:#6b7280}.emp-no-result[data-v-808a8e83]{padding:12px 14px;font-size:13px;color:#9ca3af}.selected-emp-badge[data-v-808a8e83]{display:inline-flex;align-items:center;gap:8px;margin-top:8px;background:#dbeafe;color:#1d4ed8;border-radius:20px;padding:5px 12px;font-size:13px;font-weight:600}.selected-emp-badge button[data-v-808a8e83]{background:none;border:none;color:#1d4ed8;cursor:pointer;font-size:13px;padding:0;line-height:1}.selected-emp-badge button[data-v-808a8e83]:hover{color:#dc2626}.form-grid[data-v-808a8e83]{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .field-group.full[data-v-808a8e83]{grid-column:1 / -1}.form-grid .field-group input[data-v-808a8e83],.form-grid .field-group select[data-v-808a8e83]{padding:9px 11px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;background:#fff}.form-grid .field-group input[data-v-808a8e83]:focus,.form-grid .field-group select[data-v-808a8e83]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.modal-choose-label[data-v-808a8e83]{font-size:14px;color:#6b7280;margin:0 0 14px}.modal-mode-cards[data-v-808a8e83]{display:flex;flex-direction:column;gap:12px}.mode-card[data-v-808a8e83]{display:flex;align-items:flex-start;gap:16px;padding:16px 18px;border:2px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;text-align:left;transition:border-color .2s,background .2s;width:100%}.mode-card[data-v-808a8e83]:hover{border-color:#2563eb;background:#eff6ff}.mode-card-icon[data-v-808a8e83]{font-size:28px;flex-shrink:0}.mode-card-text[data-v-808a8e83]{display:flex;flex-direction:column;gap:4px}.mode-card-text strong[data-v-808a8e83]{font-size:14px;font-weight:600;color:#111827}.mode-card-text span[data-v-808a8e83]{font-size:13px;color:#6b7280;line-height:1.4}.modal-mode-back[data-v-808a8e83]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.btn-back[data-v-808a8e83]{background:none;border:none;color:#2563eb;font-size:13px;font-weight:500;cursor:pointer;padding:4px 0}.btn-back[data-v-808a8e83]:hover{text-decoration:underline}.modal-mode-title[data-v-808a8e83]{font-size:14px;font-weight:600;color:#374151}.invitation-letter-section[data-v-808a8e83]{margin-bottom:14px}.invitation-letter-label[data-v-808a8e83]{font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.optional-tag[data-v-808a8e83]{font-size:11px;color:#9ca3af;font-weight:400}.invitation-upload-btn[data-v-808a8e83]{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1.5px dashed #d1d5db;border-radius:7px;background:#f9fafb;font-size:13px;color:#4b5563;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none;width:100%}.invitation-upload-btn[data-v-808a8e83]:hover{border-color:#3b82f6;background:#eff6ff;color:#1d4ed8}.invitation-upload-btn.has-file[data-v-808a8e83]{border-style:solid;border-color:#059669;background:#f0fdf4;color:#065f46}.clear-letter-btn[data-v-808a8e83]{background:none;border:none;color:#dc2626;cursor:pointer;font-size:13px;padding:0 4px;margin-left:4px;border-radius:3px;transition:background .15s}.clear-letter-btn[data-v-808a8e83]:hover{background:#fee2e2}.invitation-error[data-v-808a8e83]{font-size:12px;color:#dc2626;margin-top:4px}.request-info-box[data-v-808a8e83]{display:flex;align-items:flex-start;gap:10px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:12px 14px;font-size:13px;color:#1e40af;line-height:1.5}.info-icon[data-v-808a8e83]{flex-shrink:0}.mb-3[data-v-808a8e83]{margin-bottom:12px}.done-success[data-v-808a8e83]{display:flex;align-items:center;gap:10px;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;padding:12px 16px;font-size:14px;font-weight:600;color:#16a34a}.done-icon[data-v-808a8e83]{width:22px;height:22px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.done-label[data-v-808a8e83]{font-size:13px;color:#6b7280;margin:0}.visa-pill--pending[data-v-808a8e83]{background:#dbeafe;color:#1d4ed8}.pill-pending-tag[data-v-808a8e83]{font-size:10px;font-weight:700;background:#bfdbfe;color:#1e40af;border-radius:10px;padding:1px 6px;margin-left:4px;text-transform:uppercase}.visa-detail-view[data-v-9b7485da]{max-width:960px;margin:0 auto}.page-header[data-v-9b7485da]{display:flex;align-items:center;gap:20px;margin-bottom:28px}.btn-back[data-v-9b7485da]{background:none;border:1px solid #d1d5db;padding:8px 14px;border-radius:6px;font-size:13px;cursor:pointer;color:#374151;transition:background .2s;white-space:nowrap}.btn-back[data-v-9b7485da]:hover{background:#f3f4f6}.employee-title h1[data-v-9b7485da]{font-size:22px;font-weight:700;color:#111827;margin:0}.employee-position[data-v-9b7485da]{font-size:13px;color:#6b7280}.detail-layout[data-v-9b7485da]{display:flex;flex-direction:column;gap:24px}.card[data-v-9b7485da]{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:24px}.card-header[data-v-9b7485da]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-header h2[data-v-9b7485da]{font-size:17px;font-weight:600;color:#111827;margin:0}.progress-badge[data-v-9b7485da]{font-size:12px;font-weight:600;padding:4px 12px;border-radius:20px}.progress--done[data-v-9b7485da]{background:#dcfce7;color:#16a34a}.progress--half[data-v-9b7485da]{background:#fef9c3;color:#ca8a04}.progress--low[data-v-9b7485da]{background:#f3f4f6;color:#6b7280}.visa-selector[data-v-9b7485da]{display:flex;align-items:center;gap:12px;margin-bottom:20px}.visa-selector label[data-v-9b7485da]{font-size:13px;font-weight:500;color:#374151;white-space:nowrap}.visa-selector select[data-v-9b7485da]{flex:1;padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-family:inherit}.checklist[data-v-9b7485da]{display:flex;flex-direction:column;gap:0}.checklist-item[data-v-9b7485da]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:8px;transition:background .15s;border-bottom:1px solid #f3f4f6}.checklist-item[data-v-9b7485da]:last-child{border-bottom:none}.checklist-item[data-v-9b7485da]:hover{background:#f9fafb}.checklist-item.completed[data-v-9b7485da]{background:#f0fdf4}.checklist-label[data-v-9b7485da]{display:flex;align-items:center;gap:12px;cursor:pointer;flex:1}.checklist-label input[type=checkbox][data-v-9b7485da]{width:17px;height:17px;cursor:pointer;accent-color:#16a34a;flex-shrink:0}.step-number[data-v-9b7485da]{font-size:12px;color:#9ca3af;font-weight:600;min-width:20px}.step-label[data-v-9b7485da]{font-size:14px;color:#111827}.checklist-item.completed .step-label[data-v-9b7485da]{text-decoration:line-through;color:#6b7280}.step-date[data-v-9b7485da]{font-size:11px;color:#16a34a;white-space:nowrap;margin-left:12px}.empty-hint[data-v-9b7485da]{color:#9ca3af;font-size:14px;padding:8px 0}.loading-state[data-v-9b7485da]{padding:40px;text-align:center;color:#6b7280}.error-banner[data-v-9b7485da]{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:6px;padding:10px 14px;font-size:13px;margin-bottom:16px}.visa-list[data-v-9b7485da]{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.visa-card[data-v-9b7485da]{display:flex;flex-direction:column;padding:14px 16px;border-radius:8px;border:1px solid #e5e7eb;background:#f9fafb;gap:0;transition:box-shadow .15s}.visa-card[data-v-9b7485da]:hover{box-shadow:0 2px 8px #00000012}.visa-card--valid[data-v-9b7485da]{border-color:#86efac;background:#f0fdf4}.visa-card--expiring_soon[data-v-9b7485da]{border-color:#fdba74;background:#fff7ed}.visa-card--expired[data-v-9b7485da]{border-color:#fca5a5;background:#fef2f2}.visa-card--pending[data-v-9b7485da]{border-color:#93c5fd;background:#eff6ff}.visa-card-main[data-v-9b7485da]{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.visa-card-body[data-v-9b7485da]{flex:1;display:flex;flex-direction:column;gap:4px}.visa-card-top[data-v-9b7485da]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.visa-country[data-v-9b7485da]{font-weight:600;font-size:15px;color:#111827}.visa-type-tag[data-v-9b7485da]{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;background:#e5e7eb;color:#374151;text-transform:uppercase;letter-spacing:.04em}.visa-selected-badge[data-v-9b7485da]{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;background:#dbeafe;color:#1d4ed8}.visa-dates[data-v-9b7485da]{font-size:13px;color:#6b7280}.visa-dates--pending[data-v-9b7485da]{color:#93c5fd;font-style:italic}.visa-ref[data-v-9b7485da]{font-size:12px;color:#9ca3af}.visa-notes[data-v-9b7485da]{font-size:12px;color:#6b7280;font-style:italic}.invitation-letter-row[data-v-9b7485da]{display:inline-flex;align-items:center;gap:6px;background:#fefce8;border:1px solid #fde68a;border-radius:5px;padding:3px 10px;font-size:12px;margin-top:2px}.invitation-letter-icon[data-v-9b7485da]{font-size:13px}.invitation-letter-text[data-v-9b7485da]{color:#92400e;font-weight:500}.invitation-letter-view[data-v-9b7485da]{background:none;border:none;color:#d97706;cursor:pointer;font-size:12px;font-weight:600;padding:0;text-decoration:underline}.invitation-letter-view[data-v-9b7485da]:hover{color:#b45309}.visa-request-tag[data-v-9b7485da]{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;background:#dbeafe;color:#1d4ed8}.visa-card-aside[data-v-9b7485da]{display:flex;align-items:center;gap:10px;flex-shrink:0}.visa-badge[data-v-9b7485da]{font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px;white-space:nowrap}.visa-badge--valid[data-v-9b7485da]{background:#dcfce7;color:#16a34a}.visa-badge--pending[data-v-9b7485da]{background:#dbeafe;color:#1d4ed8}.visa-badge--expiring_soon[data-v-9b7485da]{background:#ffedd5;color:#ea580c}.visa-badge--expired[data-v-9b7485da]{background:#fee2e2;color:#dc2626}.checklist-mini-progress[data-v-9b7485da]{font-size:11px;font-weight:600;padding:3px 8px;border-radius:12px;background:#f3f4f6;color:#374151}.visa-edit-btn[data-v-9b7485da]{background:none;border:none;cursor:pointer;font-size:14px;padding:4px 6px;border-radius:4px;transition:background .2s;opacity:.6}.visa-edit-btn[data-v-9b7485da]:hover{background:#eff6ff;opacity:1}.visa-del-btn[data-v-9b7485da]{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:14px;padding:4px 6px;border-radius:4px;transition:color .2s,background .2s}.visa-del-btn[data-v-9b7485da]:hover{color:#dc2626;background:#fee2e2}.visa-form-title[data-v-9b7485da]{font-size:14px;font-weight:600;color:#111827;margin-bottom:14px}.visa-form-box[data-v-9b7485da]{border:1px solid #e5e7eb;border-radius:8px;padding:16px;background:#f9fafb;margin-top:12px}.visa-form-grid[data-v-9b7485da]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.field-group[data-v-9b7485da]{display:flex;flex-direction:column;gap:5px}.field-group.full[data-v-9b7485da]{grid-column:1 / -1}.field-group label[data-v-9b7485da]{font-size:13px;font-weight:500;color:#374151}.field-group input[data-v-9b7485da],.field-group select[data-v-9b7485da]{padding:9px 11px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;background:#fff}.field-group input[data-v-9b7485da]:focus,.field-group select[data-v-9b7485da]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-actions[data-v-9b7485da]{display:flex;gap:10px;justify-content:flex-end}.btn-primary[data-v-9b7485da]{padding:8px 16px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary[data-v-9b7485da]:hover{background:#1d4ed8}.btn-cancel[data-v-9b7485da]{padding:8px 16px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:13px;cursor:pointer}.btn-cancel[data-v-9b7485da]:hover{background:#f3f4f6}.btn-save[data-v-9b7485da]{padding:8px 18px;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.btn-save[data-v-9b7485da]:hover:not(:disabled){background:#15803d}.btn-save[data-v-9b7485da]:disabled{opacity:.6;cursor:not-allowed}.manual-layout[data-v-c73fd74d]{display:flex;min-height:calc(100vh - 64px);margin:-32px;background:#f8fafc}.manual-sidebar[data-v-c73fd74d]{width:260px;min-width:260px;background:#1e293b;color:#fff;display:flex;flex-direction:column;padding:0}.sidebar-header[data-v-c73fd74d]{display:flex;align-items:center;gap:10px;padding:24px 20px 16px;border-bottom:1px solid rgba(255,255,255,.1);font-size:16px;font-weight:700;letter-spacing:.3px}.sidebar-icon[data-v-c73fd74d]{font-size:20px}.sidebar-title[data-v-c73fd74d]{font-size:15px;font-weight:600}.sidebar-nav[data-v-c73fd74d]{padding:12px 0;flex:1;overflow-y:auto}.sidebar-item[data-v-c73fd74d]{display:flex;align-items:center;gap:10px;width:100%;padding:10px 20px;background:none;border:none;color:#ffffffb3;font-size:14px;font-weight:500;cursor:pointer;text-align:left;transition:background .15s,color .15s;border-left:3px solid transparent}.sidebar-item[data-v-c73fd74d]:hover{background:#ffffff14;color:#fff}.sidebar-item.active[data-v-c73fd74d]{background:#3b82f626;color:#60a5fa;border-left-color:#3b82f6}.sidebar-item-icon[data-v-c73fd74d]{font-size:16px}.manual-content[data-v-c73fd74d]{flex:1;padding:40px 56px;overflow-y:auto;max-width:900px}.section-title[data-v-c73fd74d]{font-size:28px;font-weight:700;color:#0f172a;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.section-content[data-v-c73fd74d] h2{font-size:20px;font-weight:700;color:#1e293b;margin:32px 0 12px}.section-content[data-v-c73fd74d] h3{font-size:16px;font-weight:600;color:#334155;margin:24px 0 10px}.section-content[data-v-c73fd74d] p{color:#475569;line-height:1.7;margin-bottom:12px}.section-content[data-v-c73fd74d] p.lead{font-size:16px;color:#334155;line-height:1.75;margin-bottom:28px}.section-content[data-v-c73fd74d] ul{margin:0 0 16px;padding-left:20px}.section-content[data-v-c73fd74d] ul li{color:#475569;line-height:1.7;margin-bottom:6px}.section-content[data-v-c73fd74d] strong{color:#1e293b;font-weight:600}.section-content[data-v-c73fd74d] table{width:100%;border-collapse:collapse;margin:12px 0 24px;font-size:14px}.section-content[data-v-c73fd74d] thead tr{background:#f1f5f9}.section-content[data-v-c73fd74d] th{text-align:left;padding:10px 14px;color:#64748b;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e2e8f0}.section-content[data-v-c73fd74d] td{padding:10px 14px;color:#374151;border-bottom:1px solid #e2e8f0;vertical-align:top}.section-content[data-v-c73fd74d] tbody tr:last-child td{border-bottom:none}.section-content[data-v-c73fd74d] tbody tr:hover{background:#f8fafc}.section-content[data-v-c73fd74d] .badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600}.section-content[data-v-c73fd74d] .badge-green{background:#dcfce7;color:#16a34a}.section-content[data-v-c73fd74d] .badge-gray{background:#f1f5f9;color:#64748b}.section-content[data-v-c73fd74d] .badge-red{background:#fee2e2;color:#991b1b}.section-content[data-v-c73fd74d] .badge-blue{background:#dbeafe;color:#1e40af}.section-content[data-v-c73fd74d] .badge-yellow{background:#fef3c7;color:#92400e}
