body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body,html{height:100%;margin:0;padding:0;width:100%}#root{display:flex;flex-direction:column;height:100%}.recruitment-form-container{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:900px;padding:20px;position:relative}.loading-overlay{align-items:center;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.loading-modal{background-color:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-width:400px;padding:40px;text-align:center}.loading-modal h3{color:#2c3e50;font-size:24px;margin:20px 0 10px}.loading-modal p{color:#7f8c8d;font-size:16px;margin:0}.loading-spinner{animation:spin .8s ease-in-out infinite;border:2px solid #fff;border-top-color:#0000;display:inline-block;height:16px;margin-right:8px;width:16px}.loading-spinner-large{animation:spin 1s ease-in-out infinite;border:6px solid #ecf0f1;border-radius:50%;border-top-color:#3498db;height:60px;margin:0 auto 20px;width:60px}.submit-button.loading{cursor:not-allowed;opacity:.8}.recruitment-form-container h1{color:#2c3e50;font-size:28px;margin-bottom:20px;text-align:center}.form-instruction{color:#7f8c8d;margin-bottom:30px;text-align:center}.recruitment-form{display:flex;flex-direction:column;gap:30px}.form-section{border-radius:5px;box-shadow:0 1px 3px #0000001a}.form-section h2{font-size:20px}.form-section h3{color:#2c3e50;font-size:18px;margin-bottom:15px;margin-top:20px}.form-row{flex-wrap:wrap}.form-group{min-width:250px}.form-group input[type=date],.form-group input[type=email],.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;transition:border-color .3s;width:100%}.error-label{color:#e74c3c}.checkbox-group,.checkbox-group label{align-items:flex-start}.checkbox-group label{line-height:1.5}.checkbox-group input[type=checkbox]{margin-top:2px}.radio-group{display:flex;flex-wrap:wrap;gap:20px}.radio-group label{align-items:center;cursor:pointer;display:flex;gap:8px}.radio-group input[type=radio]{cursor:pointer;height:18px;width:18px}.address-copy{margin-bottom:10px}.copy-button{font-size:14px}.form-income-section,.form-member-section{background-color:#f8f9fa;border-left:3px solid #3498db;border-radius:5px;margin-bottom:20px;padding:15px}.add-button,.remove-button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-top:10px;padding:8px 15px;transition:background-color .3s}.add-button:hover{background-color:#2980b9}.remove-button{background-color:#e74c3c}.remove-button:hover{background-color:#c0392b}.submit-button{background-color:#3498db;min-width:200px}.submit-button:hover{background-color:#2980b9}.success-message{background-color:#d4edda;border-radius:4px;color:#155724;font-weight:700;margin-bottom:20px;padding:15px;text-align:center}@media (max-width:768px){.form-row{flex-direction:column;gap:10px}.form-group{min-width:100%}.radio-group{flex-direction:column;gap:10px}}.confirmation-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 20px #0000001a;margin:40px auto;max-width:800px;padding:30px;text-align:center}.confirmation-container.error{border-left:5px solid #e74c3c}.confirmation-icon{align-items:center;background-color:#2ecc711a;border-radius:50%;color:#2ecc71;display:flex;height:80px;justify-content:center;margin:0 auto 20px;width:80px}.confirmation-container h1{color:#2c3e50;font-size:28px;margin-bottom:30px}.confirmation-details{margin-bottom:40px;text-align:left}.highlight-text{color:#3498db;font-size:18px;font-weight:700;margin:10px 0}.confirmation-reference{background-color:#f8f9fa;border-radius:6px;margin:25px 0;padding:15px;text-align:center}.reference-number{color:#2c3e50;font-size:22px;font-weight:700;letter-spacing:1px}.next-steps{margin:30px 0}.next-steps h2{color:#3498db;font-size:22px;margin-bottom:20px;text-align:center}.next-steps ol{counter-reset:step-counter;list-style:none;padding:0}.next-steps li{display:flex;margin-bottom:25px;position:relative}.step-number{align-items:center;background-color:#3498db;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:36px;justify-content:center;margin-right:15px;width:36px}.step-content{flex:1 1}.step-content h3{color:#2c3e50;font-size:18px;margin-bottom:8px;margin-top:0}.step-content p{color:#7f8c8d;margin:0}.confirmation-contact{background-color:#f8f9fa;border-radius:6px;margin:30px 0;padding:20px;text-align:center}.confirmation-contact h2{color:#3498db;font-size:20px;margin-bottom:15px}.confirmation-contact a{color:#3498db;font-weight:500;text-decoration:none}.confirmation-contact a:hover{text-decoration:underline}.confirmation-actions{margin-top:30px}.back-button{display:inline-block;font-weight:700;padding:12px 25px}@media (max-width:768px){.confirmation-container{margin:20px;padding:20px}.confirmation-container h1{font-size:24px}.reference-number{font-size:18px}.next-steps li{flex-direction:column}.step-number{margin-bottom:10px;margin-right:0}}.admin-login-container{align-items:center;background-color:#f5f7fa;display:flex;justify-content:center;min-height:100vh;padding:20px}.login-form-wrapper{background-color:#fff;border-radius:8px;box-shadow:0 2px 20px #0000001a;max-width:400px;padding:30px;width:100%}.login-header{margin-bottom:30px;text-align:center}.login-header h2{color:#2c3e50;font-size:24px;margin-bottom:10px}.login-header p{color:#7f8c8d;font-size:14px}.login-error{align-items:center;background-color:#f8d7da;border-radius:4px;color:#721c24;display:flex;font-size:14px;margin-bottom:20px;padding:12px}.error-icon{font-size:16px;margin-right:10px}.admin-login-form .form-group{margin-bottom:20px}.admin-login-form label{color:#34495e;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.admin-login-form input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:12px;transition:border-color .3s;width:100%}.admin-login-form input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.login-button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:10px;padding:12px;transition:background-color .3s;width:100%}.login-button:hover{background-color:#2980b9}.login-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.admin-sidebar{background-color:#2c3e50;box-shadow:2px 0 10px #0000001a;color:#ecf0f1;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:width .3s;width:250px;z-index:1000}.admin-sidebar.collapsed{width:70px}.sidebar-header{border-bottom:1px solid #ffffff1a;height:60px;padding:0 20px}.sidebar-header,.sidebar-logo{align-items:center;display:flex}.sidebar-logo{width:100%}.logo-icon{align-items:center;background-color:#3498db;border-radius:6px;display:flex;flex-shrink:0;font-weight:700;height:32px;justify-content:center;margin-right:10px;width:32px}.logo-text{font-size:16px;font-weight:500;overflow:hidden;white-space:nowrap}.sidebar-nav{flex:1 1;overflow-y:auto;padding:20px 0}.nav-menu{list-style:none;margin:0;padding:0}.nav-item{margin-bottom:5px}.nav-link{align-items:center;border-radius:0;color:#ffffffb3;display:flex;padding:12px 20px;text-decoration:none;transition:all .3s}.admin-sidebar.collapsed .nav-link{justify-content:center;padding:12px}.nav-link:hover{background-color:#ffffff1a;color:#fff}.nav-link.active{background-color:#3498db;color:#fff}.nav-icon{align-items:center;display:flex;flex-shrink:0;height:24px;justify-content:center;margin-right:15px;width:24px}.admin-sidebar.collapsed .nav-icon{margin-right:0}.nav-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer{border-top:1px solid #ffffff1a;color:#ffffff80;font-size:12px;padding:15px 20px;text-align:center}@media (max-width:768px){.admin-sidebar{box-shadow:none}.admin-sidebar,.admin-sidebar.collapsed{transform:translateX(-100%)}.admin-sidebar.expanded{box-shadow:2px 0 10px #0000001a;transform:translateX(0);width:250px}}.admin-header{background-color:#fff;border-bottom:1px solid #ddd;box-shadow:0 1px 4px #0000000d;height:60px;justify-content:space-between;padding:0 20px}.admin-header,.header-left{align-items:center;display:flex}.sidebar-toggle{background:none;border:none;border-radius:4px;color:#555;cursor:pointer;margin-right:10px;padding:10px;transition:background-color .3s}.sidebar-toggle:hover{background-color:#f0f0f0}.header-title{color:#2c3e50;font-size:18px;font-weight:500}.header-right{align-items:center;display:flex}.user-dropdown{position:relative}.user-dropdown-toggle{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;padding:10px;transition:background-color .3s}.user-dropdown-toggle:hover{background-color:#f5f5f5}.user-avatar{align-items:center;background-color:#3498db;border-radius:50%;color:#fff;display:flex;font-weight:700;height:32px;justify-content:center;margin-right:10px;width:32px}.user-avatar.large{font-size:18px;height:48px;width:48px}.user-name{color:#333;margin-right:5px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown-menu{animation:dropdownFadeIn .2s;background-color:#fff;border-radius:4px;box-shadow:0 4px 12px #00000026;margin-top:5px;padding:10px 0;position:absolute;right:0;top:100%;width:280px;z-index:100}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-menu:before{background-color:#fff;box-shadow:-2px -2px 3px #0000000d;content:"";height:12px;position:absolute;right:20px;top:-6px;transform:rotate(45deg);width:12px}.user-info{background-color:#f8f9fa;border-bottom:1px solid #eee;display:flex;margin-bottom:5px;padding:15px}.user-details{margin-left:15px;overflow:hidden}.user-fullname{font-weight:700;margin-bottom:3px}.user-email{color:#666;font-size:13px;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{background-color:#3498db1a;border-radius:10px;color:#3498db;display:inline-block;font-size:12px;padding:2px 6px}.dropdown-divider{background-color:#eee;height:1px;margin:5px 0}.last-login{color:#7f8c8d;font-size:12px;padding:10px 15px}.last-login span{color:#333;font-weight:500}.dropdown-item{align-items:center;color:#333;cursor:pointer;display:flex;font-size:14px;padding:10px 15px;text-decoration:none;transition:background-color .3s}.dropdown-item:hover{background-color:#f5f5f5}.dropdown-item svg{flex-shrink:0;margin-right:10px}@media (max-width:768px){.admin-header{padding:0 10px}.header-title,.user-name{display:none}}.admin-layout{background-color:#f5f7fa;display:flex;min-height:100vh}.admin-main{display:flex;flex:1 1;flex-direction:column;margin-left:250px;transition:margin-left .3s}.admin-layout.sidebar-collapsed .admin-main{margin-left:70px}.admin-content{flex:1 1;overflow-y:auto;padding:20px}.admin-footer{background-color:#fff;border-top:1px solid #ddd;color:#7f8c8d;font-size:12px;padding:15px 20px;text-align:center}.admin-loading{align-items:center;background-color:#f5f7fa;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-radius:50%;border-top-color:#3498db;height:40px;margin-bottom:15px;width:40px}@media (max-width:768px){.admin-layout.sidebar-collapsed .admin-main,.admin-main{margin-left:0}.admin-content{padding:15px}}.dashboard-container{margin-bottom:30px}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.dashboard-header h1{color:#2c3e50;font-size:24px;margin:0}.dashboard-actions{display:flex;gap:10px}.refresh-button{align-items:center;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:background-color .3s}.refresh-button:hover{background-color:#e5e5e5}.stat-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:20px}.stat-card{background-color:#fff;box-shadow:0 2px 10px #0000000d;flex-direction:column;overflow:hidden;padding:20px;position:relative}.stat-card,.stat-card-icon{border-radius:8px;display:flex}.stat-card-icon{align-items:center;color:#fff;height:48px;justify-content:center;margin-bottom:10px;width:48px}.stat-card-icon.candidates{background-color:#3498db}.stat-card-icon.users{background-color:#e67e22}.stat-card-content h3{color:#7f8c8d;font-size:16px;margin:0 0 5px}.stat-card-value{color:#2c3e50;font-size:28px;font-weight:700;margin-bottom:5px}.stat-card-description{color:#95a5a6;font-size:14px}.stat-card-link{align-self:flex-start;color:#3498db;display:block;font-size:14px;margin-top:15px;text-decoration:none}.stat-card-link:hover{text-decoration:underline}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:20px}.dashboard-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;padding:20px}.dashboard-card h3{border-bottom:1px solid #ecf0f1;color:#2c3e50;font-size:18px;margin-bottom:20px;margin-top:0;padding-bottom:10px}.chart-container{height:100%;width:100%}.chart{height:250px;width:100%}.activity-list{max-height:300px;overflow-y:auto}.activity-item{align-items:flex-start;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:15px 0}.activity-item:last-child{border-bottom:none}.activity-avatar,.activity-user{align-items:center;display:flex}.activity-avatar{background-color:#3498db;border-radius:50%;color:#fff;font-weight:700;height:36px;justify-content:center;margin-right:10px;width:36px}.activity-user-details{display:flex;flex-direction:column}.activity-username{font-weight:500;margin-bottom:3px}.activity-timestamp{color:#95a5a6;font-size:12px}.activity-details{text-align:right}.activity-action{font-size:14px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-ip{color:#95a5a6;font-size:12px;margin-top:3px}.empty-activity{background-color:#f8f9fa;border-radius:4px;color:#7f8c8d;padding:30px;text-align:center}.quick-links{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.quick-link{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;color:#2c3e50;display:flex;padding:15px;text-decoration:none;transition:transform .3s,box-shadow .3s}.quick-link:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-5px)}.quick-link svg{color:#3498db;margin-right:10px}.dashboard-loading{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;display:flex;flex-direction:column;justify-content:center;padding:50px}.dashboard-loading .spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-radius:50%;border-top-color:#3498db;height:40px;margin-bottom:15px;width:40px}.dashboard-error{background-color:#f8d7da;border-radius:8px;box-shadow:0 2px 10px #0000000d;color:#721c24;padding:30px;text-align:center}.dashboard-error button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:15px;padding:8px 16px;transition:background-color .3s}.dashboard-error button:hover{background-color:#c82333}@media (max-width:992px){.dashboard-grid{grid-template-columns:1fr}}@media (max-width:768px){.stat-cards{grid-template-columns:1fr}.quick-links{grid-template-columns:1fr 1fr}}@media (max-width:576px){.quick-links{grid-template-columns:1fr}.dashboard-header{align-items:flex-start}.activity-item,.dashboard-header{flex-direction:column;gap:10px}.activity-details{text-align:left}}.candidates-list-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.filters-container{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:20px}.search-form{display:flex;flex:1 1;max-width:500px}.search-input{border-radius:4px 0 0 4px;border-right:none;flex:1 1;padding:10px}.search-button{background-color:#3498db;border:none;border-radius:0 4px 4px 0;color:#fff;cursor:pointer;padding:10px 15px;transition:background-color .3s}.search-button:hover{background-color:#2980b9}.filter-controls{display:flex;gap:10px}.status-filter{background-color:#fff;font-size:14px;padding:10px}.reset-filters,.status-filter{border:1px solid #ddd;border-radius:4px}.reset-filters{background-color:#f5f5f5;cursor:pointer;padding:10px 15px;transition:background-color .3s}.reset-filters:hover{background-color:#e5e5e5}.candidates-table-container{margin-bottom:20px;overflow-x:auto}.candidates-table{border-collapse:collapse;text-align:left;width:100%}.candidates-table th{background-color:#f8f9fa;border-bottom:2px solid #ddd;color:#2c3e50;font-weight:600;padding:12px 15px}.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable:hover{background-color:#eef2f7}.sort-icon{font-size:12px;margin-left:5px}.candidates-table td{border-bottom:1px solid #ecf0f1;padding:12px 15px}.candidates-table tr:hover{background-color:#f9f9f9}.candidate-name{color:#3498db;font-weight:500;text-decoration:none}.candidate-name:hover{text-decoration:underline}.email-link{color:#7f8c8d}.email-link:hover{color:#3498db}.status-cell{align-items:center;display:flex;justify-content:space-between}.status-badge{font-size:12px}.status-badge.signed{background-color:#9b59b6}.status-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-size:12px;margin-left:10px;padding:4px}.action-button.view{background-color:#3498db}.action-button.view:hover{background-color:#2980b9}.action-button.edit{background-color:#f39c12}.action-button.edit:hover{background-color:#d35400}.action-button.pdf{background-color:#e74c3c}.action-button.pdf:hover{background-color:#c0392b}.pagination{flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:20px}.loading-indicator,.pagination{align-items:center;display:flex}.loading-indicator{color:#7f8c8d;flex-direction:column;justify-content:center;padding:40px}.error-message{background-color:#f8d7da;border-radius:4px;color:#721c24;margin-bottom:20px;padding:15px;text-align:center}.error-message button{background-color:#dc3545;border-radius:4px;margin-top:10px;padding:8px 16px}.error-message button:hover{background-color:#c82333}.no-results{background-color:#f8f9fa;border-radius:4px;color:#7f8c8d;padding:30px;text-align:center}.company-cell{align-items:center;display:flex;justify-content:space-between}.company-badge{background-color:#9b59b6;border-radius:4px;color:#fff;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.company-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-size:12px;margin-left:10px;padding:4px}@media (max-width:992px){.filters-container{flex-direction:column}.search-form{margin-bottom:10px;max-width:100%}}@media (max-width:768px){.candidates-table td:nth-child(3),.candidates-table td:nth-child(4),.candidates-table th:nth-child(3),.candidates-table th:nth-child(4){display:none}.pagination{align-items:center;flex-direction:column}}.candidate-details-container{background-color:#f9f9f9;border-radius:8px;margin-bottom:20px;padding:0}.details-header{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.details-header h1{color:#2c3e50;font-size:24px;margin:0}.delete-button,.edit-button{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:8px 16px;transition:background-color .3s}.edit-button{background-color:#3498db;color:#fff;text-decoration:none}.edit-button:hover{background-color:#2980b9;text-decoration:none}.delete-button{background-color:#e74c3c;border:none;color:#fff}.delete-button:hover{background-color:#c0392b}.candidate-status{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;font-weight:500;margin-bottom:20px;padding:15px 20px}.status-badge{background-color:#95a5a6;border-radius:4px;color:#fff;display:inline-block;font-size:13px;font-weight:500;margin-left:10px;padding:4px 8px}.status-badge.new{background-color:#3498db}.status-badge.in-progress{background-color:#e67e22}.status-badge.accepted{background-color:#27ae60}.status-badge.rejected{background-color:#e74c3c}.details-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.details-card h2{border-bottom:1px solid #ecf0f1;color:#3498db;font-size:18px;margin-bottom:20px;margin-top:0;padding-bottom:10px}.details-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.detail-item{display:flex;flex-direction:column}.detail-item label{color:#7f8c8d;font-size:14px;margin-bottom:5px}.detail-item span{color:#2c3e50;font-size:16px}.detail-item a{color:#3498db;text-decoration:none}.detail-item a:hover{text-decoration:underline}.detail-longtext{margin-bottom:20px}.detail-longtext label{color:#7f8c8d;display:block;font-size:14px;margin-bottom:5px}.detail-longtext p{color:#2c3e50;font-size:16px;margin:0;white-space:pre-line}.pdf-section{display:flex;flex-direction:column}.pdf-actions{gap:15px;margin-bottom:15px}.pdf-button,.regenerate-button{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:8px 16px;transition:background-color .3s}.pdf-button{background-color:#e74c3c;color:#fff;text-decoration:none}.pdf-button:hover{background-color:#c0392b;text-decoration:none}.regenerate-button{background-color:#95a5a6;border:none;color:#fff}.regenerate-button:hover{background-color:#7f8c8d}.regenerate-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.pdf-info{margin-top:10px}.details-footer{justify-content:space-between;padding:15px 20px}.details-footer,.error-container,.loading-container,.not-found-container{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex}.error-container,.loading-container,.not-found-container{flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.error-container p{color:#721c24}.error-container button{background-color:#dc3545}.error-container button:hover{background-color:#c82333}@media (max-width:768px){.details-footer,.details-header{align-items:flex-start;flex-direction:column;gap:15px}.header-actions{width:100%}.back-button,.delete-button,.edit-button{justify-content:center;width:100%}.pdf-actions{flex-direction:column;width:100%}.pdf-button,.regenerate-button{justify-content:center;width:100%}.details-grid{grid-template-columns:1fr}}.candidate-form-container{background-color:#f9f9f9;border-radius:8px;margin-bottom:20px;padding:0}.candidate-form{display:flex;flex-direction:column;gap:20px}.form-section{padding:a20px}.form-section h2{border-bottom:1px solid #ecf0f1;color:#3498db;font-size:18px;margin-bottom:20px;margin-top:0;padding-bottom:10px}.form-row{display:flex;gap:20px;margin-bottom:15px}@media (max-width:768px){.form-row{flex-direction:column;gap:10px}}.form-group{flex:1 1;margin-bottom:15px}.form-group input[type=date],.form-group input[type=email],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#e74c3c}.checkbox-group,.checkbox-group label{align-items:center;display:flex}.checkbox-group label{cursor:pointer;gap:10px}.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.address-copy{display:flex;justify-content:flex-end;margin-bottom:5px}.copy-button{background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;padding:5px 10px;transition:background-color .3s}.copy-button:hover{background-color:#e0e0e0}@media (max-width:768px){.form-header{align-items:flex-start;flex-direction:column;gap:15px}.back-button{justify-content:center;width:100%}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.users-list-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.list-header h1{color:#2c3e50;font-size:24px;margin:0}.add-button{align-items:center;background-color:#27ae60;border-radius:4px;color:#fff;display:flex;font-weight:500;padding:8px 16px;text-decoration:none;transition:background-color .3s}.add-button:hover{background-color:#219653;text-decoration:none}.add-button svg{margin-right:8px}.users-table-container{margin-bottom:20px;overflow-x:auto}.users-table{border-collapse:collapse;text-align:left;width:100%}.users-table th{background-color:#f8f9fa;border-bottom:2px solid #ddd;color:#2c3e50;font-weight:600;padding:12px 15px}.users-table td{border-bottom:1px solid #ecf0f1;padding:12px 15px}.users-table tr:hover{background-color:#f9f9f9}.email-link{color:#3498db;text-decoration:none}.email-link:hover{text-decoration:underline}.role-badge{border-radius:4px;color:#fff;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.role-badge.admin{background-color:#e74c3c}.role-badge.user{background-color:#3498db}.action-buttons{display:flex;gap:8px}.action-button{align-items:center;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;transition:background-color .3s;width:28px}.action-button.edit{background-color:#3498db}.action-button.edit:hover{background-color:#2980b9}.action-button.reset{background-color:#f39c12}.action-button.reset:hover{background-color:#d35400}.action-button.delete{background-color:#e74c3c}.action-button.delete:hover{background-color:#c0392b}.modal-backdrop{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modal-appear .3s;background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;max-width:500px;width:100%}@keyframes modal-appear{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid #ecf0f1;padding:15px 20px}.modal-header h2{color:#2c3e50;font-size:20px;margin:0}.modal-body{padding:20px}.modal-body p{margin:0 0 15px}.modal-body .warning{color:#e74c3c;font-weight:700}.modal-body .note{color:#7f8c8d;font-size:14px;font-style:italic;margin-top:10px}.password-container{margin:15px 0}.password-container label{display:block;font-weight:500;margin-bottom:5px}.password-input-group{display:flex}.password-input-group input{border:1px solid #ddd;border-radius:4px 0 0 4px;border-right:none;flex:1 1;font-size:16px;padding:10px}.copy-password-btn{align-items:center;background-color:#f5f5f5;border:1px solid #ddd;border-left:none;border-radius:0 4px 4px 0;cursor:pointer;display:flex;padding:0 10px}.copy-password-btn:hover{background-color:#e0e0e0}.modal-footer{border-top:1px solid #ecf0f1;display:flex;gap:10px;justify-content:flex-end;padding:15px 20px}.btn-cancel,.btn-delete,.btn-reset{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .3s}.btn-cancel{background-color:#f5f5f5;border:1px solid #ddd;color:#333}.btn-cancel:hover{background-color:#e0e0e0}.btn-delete{background-color:#e74c3c;color:#fff}.btn-delete:hover{background-color:#c0392b}.btn-reset{background-color:#f39c12;color:#fff}.btn-reset:hover{background-color:#d35400}.btn-cancel:disabled,.btn-delete:disabled,.btn-reset:disabled{background-color:#bdc3c7;color:#7f8c8d;cursor:not-allowed}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.error-container p{color:#e74c3c;margin-bottom:20px}.error-container button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px;transition:background-color .3s}.error-container button:hover{background-color:#2980b9}@media (max-width:768px){.list-header{align-items:flex-start;flex-direction:column;gap:10px}.add-button{justify-content:center;width:100%}.users-table{font-size:14px}.users-table td:first-child,.users-table td:nth-child(5),.users-table th:first-child,.users-table th:nth-child(5){display:none}.modal-content{width:90%}}.user-form-container{background-color:#f9f9f9;border-radius:8px;margin-bottom:20px;padding:0}.form-header{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:20px}.error-alert{border-radius:4px;margin-bottom:20px;padding:15px;text-align:center}.user-form{display:flex;flex-direction:column;gap:20px}.form-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:20px}.form-group:last-child{margin-bottom:0}.form-group input[type=email],.form-group input[type=password],.form-group input[type=text],.form-group select{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.form-group input[disabled]{background-color:#f8f9fa;cursor:not-allowed}.form-group input.error,.form-group select.error{border-color:#e74c3c}.field-hint{color:#7f8c8d;font-size:13px;margin-top:5px}.form-actions{margin-top:20px;padding:20px}.form-actions,.loading-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}@media (max-width:768px){.form-header{align-items:flex-start;flex-direction:column;gap:15px}.back-button{justify-content:center;width:100%}.form-actions{flex-direction:column;width:100%}.cancel-button,.submit-button{width:100%}}.profile-container{margin:0 auto;max-width:800px}.profile-header{margin-bottom:20px}.profile-header h1{color:#2c3e50;font-size:24px;margin:0}.profile-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.profile-info{display:flex;margin-bottom:30px}.profile-avatar{align-items:center;background-color:#3498db;border-radius:50%;color:#fff;flex-shrink:0;font-size:32px;height:80px;margin-right:20px;width:80px}.profile-avatar,.profile-details{display:flex;justify-content:center}.profile-details{flex-direction:column}.profile-details h2{color:#2c3e50;font-size:24px;margin:0 0 5px}.profile-meta{align-items:center;display:flex;gap:15px;margin-bottom:5px}.profile-username{color:#7f8c8d;font-size:16px}.profile-role{background-color:#3498db;border-radius:10px;color:#fff;display:inline-block;font-size:12px;padding:3px 8px}.profile-email{color:#3498db;margin:5px 0 0}.profile-data{margin-bottom:30px}.data-row{border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:12px 0}.data-row:last-child{border-bottom:none}.data-label{color:#7f8c8d;font-weight:500}.data-value{color:#2c3e50}.profile-actions{display:flex;justify-content:center}.change-password-btn{align-items:center;background-color:#3498db;border-radius:4px;color:#fff;display:flex;font-weight:500;padding:10px 20px;text-decoration:none;transition:background-color .3s}.change-password-btn:hover{background-color:#2980b9;text-decoration:none}.change-password-btn svg{margin-right:8px}.profile-note{background-color:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:15px}.profile-note p{color:#7f8c8d;font-size:14px;margin:0}.profile-error,.profile-loading{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.profile-error button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:15px;padding:8px 16px;transition:background-color .3s}.profile-error button:hover{background-color:#2980b9}@media (max-width:576px){.profile-info{align-items:center;flex-direction:column;text-align:center}.profile-avatar{margin-bottom:15px;margin-right:0}.data-row,.profile-meta{flex-direction:column;gap:5px}}.change-password-container{margin:0 auto;max-width:600px}.form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.form-header h1{color:#2c3e50;font-size:24px;margin:0}.back-button{border-radius:4px;font-weight:500;padding:8px 16px}.back-button:hover{text-decoration:none}.error-alert,.success-alert{border-radius:4px;margin-bottom:20px;padding:15px;text-align:center}.error-alert{background-color:#f8d7da;color:#721c24}.success-alert{background-color:#d4edda;color:#155724}.form-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:20px}.form-card,.form-group{margin-bottom:20px}.form-group label{color:#34495e;display:block;font-weight:500;margin-bottom:5px}.form-group input[type=password]{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.error-message{color:#e74c3c;font-size:14px;margin-top:5px}.password-hint{color:#7f8c8d;font-size:13px;margin-top:5px}.form-actions{display:flex;gap:15px;justify-content:center;margin-top:30px}.submit-button{background-color:#27ae60;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px 30px;transition:background-color .3s}.submit-button:hover{background-color:#219653}.submit-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.cancel-button{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;display:inline-block;font-size:16px;font-weight:700;padding:12px 30px;text-align:center;text-decoration:none;transition:background-color .3s}.cancel-button:hover{background-color:#c0392b;text-decoration:none}.password-note{background-color:#f8f9fa;border-radius:8px;padding:15px}.password-note p{color:#2c3e50;margin-bottom:10px;margin-top:0}.password-note ul{margin:0;padding-left:20px}.password-note li{color:#7f8c8d;margin-bottom:5px}@media (max-width:576px){.form-header{align-items:flex-start;flex-direction:column;gap:15px}.back-button{justify-content:center;width:100%}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.pdf-files-container{padding:0 15px}.page-header{align-items:flex-start;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.header-content h1{color:#2c3e50;font-size:28px;margin:0 0 10px}.candidate-info h2{color:#34495e;font-size:20px;margin:0 0 5px}.candidate-id{color:#7f8c8d;font-size:14px}.header-actions{display:flex;gap:10px}.back-button{align-items:center;background-color:#3498db;border-radius:6px;color:#fff;display:flex;font-size:14px;gap:8px;padding:10px 16px;text-decoration:none;transition:background-color .3s}.back-button:hover{background-color:#2980b9}.back-button.secondary{background-color:#95a5a6}.back-button.secondary:hover{background-color:#7f8c8d}.files-sections{display:flex;flex-direction:column;gap:30px}.files-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.section-header{background-color:#f8f9fa;border-bottom:1px solid #ecf0f1;padding:20px}.section-header h3{color:#2c3e50;font-size:18px;margin:0 0 5px}.section-subtitle{color:#7f8c8d;font-size:14px;font-style:italic}.files-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.files-header h1{color:#2c3e50;font-size:24px;margin:0}.search-container{max-width:350px;position:relative;width:100%}.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 35px 10px 15px;transition:border-color .3s,box-shadow .3s;width:100%}.search-input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.clear-search{background:none;border:none;color:#95a5a6;cursor:pointer;font-size:18px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.clear-search:hover{color:#7f8c8d}.files-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:20px}.file-card{background-color:#fff;border:1px solid #ecf0f1;border-radius:8px;display:flex;flex-direction:column;overflow:hidden;transition:transform .3s,box-shadow .3s}.file-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.file-card.template-file{background:linear-gradient(135deg,#fff,#f8f4fd);border-left:4px solid #9b59b6}.file-icon{align-items:center;background-color:#f8f9fa;color:#e74c3c;display:flex;justify-content:center;padding:20px}.file-icon.template-icon{background-color:#f4f1f8;color:#9b59b6}.file-info{flex:1 1;padding:15px}.file-name{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 8px;word-break:break-word}.file-details{color:#7f8c8d;display:flex;flex-direction:column;font-size:13px;gap:4px;margin:0}.file-date,.file-size,.file-type{display:block}.file-actions{border-top:1px solid #ecf0f1;display:flex;justify-content:center;padding:15px}.download-button{align-items:center;background-color:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;text-decoration:none;transition:background-color .3s}.download-button:hover{background-color:#2980b9}.download-button.template-download{background-color:#9b59b6}.download-button.template-download:hover{background-color:#8e44ad}.pdf-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;overflow:hidden;transition:transform .3s,box-shadow .3s}.pdf-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-5px)}.pdf-icon{align-items:center;background-color:#f8f9fa;color:#e74c3c;display:flex;justify-content:center;padding:20px}.pdf-info{flex:1 1;padding:15px}.pdf-info h3{color:#2c3e50;font-size:18px;margin:0 0 10px}.pdf-date,.pdf-pesel{color:#7f8c8d;font-size:14px;margin:5px 0}.pdf-actions{border-top:1px solid #ecf0f1;display:flex;justify-content:space-around;padding:15px}.download-pdf,.view-candidate,.view-pdf{align-items:center;background-color:#f5f5f5;border-radius:50%;color:#2c3e50;display:flex;height:36px;justify-content:center;transition:background-color .3s,color .3s;width:36px}.view-pdf:hover{background-color:#3498db;color:#fff}.download-pdf:hover{background-color:#27ae60;color:#fff}.view-candidate:hover{background-color:#f39c12;color:#fff}.no-files{align-items:center;background-color:#f8f9fa;border-radius:12px;color:#7f8c8d;display:flex;flex-direction:column;justify-content:center;margin:20px;padding:60px 40px;text-align:center}.no-files-icon{margin-bottom:20px;opacity:.5}.no-files h3{color:#2c3e50;font-size:20px;margin:0 0 10px}.no-files p{font-size:14px;margin:0}.error-message,.loading-indicator{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;justify-content:center;margin:20px;padding:60px 40px;text-align:center}.error-message p,.loading-indicator p{color:#7f8c8d;font-size:16px;margin:0}.error-message button{background-color:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-top:15px;padding:10px 20px;transition:background-color .3s}.error-message button:hover{background-color:#2980b9}.pdf-files-error button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:15px;padding:8px 16px;transition:background-color .3s}.pdf-files-error button:hover{background-color:#2980b9}@media (max-width:768px){.pdf-files-container{padding:0 10px}.page-header{align-items:stretch;flex-direction:column;gap:20px}.header-actions{flex-direction:column;width:100%}.back-button{justify-content:center}.files-header{align-items:flex-start;flex-direction:column}.search-container{max-width:100%}.files-grid{grid-template-columns:1fr}.files-grid,.section-header{padding:15px}.section-header h3{font-size:16px}.error-message,.loading-indicator,.no-files{margin:15px;padding:40px 20px}}@media (max-width:480px){.file-card{margin-bottom:10px}.file-icon{padding:15px}.file-actions,.file-info{padding:12px}.download-button{font-size:13px;padding:8px 12px}}.audit-logs-container{margin-bottom:30px}.logs-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.logs-header h1{color:#2c3e50;font-size:24px;margin:0}.logs-filters{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.filters-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:20px}.filter-group{display:flex;flex-direction:column}.filter-group label{color:#34495e;font-weight:500;margin-bottom:5px}.filter-group input[type=date],.filter-group input[type=text]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.filter-group input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.filters-actions{display:flex;gap:10px;justify-content:flex-end}.filter-apply,.filter-reset{border-radius:4px;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .3s}.filter-apply{background-color:#3498db;border:none;color:#fff}.filter-apply:hover{background-color:#2980b9}.filter-reset{background-color:#f5f5f5;border:1px solid #ddd;color:#333}.filter-reset:hover{background-color:#e5e5e5}.logs-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;overflow-x:auto}.logs-table{border-collapse:collapse;width:100%}.logs-table td,.logs-table th{border-bottom:1px solid #ecf0f1;padding:12px 15px;text-align:left}.logs-table th{background-color:#f8f9fa;color:#2c3e50;font-weight:600}.logs-table tr:hover{background-color:#f9f9f9}.logs-table tr:last-child td{border-bottom:none}.user-username{color:#7f8c8d}.user-unknown{color:#95a5a6;font-style:italic}.log-action{white-space:nowrap}.log-action,.log-ip{font-family:monospace}.log-date{white-space:nowrap}.log-details{max-width:300px;overflow:hidden}.log-details-parsed{font-size:13px}.detail-item{margin-bottom:3px}.detail-key{font-weight:500;margin-right:5px}.detail-value,.log-details-raw{font-family:monospace;word-break:break-all}.log-details-raw{font-size:13px}.logs-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:20px}.pagination-info{color:#7f8c8d;font-size:14px}.pagination-controls{align-items:center;display:flex;gap:8px}.pagination-button{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:6px 12px;transition:all .3s}.pagination-button:hover:not(:disabled){background-color:#f5f5f5;border-color:#bbb}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination-current{color:#2c3e50;font-size:14px;margin:0 10px}.no-logs{background-color:#f8f9fa;color:#7f8c8d}.logs-error,.logs-loading,.no-logs{border-radius:8px;padding:40px;text-align:center}.logs-error,.logs-loading{align-items:center;background-color:#fff;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;justify-content:center}.spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-radius:50%;border-top-color:#3498db;height:40px;margin-bottom:15px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.logs-error p{color:#e74c3c;margin-bottom:20px}.logs-error button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px;transition:background-color .3s}.logs-error button:hover{background-color:#2980b9}@media (max-width:992px){.logs-table td:first-child,.logs-table td:nth-child(6),.logs-table th:first-child,.logs-table th:nth-child(6){display:none}}@media (max-width:768px){.logs-table td:nth-child(4),.logs-table th:nth-child(4){display:none}.filters-actions{flex-direction:column;width:100%}.filter-apply,.filter-reset{text-align:center;width:100%}.logs-pagination{align-items:center;flex-direction:column}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;color:#333;font-family:Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5}.app{flex-direction:column}.app,.loading{display:flex;min-height:100vh}.loading{align-items:center;background-color:#f5f7fa;color:#3498db;font-size:18px;justify-content:center}button,input,select,textarea{font-family:inherit}a{color:#3498db;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{color:#2c3e50;margin-bottom:.5rem}.container{margin:0 auto;max-width:1200px;padding:0 15px;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out forwards}@media (max-width:992px){.container{max-width:960px}}@media (max-width:768px){.container{max-width:720px}}@media (max-width:576px){.container{max-width:540px}}