body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{min-height:calc(100vh - 68px);display:flex;align-items:center;justify-content:center;padding:2rem;padding-top:68px;background:#fff}.login-card{background:linear-gradient(180deg,#244478,#1c2c48);border-radius:16px;box-shadow:0 10px 40px #2444784d;max-width:450px;width:100%;padding:3rem 2.5rem}.login-header{text-align:center;margin-bottom:2rem}.login-logo{max-width:200px;height:auto;margin:0 auto 1.5rem;display:block;filter:brightness(0) invert(1)}.login-title{font-family:Montserrat,sans-serif;font-size:1.3rem;font-weight:600;color:#fff;margin-bottom:.5rem}.login-subtitle{font-family:Mulish,sans-serif;font-size:1rem;color:#fffc}.login-form{margin-bottom:1.5rem}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:8px;padding:.75rem 1rem;margin-bottom:1.5rem;color:#c33;display:flex;align-items:center;gap:.5rem;font-family:Mulish,sans-serif;font-size:.875rem}.login-card .form-label{display:block;font-family:Mulish,sans-serif;font-size:.875rem;font-weight:600;color:#fff!important;margin-bottom:.5rem}.form-input{width:100%;padding:.875rem 1rem;font-family:Mulish,sans-serif;font-size:1rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff1a;color:#fff;transition:all .3s ease}.form-input::placeholder{color:#ffffff80}.form-input:focus{outline:none;border-color:#fff6;background:#ffffff26;box-shadow:0 0 0 3px #ffffff1a}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;font-family:Mulish,sans-serif;font-size:.875rem}.checkbox-label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.5rem;cursor:pointer;color:#fff!important;line-height:normal}.checkbox-label span{color:#fff!important;font-family:Mulish,sans-serif;line-height:16px}.login-card .checkbox-label,.login-card .checkbox-label span{color:#fff!important}.checkbox-input{cursor:pointer!important;accent-color:#4A90E2!important;width:16px!important;height:16px!important;margin:0!important;padding:0!important;flex-shrink:0!important;position:relative!important;top:0!important;vertical-align:middle!important}.forgot-password{color:#4a90e2;text-decoration:none;transition:color .3s ease}.forgot-password:hover{color:#6ba5eb}.login-button{width:100%;padding:1rem;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:600;color:#fff;background:#cb333b;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #cb333b66;background:#b52d34}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-footer{text-align:center;font-family:Mulish,sans-serif;font-size:.875rem;color:#ffffffb3}.login-footer a{color:#4a90e2;text-decoration:none;font-weight:600}.login-footer a:hover{text-decoration:underline;color:#6ba5eb}@media(max-width:768px){.login-container{padding:1rem;padding-top:68px}.login-card{padding:2rem 1.5rem}.login-title{font-size:1.2rem}.login-logo{max-width:150px}}.password-reset-container{min-height:calc(100vh - 68px);display:flex;align-items:center;justify-content:center;padding:2rem;padding-top:68px;background:#fff}.password-reset-card{background:linear-gradient(135deg,#0d1427,#1a2847);border-radius:16px;box-shadow:0 10px 40px #0d14274d;max-width:450px;width:100%;padding:3rem 2.5rem}.password-reset-header{text-align:center;margin-bottom:2rem}.password-reset-logo{max-width:200px;height:auto;margin:0 auto 1.5rem;display:block;filter:brightness(0) invert(1)}.password-reset-title{font-family:Montserrat,sans-serif;font-size:1.3rem;font-weight:600;color:#fff;margin-bottom:.5rem}.password-reset-subtitle{font-family:Mulish,sans-serif;font-size:1rem;color:#fffc;line-height:1.5}.password-reset-form,.password-reset-card .form-group{margin-bottom:1.5rem}.password-reset-card .form-label{display:block;font-family:Mulish,sans-serif;font-size:.875rem;font-weight:600;color:#fff!important;margin-bottom:.5rem}.password-reset-card .form-input{width:100%;padding:.875rem 1rem;font-family:Mulish,sans-serif;font-size:1rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff1a;color:#fff;transition:all .3s ease}.password-reset-card .form-input::placeholder{color:#ffffff80}.password-reset-card .form-input:focus{outline:none;border-color:#fff6;background:#ffffff26;box-shadow:0 0 0 3px #ffffff1a}.code-input{text-align:center;font-size:1.5rem;letter-spacing:.5rem;font-weight:700}.password-reset-button{width:100%;padding:1rem;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:600;color:#0d1427;background:linear-gradient(135deg,#fff,#e8f2ff);border:none;border-radius:8px;cursor:pointer;transition:all .3s ease}.password-reset-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ffffff4d;background:linear-gradient(135deg,#fff,#d0e7ff)}.password-reset-button:disabled{opacity:.6;cursor:not-allowed}.password-reset-footer{text-align:center;margin-top:1.5rem}.back-to-login{font-family:Mulish,sans-serif;font-size:.875rem;color:#4a90e2;text-decoration:none;transition:color .3s ease}.back-to-login:hover{color:#6ba5eb;text-decoration:underline}.error-message{background-color:#ff646433;border:1px solid rgba(255,100,100,.4);border-radius:8px;padding:.75rem 1rem;margin-bottom:1.5rem;color:#fcc;display:flex;align-items:center;gap:.5rem;font-family:Mulish,sans-serif;font-size:.875rem}.error-message svg{flex-shrink:0}.success-message{text-align:center;padding:2rem 0}.success-message svg{color:#4caf50;margin-bottom:1rem}.success-message h2{font-family:Montserrat,sans-serif;font-size:1.5rem;color:#fff;margin-bottom:1rem}.success-message p{font-family:Mulish,sans-serif;font-size:1rem;color:#fffc;margin-bottom:.5rem}.redirect-message{font-size:.875rem;color:#fff9;font-style:italic;margin-top:1rem}@media(max-width:768px){.password-reset-container{padding:1rem;padding-top:68px}.password-reset-card{padding:2rem 1.5rem}.password-reset-title{font-size:1.2rem}.password-reset-logo{max-width:150px}.code-input{font-size:1.2rem;letter-spacing:.3rem}}.public-register-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.public-register-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%;padding:2.5rem}.register-header{text-align:center;margin-bottom:2rem}.register-logo{width:100%;max-width:240px;margin:0 auto;height:auto;margin-bottom:1.5rem}.register-header h2{font-size:1.75rem;font-weight:700;color:#1a202c;margin-bottom:.5rem}.register-subtitle{color:#718096;font-size:.95rem}.register-info{background:#f7fafc;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.info-item{padding:.5rem 0;color:#2d3748;font-size:.95rem}.info-item strong{color:#1a202c;margin-right:.5rem}.register-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:#2d3748;font-size:.95rem}.form-group input[type=text],.form-group input[type=password]{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s}.form-group input[type=text]:focus,.form-group input[type=password]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group small{color:#718096;font-size:.85rem}.file-upload-area{position:relative}.file-upload-area input[type=file]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.file-upload-label{display:flex;align-items:center;gap:.75rem;padding:1rem;border:2px dashed #cbd5e0;border-radius:8px;background:#f7fafc;cursor:pointer;transition:all .2s;color:#4a5568}.file-upload-label:hover{border-color:#667eea;background:#edf2f7}.file-upload-label svg{width:24px;height:24px;color:#667eea}.btn-register{padding:.875rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:.5rem}.btn-register:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px #667eea66}.btn-register:disabled{opacity:.6;cursor:not-allowed}.register-error-alert{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fff5f5;border:1px solid #fc8181;border-radius:8px;color:#c53030;font-size:.95rem}.register-error-alert svg{width:20px;height:20px;flex-shrink:0}.register-spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin:2rem auto}.register-error-icon,.register-success-icon{width:80px;height:80px;margin:0 auto 1.5rem}.register-error-icon svg{width:100%;height:100%;color:#f56565}.register-success-icon svg{width:100%;height:100%;color:#48bb78}.error-message{color:#e53e3e;text-align:center;margin:1rem 0}.redirect-message{color:#718096;text-align:center;margin-top:1rem;font-size:.9rem}.btn-back-login{margin-top:1.5rem;padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer;width:100%;transition:background .2s}.btn-back-login:hover{background:#5568d3}@media(max-width:768px){.form-grid{grid-template-columns:1fr}}@media(max-width:640px){.public-register-container{padding:1rem}.public-register-card{padding:1.5rem}.register-header h2{font-size:1.5rem}}.dashboard2-container{max-width:1200px;margin:0 auto;padding:2rem}.welcome-section-h{position:relative;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:3rem 2rem;margin-bottom:3rem;color:#fff;box-shadow:0 8px 24px #667eea33}.welcome-close-btn{position:absolute;top:1rem;right:1rem;background:#fff3;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;padding:0}.welcome-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.welcome-close-btn svg{width:20px;height:20px;stroke:#fff;stroke-width:2.5}.welcome-content-h{max-width:900px;margin:0 auto;text-align:center}.welcome-title-h{font-family:Trajan Sans Pro,Trajan Sans Pro,serif;font-size:2.5rem;font-weight:700;margin-bottom:1.5rem;color:#fff}.welcome-text-h{font-family:Mulish,sans-serif;font-size:1.125rem;line-height:1.8;color:#fffffff2;margin:0}.services-section-h{margin-bottom:2rem}.section-heading-h{font-family:Trajan Sans Pro,Trajan Sans Pro,serif;font-size:1.75rem;font-weight:600;color:#2d3748;margin-bottom:2rem;text-align:center}.services-grid-h{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.service-card-h{display:flex;flex-direction:row;align-items:center;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:all .3s ease;cursor:pointer;border:2px solid transparent;min-height:120px}.service-card-h:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}.service-card-h.featured-h{background:linear-gradient(135deg,#244478,#1c2c48);border:2px solid #1E3A5F}.service-card-h.featured-h:hover{box-shadow:0 8px 24px #24447866}.service-card-h.featured-h .service-icon-h{background:#fff3;color:#fff}.card-left-h{flex-shrink:0;margin-right:1.25rem}.service-icon-h{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:12px;transition:transform .3s ease}.service-card-h:hover .service-icon-h{transform:scale(1.1)}.service-icon-h svg{width:28px;height:28px;stroke-width:2}.service-icon-h.color-blue{background:#4299e11a;color:#3182ce}.service-icon-h.color-purple{background:#9f7aea1a;color:#805ad5}.service-icon-h.color-green{background:#48bb781a;color:#38a169}.service-icon-h.color-coral{background:#fc81811a;color:#e53e3e}.service-icon-h.color-orange{background:#ed89361a;color:#dd6b20}.service-icon-h.color-teal{background:#38b2ac1a;color:#319795}.service-icon-h.color-indigo{background:#667eea1a;color:#5a67d8}.card-content-h{flex:1;min-width:0;margin-right:1.25rem}.service-title-h{font-family:Trajan Sans Pro,Trajan Sans Pro,serif;font-size:1.125rem;font-weight:600;color:#2d3748;margin:0 0 .5rem}.service-card-h.featured-h .service-title-h{color:#fff}.service-description-h{font-family:Mulish,sans-serif;font-size:.875rem;color:#718096;line-height:1.5;margin:0}.service-card-h.featured-h .service-description-h{color:#ffffffe6}.card-right-h{flex-shrink:0;display:flex;flex-direction:column;gap:.5rem}.service-button-h{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;background:#244478;color:#fff;border:none;border-radius:8px;font-family:Mulish,sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;min-width:110px}.service-button-h:hover{background:#1c2c48;transform:translate(2px)}.service-button-h svg{width:16px;height:16px;stroke-width:2.5}.service-button-h.btn-featured{background:linear-gradient(135deg,#f093fb,#f5576c)}.service-button-h.btn-featured:hover{background:linear-gradient(135deg,#e082ea,#e4465b)}.service-button-h.btn-cv{background:#cb333b!important}.service-button-h.btn-cv:hover{background:#a82930!important}.service-card-h.color-blue:hover{border-color:#4299e14d}.service-card-h.color-purple:hover{border-color:#9f7aea4d}.service-card-h.color-green:hover{border-color:#48bb784d}.service-card-h.color-coral:hover{border-color:#fc81814d}.service-card-h.color-orange:hover{border-color:#ed89364d}.service-card-h.color-teal:hover{border-color:#38b2ac4d}.service-card-h.color-indigo:hover{border-color:#667eea4d}@media(max-width:1024px){.dashboard2-container{padding:1.5rem}}@media(max-width:768px){.dashboard2-container{padding:1rem}.services-grid-h{grid-template-columns:1fr}.welcome-section-h{padding:2rem 1.5rem;margin-bottom:2rem}.welcome-close-btn{top:.75rem;right:.75rem}.welcome-title-h{font-size:1.75rem}.welcome-text-h{font-size:1rem}.service-card-h{flex-direction:column;align-items:flex-start;padding:1.5rem}.card-left-h,.card-content-h{margin-right:0;margin-bottom:1rem}.card-right-h,.service-button-h{width:100%}}@media(max-width:480px){.welcome-title-h,.section-heading-h{font-size:1.5rem}.service-title-h{font-size:1.125rem}.service-description-h{font-size:.875rem}}.admin-layout{display:flex;min-height:100vh;background:#f8f9fa}.admin-sidebar{width:260px;background:linear-gradient(180deg,#0d1427,#1a509d);color:var(--neutral-white);position:fixed;left:0;top:0;bottom:0;display:flex;flex-direction:column;transition:all .3s ease;z-index:1000;box-shadow:2px 0 10px #0000001a}.admin-sidebar.collapsed{width:70px}.sidebar-header{padding:1.25rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-logo{display:flex;align-items:center;gap:.75rem;font-family:var(--font-heading);font-size:1.25rem;font-weight:700}.sidebar-logo-img{width:28px;height:28px;flex-shrink:0;object-fit:contain}.sidebar-toggle{background:#ffffff1a;border:none;border-radius:6px;padding:.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.sidebar-toggle:hover{background:#fff3}.sidebar-toggle svg{width:20px;height:20px;stroke:var(--neutral-white)}.admin-sidebar.collapsed .sidebar-toggle{margin-left:auto}.sidebar-nav{flex:1;padding:1.5rem 0;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:.875rem;padding:.875rem 1.25rem;color:#fffc;text-decoration:none;transition:all .3s ease;font-size:.95rem;font-weight:500;border-left:3px solid transparent}.admin-sidebar.collapsed .nav-item{justify-content:center;padding:.875rem .5rem}.nav-item svg{width:22px;height:22px;stroke:currentColor;flex-shrink:0}.nav-item:hover{background:#ffffff1a;color:var(--neutral-white)}.nav-item.active{background:#ffffff26;color:var(--neutral-white);border-left-color:var(--accent-coral);font-weight:600}.nav-divider{height:1px;background:#ffffff1a;margin:1rem 1.25rem}.admin-sidebar.collapsed .nav-divider{margin:1rem .5rem}.admin-main{flex:1;margin-left:260px;transition:all .3s ease;display:flex;flex-direction:column;min-height:100vh;background:#f8f9fa}.admin-sidebar.collapsed+.admin-main{margin-left:70px}.admin-header{background:var(--neutral-white);border-bottom:1px solid #E9ECEF;position:sticky;top:0;z-index:900;box-shadow:0 2px 4px #0000000a}.admin-header-content{display:flex;justify-content:space-between;align-items:center;padding:.875rem 2rem}.header-left{flex:1}.page-title{font-family:var(--font-heading);font-size:1.35rem;color:var(--deep-navy);margin:0;font-weight:600}.header-right{display:flex;align-items:center;gap:1.5rem}.user-menu-trigger{display:flex;align-items:center;gap:.75rem;background:#f8f9fa;border:1px solid #E9ECEF;border-radius:8px;padding:.5rem .875rem;cursor:pointer;transition:all .3s ease}.user-menu-trigger:hover{background:#e9ecef;border-color:var(--primary-navy)}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#1a509d,#0d1427);display:flex;align-items:center;justify-content:center;color:var(--neutral-white);font-weight:700;font-size:.95rem}.user-info{display:flex;flex-direction:column;align-items:flex-start}.admin-layout .user-name{font-size:.9rem;font-weight:600;color:#212529!important;line-height:1.2}.user-role{font-size:.75rem;color:var(--neutral-gray);line-height:1.2}.user-menu-trigger .chevron{width:16px;height:16px;stroke:var(--neutral-gray);transition:transform .3s ease}.user-dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;background:var(--neutral-white);border:1px solid #E9ECEF;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:220px;z-index:1000;overflow:hidden}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;color:var(--deep-navy);text-decoration:none;font-size:.9rem;transition:all .3s ease;border:none;background:none;width:100%;text-align:left;cursor:pointer;font-family:var(--font-body)}.dropdown-item svg{width:18px;height:18px;stroke:var(--neutral-gray);flex-shrink:0}.dropdown-item:hover{background:#f8f9fa}.dropdown-item.logout{color:#dc3545}.dropdown-item.logout svg{stroke:#dc3545}.dropdown-divider{height:1px;background:#e9ecef;margin:.5rem 0}.admin-content{flex:1;padding:2rem;background:#f8f9fa}.admin-dashboard-container,.admin-courses-container{padding-top:0!important}@media(max-width:1024px){.admin-sidebar,.admin-sidebar.collapsed{transform:translate(-100%)}.admin-main{margin-left:0}.admin-sidebar.collapsed+.admin-main{margin-left:0}.user-info{display:none}.admin-header-content{padding:.75rem 1rem}.admin-content{padding:1.5rem 1rem}}@media(max-width:768px){.page-title{font-size:1.15rem}.admin-content{padding:1rem}.user-name{display:none}}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:#ffffff0d}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.admin-dashboard-container{min-height:100%;background:transparent;padding:0}.admin-welcome-section{max-width:1400px;margin:0 auto 2rem}.admin-welcome-content{background:linear-gradient(135deg,#1a509d,#0d1427);padding:2.5rem 3rem;border-radius:16px;color:var(--neutral-white);box-shadow:0 4px 20px #1a509d4d}.admin-title{font-family:var(--font-heading);font-size:2.5rem;margin-bottom:.5rem;color:var(--neutral-white)}.admin-subtitle{font-size:1.1rem;opacity:.9;margin:0}.admin-stats-section{max-width:1400px;margin:0 auto 3rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.stat-card{background:var(--neutral-white);padding:2rem;border-radius:12px;box-shadow:0 2px 12px #00000014;display:flex;align-items:center;gap:1.5rem;transition:all .3s ease;border:2px solid transparent}.stat-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px #0000001f;border-color:var(--primary-navy)}.stat-icon{width:60px;height:60px;background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon svg{width:30px;height:30px;stroke:var(--neutral-white)}.stat-info{flex:1}.stat-label{font-size:.9rem;color:var(--neutral-gray);margin:0 0 .5rem;font-weight:500}.stat-value{font-family:var(--font-heading);font-size:2rem;color:var(--deep-navy);margin:0;font-weight:700}.admin-management-section{max-width:1400px;margin:0 auto 3rem}.section-title{font-family:var(--font-heading);font-size:1.75rem;color:var(--deep-navy);margin-bottom:1.5rem}.management-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.management-card{background:var(--neutral-white);border-radius:16px;padding:2.5rem 2rem;text-align:center;box-shadow:0 2px 12px #00000014;transition:all .3s ease;border:2px solid transparent;display:flex;flex-direction:column;align-items:center}.management-card:hover{transform:translateY(-8px);box-shadow:0 8px 24px #0000001f;border-color:var(--primary-navy)}.management-icon{margin-bottom:1.5rem;height:80px;width:80px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:16px}.management-icon svg{width:45px;height:45px;stroke:var(--neutral-white)}.management-title{font-family:var(--font-heading);font-size:1.35rem;margin-bottom:.875rem;color:var(--deep-navy);font-weight:600}.management-description{font-size:.95rem;line-height:1.6;color:var(--neutral-gray);margin-bottom:1.75rem;flex-grow:1}.management-button{display:inline-block;background:var(--primary-navy);color:var(--neutral-white);padding:.875rem 2rem;border-radius:8px;text-decoration:none;font-family:var(--font-body);font-weight:600;font-size:.95rem;transition:all .3s ease}.management-button:hover{background:var(--deep-navy);transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.admin-quick-actions{max-width:1400px;margin:0 auto}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.quick-action-btn{background:var(--accent-coral);color:var(--neutral-white);padding:1.25rem 1.5rem;border:none;border-radius:12px;font-family:var(--font-body);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.75rem;box-shadow:0 2px 12px #cb333b33}.quick-action-btn svg{width:20px;height:20px;stroke:var(--neutral-white)}.quick-action-btn:hover{background:#b02a31;transform:translateY(-4px);box-shadow:0 6px 20px #cb333b4d}@media(max-width:1024px){.stats-grid,.management-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.admin-dashboard-container{padding:100px 1rem 2rem}.admin-welcome-content{padding:2rem 1.5rem}.admin-title{font-size:2rem}.admin-subtitle{font-size:1rem}.stats-grid{grid-template-columns:1fr}.management-grid{grid-template-columns:1fr;gap:1.5rem}.quick-actions-grid{grid-template-columns:1fr}}@media(max-width:480px){.admin-title{font-size:1.75rem}.stat-card{padding:1.5rem}.stat-icon{width:50px;height:50px}.stat-icon svg{width:25px;height:25px}.stat-value{font-size:1.75rem}.management-card{padding:2rem 1.5rem}.management-icon{height:70px;width:70px}.management-icon svg{width:40px;height:40px}}.toast{position:fixed;top:20px;right:20px;min-width:300px;max-width:500px;padding:1rem 1.25rem;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;gap:.75rem;z-index:10000;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{width:24px;height:24px;flex-shrink:0}.toast-icon svg{width:100%;height:100%}.toast-message{flex:1;font-size:.95rem;line-height:1.4;color:#333}.toast-close{width:20px;height:20px;flex-shrink:0;background:none;border:none;cursor:pointer;padding:0;color:#666;transition:color .2s}.toast-close:hover{color:#333}.toast-close svg{width:100%;height:100%}.toast-success{border-left:4px solid #10b981}.toast-success .toast-icon{color:#10b981}.toast-error{border-left:4px solid #ef4444}.toast-error .toast-icon{color:#ef4444}.toast-warning{border-left:4px solid #f59e0b}.toast-warning .toast-icon{color:#f59e0b}.toast-info{border-left:4px solid #3b82f6}.toast-info .toast-icon{color:#3b82f6}.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast-container .toast{pointer-events:all}@media(max-width:768px){.toast{min-width:280px;max-width:calc(100vw - 40px);right:20px;left:20px;margin:0 auto}.toast-container{left:20px;right:20px}}.admin-courses-container{min-height:100%;background:transparent;padding:0;max-width:1400px;margin:0 auto}.admin-courses-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2.5rem}.admin-courses-title{font-family:var(--font-heading);font-size:2.25rem;color:var(--deep-navy);margin:0 0 .5rem}.admin-courses-subtitle{font-size:1.05rem;color:var(--neutral-gray);margin:0}.btn-create{background:var(--accent-coral);color:var(--neutral-white);padding:.875rem 1.75rem;border:none;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 12px #cb333b33}.btn-create svg{width:20px;height:20px;stroke:var(--neutral-white)}.btn-create:hover{background:#b02a31;transform:translateY(-2px);box-shadow:0 4px 16px #cb333b4d}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.empty-state{grid-column:1 / -1;text-align:center;padding:4rem 2rem;background:var(--neutral-white);border-radius:16px;box-shadow:0 2px 12px #00000014}.empty-state svg{width:80px;height:80px;stroke:var(--neutral-gray);opacity:.5;margin-bottom:1.5rem}.empty-state p{font-size:1.15rem;color:var(--neutral-gray);margin-bottom:1.5rem}.btn-create-small{background:var(--primary-navy);color:var(--neutral-white);padding:.75rem 1.5rem;border:none;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease}.btn-create-small:hover{background:var(--deep-navy);transform:translateY(-2px)}.course-card{background:var(--neutral-white);border-radius:16px;padding:2rem;box-shadow:0 2px 12px #00000014;transition:all .3s ease;border:2px solid transparent;display:flex;flex-direction:column}.course-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px #0000001f;border-color:var(--primary-navy)}.course-card.inactive{opacity:.6}.course-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.course-title{font-family:var(--font-heading);font-size:1.35rem;color:var(--deep-navy);margin:0;flex:1}.course-status{flex-shrink:0}.badge{display:inline-block;padding:.35rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-active{background:#d4edda;color:#155724}.badge-inactive{background:#f8d7da;color:#721c24}.course-description{font-size:.95rem;line-height:1.6;color:var(--neutral-gray);margin-bottom:1.25rem}.course-meta{display:flex;flex-wrap:wrap;gap:1.25rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #E9ECEF}.meta-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--neutral-gray)}.meta-item svg{width:16px;height:16px;stroke:var(--primary-navy)}.course-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:auto}.btn-action{flex:1;min-width:100px;padding:.625rem 1rem;border:1px solid #DEE2E6;border-radius:6px;font-family:var(--font-body);font-weight:500;font-size:.85rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--neutral-white)}.btn-action svg{width:16px;height:16px}.btn-sections{color:var(--primary-navy);border-color:var(--primary-navy)}.btn-sections:hover{background:var(--primary-navy);color:var(--neutral-white)}.btn-sections:hover svg{stroke:var(--neutral-white)}.btn-sections svg{stroke:var(--primary-navy)}.btn-edit{color:#0d6efd;border-color:#0d6efd}.btn-edit:hover{background:#0d6efd;color:var(--neutral-white)}.btn-edit:hover svg{stroke:var(--neutral-white)}.btn-edit svg{stroke:#0d6efd}.btn-delete{color:#dc3545;border-color:#dc3545}.btn-delete:hover{background:#dc3545;color:var(--neutral-white)}.btn-delete:hover svg{stroke:var(--neutral-white)}.btn-delete svg{stroke:#dc3545}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.modal-content{background:var(--neutral-white);border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem 2rem 1.5rem;border-bottom:1px solid #E9ECEF}.modal-header h2{font-family:var(--font-heading);font-size:1.75rem;color:var(--deep-navy);margin:0}.btn-close{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border-radius:6px}.btn-close:hover{background:#f8f9fa}.btn-close svg{width:24px;height:24px;stroke:var(--neutral-gray)}.modal-form{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:var(--deep-navy);margin-bottom:.5rem;font-size:.95rem}.form-group input[type=text],.form-group input[type=url],.form-group input[type=number],.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid #DEE2E6;border-radius:8px;font-family:var(--font-body);font-size:.95rem;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-navy);box-shadow:0 0 0 3px #1a509d1a}.form-group small{display:block;margin-top:.5rem;font-size:.85rem;color:var(--neutral-gray)}.upload-field{display:flex;flex-direction:column;gap:.6rem}.upload-preview{position:relative;border-radius:8px;overflow:hidden;border:1px solid #DEE2E6;background:#f8f9fa}.upload-preview-image img{max-height:130px;max-width:100%;display:block;object-fit:cover}.upload-preview-video video{width:100%;max-height:160px;display:block;background:#000}.upload-preview-url{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.82rem;color:var(--neutral-gray);word-break:break-all}.upload-preview-url svg{width:16px;height:16px;fill:var(--primary-navy);flex-shrink:0}.upload-remove{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;background:#0000008c;color:#fff;border:none;cursor:pointer;font-size:.75rem;display:flex;align-items:center;justify-content:center;line-height:1;transition:background .2s}.upload-remove:hover{background:#dc3545d9}.upload-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;background:var(--primary-navy);color:#fff;border:none;border-radius:7px;font-family:var(--font-body);font-weight:600;font-size:.85rem;cursor:pointer;transition:background .2s,opacity .2s;white-space:nowrap;flex-shrink:0}.upload-btn svg{width:16px;height:16px;stroke:#fff}.upload-btn:hover:not(:disabled){background:var(--deep-navy)}.upload-btn:disabled,.upload-btn.uploading{opacity:.65;cursor:not-allowed}.upload-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:upload-spin .7s linear infinite;flex-shrink:0}@keyframes upload-spin{to{transform:rotate(360deg)}}.upload-btn-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.upload-or{font-size:.8rem;color:var(--neutral-gray);white-space:nowrap}.upload-url-input{flex:1;min-width:0;padding:.6rem .9rem;border:1px solid #DEE2E6;border-radius:7px;font-family:var(--font-body);font-size:.88rem;color:var(--deep-navy);transition:border-color .2s,box-shadow .2s}.upload-url-input:focus{outline:none;border-color:var(--primary-navy);box-shadow:0 0 0 3px #1a509d1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;margin-top:1.75rem}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-label span{font-weight:600;color:var(--deep-navy)}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.5rem;border-top:1px solid #E9ECEF}.btn-cancel{background:var(--neutral-white);color:var(--neutral-gray);padding:.75rem 1.5rem;border:1px solid #DEE2E6;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease}.btn-cancel:hover{background:#f8f9fa;border-color:var(--neutral-gray)}.btn-submit{background:var(--accent-coral);color:var(--neutral-white);padding:.75rem 1.5rem;border:none;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease}.btn-submit:hover{background:#b02a31;transform:translateY(-2px)}@media(max-width:768px){.admin-courses-container{padding:0}.admin-courses-header{flex-direction:column;gap:1.5rem}.btn-create{width:100%;justify-content:center}.courses-grid,.form-row{grid-template-columns:1fr}.course-actions{flex-direction:column}.btn-action{width:100%}.modal-content{max-height:95vh}.modal-header,.modal-form{padding:1.5rem}}.admin-job-sync{padding:20px;max-width:1200px;margin:0 auto}.sync-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.sync-header h1{font-size:28px;color:#333;margin:0}.btn-back{padding:10px 20px;background:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-back:hover{background:#5a6268}.message{padding:15px 20px;border-radius:4px;margin-bottom:20px;font-size:14px}.message-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.message-info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;text-align:center}.stat-value{font-size:36px;font-weight:700;color:#007bff;margin-bottom:10px}.stat-label{font-size:14px;color:#666;text-transform:uppercase;letter-spacing:.5px}.sources-section{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px}.sources-section h3{margin-top:0;margin-bottom:15px;color:#333}.sources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.source-item{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:#f8f9fa;border-radius:4px}.source-name{font-size:14px;color:#333;font-weight:500;text-transform:capitalize}.source-count{font-size:16px;font-weight:700;color:#007bff}.last-sync{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;border-left:4px solid #28a745}.last-sync.error{border-left-color:#dc3545}.last-sync.partial{border-left-color:#ffc107}.last-sync h4{margin-top:0;margin-bottom:15px;color:#333}.last-sync p{margin:8px 0;font-size:14px;color:#666}.last-sync strong{color:#333}.sync-actions{display:flex;gap:15px;margin-bottom:30px;flex-wrap:wrap}.btn{padding:12px 24px;border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:500;transition:background .2s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-success{background:#28a745;color:#fff}.btn-success:hover:not(:disabled){background:#218838}.btn-large{font-size:18px;padding:15px 30px}.config-section{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px}.config-section h2{margin-top:0;margin-bottom:25px;color:#333}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.badge-success{background:#28a745;color:#fff;padding:2px 8px;border-radius:3px;font-size:12px;margin-left:10px;font-weight:400}.form-control{width:100%;padding:10px 15px;border:1px solid #ced4da;border-radius:4px;font-size:14px;box-sizing:border-box}.form-control:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group small{display:block;margin-top:5px;font-size:12px;color:#6c757d}.form-group small a{color:#007bff;text-decoration:none}.form-group small a:hover{text-decoration:underline}.checkbox-group label{display:flex;align-items:center;gap:10px;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto;cursor:pointer}.info-box{background:#e7f3ff;padding:20px;border-radius:8px;border-left:4px solid #007bff}.info-box h3{margin-top:0;margin-bottom:15px;color:#0056b3}.info-box ol{margin:0;padding-left:20px}.info-box li{margin-bottom:10px;color:#333;font-size:14px}.info-box .note{margin-top:15px;padding-top:15px;border-top:1px solid #b3d9ff;font-size:14px;color:#0056b3}.loading{text-align:center;padding:50px;font-size:18px;color:#666}@media(max-width:768px){.sync-header{flex-direction:column;align-items:flex-start;gap:15px}.stats-grid{grid-template-columns:repeat(2,1fr)}.sync-actions{flex-direction:column}.sync-actions .btn{width:100%}.sources-grid{grid-template-columns:1fr}}.recursos-container{min-height:100vh;background:#f8f9fa;padding:2rem 2rem 3rem}.recursos-header{max-width:1100px;margin:0 auto 2.5rem}.recursos-header-inner{background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:18px;padding:2.5rem 3rem;display:flex;align-items:center;gap:1.5rem}.recursos-header-icon{width:56px;height:56px;background:#ffffff26;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.recursos-header-icon svg{width:28px;height:28px;stroke:#fff}.recursos-title{font-family:Trajan Pro,Times New Roman,serif;font-size:2rem;color:#fff;margin:0 0 .25rem;line-height:1.2}.recursos-subtitle{font-family:Mulish,sans-serif;font-size:.95rem;color:#ffffffbf;margin:0;font-weight:400;text-transform:capitalize}.recursos-grid{max-width:1100px;margin:0 auto 2rem;display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.recurso-card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #0d142712;overflow:hidden;display:flex;flex-direction:column}.recurso-card-header{display:flex;align-items:center;gap:1rem;padding:1.4rem 1.75rem;border-bottom:1.5px solid #F0F0F0}.recurso-card-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.recurso-card-icon svg{width:22px;height:22px}.recurso-card-icon.manual{background:#ebf1fa;color:#1a509d}.recurso-card-icon.tools{background:#e8f5e9;color:#27ae60}.recurso-card-icon.videos{background:#fff3e0;color:#e67e22}.recurso-card-icon.adicional{background:#f3e5f5;color:#8e44ad}.recurso-card-title{font-family:Mulish,sans-serif;font-size:1.05rem;font-weight:800;color:#0d1427;margin:0}.recurso-card-body{padding:1.25rem 1.75rem 1.5rem;flex:1}.lista-recursos{list-style:none;padding:0;margin:0}.lista-recursos li{border-bottom:1px solid #F5F5F5}.lista-recursos li:last-child{border-bottom:none}.lista-recursos a{display:flex;align-items:center;gap:.6rem;padding:.65rem 0;color:#2c5282;text-decoration:none;font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;transition:all .2s}.lista-recursos a svg{width:14px;height:14px;flex-shrink:0;opacity:.5;transition:opacity .2s,transform .2s}.lista-recursos a:hover{color:#1a509d;padding-left:.35rem}.lista-recursos a:hover svg{opacity:1;transform:translate(2px)}.videos-grid{display:grid;grid-template-columns:1fr;gap:.85rem}.video-thumbnail{display:block;border-radius:10px;overflow:hidden;border:2px solid #F0F0F0;transition:border-color .2s,transform .2s,box-shadow .2s;position:relative}.video-thumbnail:hover{border-color:#1a509d;transform:translateY(-2px);box-shadow:0 6px 20px #1a509d26}.video-thumbnail img{width:100%;height:140px;object-fit:cover;display:block}.video-label{font-family:Mulish,sans-serif;font-size:.82rem;font-weight:700;color:#495057;padding:.5rem .75rem;background:#f8f9fa;display:flex;align-items:center;gap:.4rem}.video-label svg{width:13px;height:13px;color:#e67e22;flex-shrink:0}.recursos-notice{max-width:1100px;margin:0 auto;background:#fff8e8;border:1.5px solid #F5E2A8;border-radius:12px;padding:1.25rem 1.75rem;display:flex;gap:.85rem;align-items:flex-start}.recursos-notice svg{width:20px;height:20px;color:#b7860b;flex-shrink:0;margin-top:1px}.recursos-notice p{font-family:Mulish,sans-serif;color:#6d5102;font-size:.875rem;line-height:1.65;margin:0}.recursos-notice strong{font-weight:700;color:#4a3700}.recursos-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:4rem 2rem;color:#718096;font-size:.9rem;max-width:1100px;margin:0 auto}.recursos-spinner{width:24px;height:24px;border:3px solid #E2E8F0;border-top-color:#1a509d;border-radius:50%;animation:recursos-spin .7s linear infinite;flex-shrink:0}@keyframes recursos-spin{to{transform:rotate(360deg)}}.recursos-error{max-width:1100px;margin:0 auto 2rem;background:#fde8e8;border:1px solid #F5C6C6;color:#c0392b;padding:1rem 1.25rem;border-radius:10px;font-size:.88rem}.lista-recursos a svg,.lista-recursos .recurso-item-btn svg{width:14px;height:14px;flex-shrink:0}.recurso-item-btn{display:flex;align-items:center;gap:.6rem;background:none;border:none;padding:.65rem 0;margin:0;font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:#2c5282;cursor:pointer;text-align:left;width:100%;transition:all .2s}.recurso-item-btn svg{opacity:.5;transition:opacity .2s,transform .2s}.recurso-item-btn:hover{color:#1a509d;padding-left:.35rem}.recurso-item-btn:hover svg{opacity:1;transform:translate(2px)}.recurso-card-icon.cursos{background:#e8f4fd;color:#1a6fad}.recurso-card-icon.cursos svg{stroke:#1a6fad}.recursos-cursos-section{max-width:1100px;margin:0 auto 2rem}.recursos-cursos-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.1rem}.recursos-cursos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.curso-card-recurso{display:flex;flex-direction:column;background:#fff;border-radius:14px;box-shadow:0 2px 10px #0d142714;overflow:hidden;text-decoration:none;color:inherit;transition:transform .22s ease,box-shadow .22s ease}.curso-card-recurso:hover{transform:translateY(-4px);box-shadow:0 6px 20px #0d142724}.curso-card-cover{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:#0d1427}.curso-card-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.curso-card-recurso:hover .curso-card-cover img{transform:scale(1.04)}.curso-card-cover-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a509d,#0d1427)}.curso-card-cover-placeholder svg{width:48px;height:48px;stroke:#fff6}.curso-card-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0d142759;opacity:0;transition:opacity .22s ease}.curso-card-recurso:hover .curso-card-play-overlay{opacity:1}.curso-card-play-overlay svg{width:44px;height:44px;fill:#fff;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}.curso-card-info{padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.35rem;flex:1}.curso-card-name{font-family:Trajan Pro,Times New Roman,serif;font-size:1rem;color:#0d1427;font-weight:700;line-height:1.3}.curso-card-desc{font-family:Mulish,sans-serif;font-size:.82rem;color:#718096;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.curso-card-progress{margin-top:.6rem;display:flex;flex-direction:column;gap:.35rem}.curso-card-progress-bar{height:5px;background:#e2e8f0;border-radius:99px;overflow:hidden}.curso-card-progress-fill{height:100%;background:#4ade80;border-radius:99px;transition:width .4s ease}.curso-card-progress-label{font-family:Mulish,sans-serif;font-size:.75rem;font-weight:600;color:#718096}@media(max-width:900px){.recursos-grid{grid-template-columns:1fr}.recursos-header-inner{padding:2rem}}@media(max-width:600px){.recursos-container{padding:1rem 1rem 2rem}.recursos-header-inner{padding:1.5rem;gap:1rem}.recursos-title{font-size:1.5rem}.recurso-card-header{padding:1.2rem 1.25rem}.recurso-card-body{padding:1rem 1.25rem 1.25rem}}.pdf-modal-overlay{position:fixed;inset:0;background:#0a0f1ed1;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:overlay-in .2s ease}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.pdf-modal{display:flex;flex-direction:column;width:100%;max-width:960px;height:90vh;background:#1a1f2e;border-radius:16px;overflow:hidden;box-shadow:0 30px 80px #0009;animation:modal-in .22s ease}@keyframes modal-in{0%{opacity:0;transform:scale(.96) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.pdf-modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.25rem;background:#0d1427;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.pdf-modal-title-area{display:flex;align-items:center;gap:.75rem;min-width:0}.pdf-modal-counter{font-size:.72rem;font-weight:700;color:#4a90d9;background:#4a90d926;padding:.2rem .6rem;border-radius:99px;white-space:nowrap;flex-shrink:0}.pdf-modal-title{font-size:.92rem;font-weight:600;color:#e8edf5;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-modal-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.pdf-action-btn{display:flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border-radius:8px;background:#ffffff12;border:1px solid rgba(255,255,255,.12);color:#c8d4e8;font-size:.78rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .15s;white-space:nowrap}.pdf-action-btn svg{width:14px;height:14px;flex-shrink:0}.pdf-action-btn:hover{background:#4a90d933;border-color:#4a90d966;color:#fff}.pdf-close-btn{width:34px;height:34px;border-radius:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#89a;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;flex-shrink:0}.pdf-close-btn svg{width:16px;height:16px}.pdf-close-btn:hover{background:#dc3c3c33;border-color:#dc3c3c66;color:#ff6b6b}.pdf-modal-body{display:flex;align-items:stretch;flex:1;min-height:0;position:relative}.pdf-nav-btn{width:48px;flex-shrink:0;background:#ffffff0a;border:none;color:#6b7a99;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.pdf-nav-btn svg{width:22px;height:22px}.pdf-nav-btn:hover:not(.disabled){background:#4a90d926;color:#4a90d9}.pdf-nav-btn.disabled{opacity:.2;cursor:default}.pdf-viewer-area{flex:1;position:relative;min-width:0;background:#2a2f3e;display:flex;align-items:center;justify-content:center}.pdf-iframe-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:#2a2f3e;color:#6b7a99;font-size:.85rem;z-index:1}.pdf-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.08);border-top-color:#4a90d9;border-radius:50%;animation:spin .7s linear infinite}.pdf-iframe{width:100%;height:100%;border:none;display:block}.pdf-iframe.loading{opacity:0}.pdf-mobile-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:2.5rem 2rem;text-align:center;width:100%}.pdf-mobile-icon{width:72px;height:72px;background:#4a90d91f;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#4a90d9}.pdf-mobile-icon svg{width:36px;height:36px}.pdf-mobile-name{font-size:1rem;font-weight:600;color:#e8edf5;margin:0}.pdf-mobile-hint{font-size:.82rem;color:#6b7a99;margin:0}.pdf-mobile-btns{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.pdf-mobile-open,.pdf-mobile-download{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.4rem;border-radius:10px;font-size:.88rem;font-weight:600;text-decoration:none;transition:opacity .15s}.pdf-mobile-open{background:#1a509d;color:#fff}.pdf-mobile-download{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#c8d4e8}.pdf-mobile-open svg,.pdf-mobile-download svg{width:16px;height:16px}.pdf-mobile-open:hover,.pdf-mobile-download:hover{opacity:.85}.pdf-modal-footer{padding:.6rem 1rem;background:#0d1427;border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:center;flex-shrink:0}.pdf-dots{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;justify-content:center;max-width:100%}.pdf-dot{width:8px;height:8px;border-radius:50%;background:#ffffff2e;border:none;cursor:pointer;padding:0;transition:all .15s;flex-shrink:0}.pdf-dot:hover{background:#4a90d980}.pdf-dot.active{background:#4a90d9;width:22px;border-radius:4px}@media(max-width:768px){.pdf-modal{height:100dvh;border-radius:0;max-width:100%}.pdf-modal-overlay{padding:0}.pdf-action-btn span{display:none}.pdf-action-btn{padding:.4rem .5rem}.pdf-nav-btn{width:36px}.pdf-modal-title{font-size:.82rem}}.vacantes-container{min-height:calc(100vh - 250px);background:#fff;color:#2d3748;padding:120px 2rem 3rem}.vacantes-header{max-width:900px;margin:0 auto 4rem;text-align:center}.vacantes-title{font-family:var(--font-heading);font-size:2.5rem;margin-bottom:1.5rem;color:#1c2c48;text-transform:lowercase;font-weight:700}.vacantes-subtitle{font-size:1.1rem;line-height:1.7;color:#4a5568}.vacantes-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:3rem}.vacante-card{background:linear-gradient(135deg,#244478,#1c2c48);border-radius:20px;padding:3rem 2.5rem;border:2px solid #1E3A5F;display:flex;flex-direction:column;align-items:center;transition:transform .3s ease,box-shadow .3s ease}.vacante-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #24447866;border-color:#244478}.vacante-icon{margin-bottom:2rem;width:100%;display:flex;align-items:center;justify-content:center;min-height:120px}.vacante-icon img{max-width:280px;width:100%;height:auto;object-fit:contain}.vacante-icon-cs img,.vacante-icon-cl img{filter:brightness(0) invert(1)}.vacante-card-title{font-family:var(--font-heading);font-size:1.6rem;margin-bottom:2rem;color:#fff;text-align:center;line-height:1.4}.vacante-tags{width:100%;margin-bottom:2rem}.tags-grid{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.tag{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:.5rem 1.25rem;border-radius:25px;font-size:.9rem;font-weight:500;transition:all .3s ease}.tag:hover{background:#ffffff4d;border-color:#fff9;transform:translateY(-2px)}.vacante-button{display:inline-block;background:#cb333b;color:#fff;padding:.875rem 3rem;border-radius:8px;text-decoration:none;font-family:var(--font-heading);font-weight:600;font-size:1rem;text-transform:lowercase;transition:all .3s ease;margin-top:auto;border:none;cursor:pointer}.vacante-button:hover{background:#a82930;transform:translateY(-2px);box-shadow:0 6px 20px #cb333b66}@media(max-width:1024px){.vacantes-grid{grid-template-columns:1fr;gap:2.5rem}}@media(max-width:768px){.vacantes-container{padding:100px 1rem 2rem}.vacantes-title{font-size:2rem}.vacantes-subtitle{font-size:1rem}.vacante-card{padding:2.5rem 2rem}.vacante-icon img{max-width:250px}.vacante-card-title{font-size:1.4rem}}@media(max-width:480px){.vacantes-title{font-size:1.75rem}.vacante-card{padding:2rem 1.5rem}.vacante-icon img{max-width:200px}.vacante-card-title{font-size:1.25rem}.tag{font-size:.85rem;padding:.4rem 1rem}.vacante-button{width:100%;text-align:center}}.vacantes-lista-container{min-height:calc(100vh - 250px);background:#f8f9fa}.vacantes-lista-header{padding:140px 0 3rem;color:#fff;position:relative}.back-button-vacantes{position:absolute;top:100px;left:50%;margin-left:calc(-600px + 2rem);background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background .3s ease}.back-button-vacantes:hover{background:#ffffff4d}.vacantes-lista-title{font-family:var(--font-heading);font-size:2.5rem;margin-bottom:.5rem;text-align:center;font-weight:700}.vacantes-lista-subtitle{font-size:1.1rem;text-align:center;opacity:.9}.vacantes-filtros{background:#fff;padding:2rem;box-shadow:0 2px 8px #0000001a}.filtros-form{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr auto;gap:1rem;align-items:end}.filtro-group{display:flex;flex-direction:column}.filtro-input,.filtro-select{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.filtro-input:focus,.filtro-select:focus{outline:none;border-color:#244478}.filtro-button{background:#244478;color:#fff;padding:.75rem 2rem;border:none;border-radius:8px;font-family:var(--font-heading);font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.filtro-button:hover{background:#1c2c48;transform:translateY(-2px);box-shadow:0 4px 12px #2444784d}.vacantes-resultados{max-width:1200px;margin:0 auto;padding:3rem 2rem}.loading-state,.error-state,.empty-state{text-align:center;padding:4rem 2rem}.jobs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.job-card{background:#fff;border-radius:12px;padding:2rem;border:2px solid #e2e8f0;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column}.job-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000026;border-color:#244478}.job-card-header{margin-bottom:1.5rem}.job-title{font-family:var(--font-heading);font-size:1.4rem;color:#1c2c48;margin-bottom:.5rem;line-height:1.3}.job-id{color:#718096;font-size:.85rem}.job-info{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.job-info-item{display:flex;align-items:center;gap:.5rem;color:#4a5568;font-size:.95rem}.info-icon{font-size:1rem}.job-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.job-tag{padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:500}.job-tag.sector{background:#e6f2ff;color:#244478}.job-tag.categoria{background:#fff5e6;color:#d97706}.job-card-button{background:#244478;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-family:var(--font-heading);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;margin-top:auto}.job-card-button:hover{background:#1c2c48}@media(max-width:1024px){.filtros-form{grid-template-columns:1fr}.jobs-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media(max-width:768px){.vacantes-lista-header{padding:120px 0 2rem}.back-button-vacantes{top:80px;left:1rem;margin-left:0}.vacantes-lista-title{font-size:2rem}.vacantes-filtros{padding:1.5rem 1rem}.vacantes-resultados{padding:2rem 1rem}.jobs-grid{grid-template-columns:1fr}}@media(max-width:480px){.vacantes-lista-title{font-size:1.75rem}.job-card{padding:1.5rem}.job-title{font-size:1.2rem}}.vacante-detalle-container{min-height:calc(100vh - 250px);background:#f8f9fa}.vacante-detalle-header{padding:140px 0 3rem;color:#fff;position:relative}.back-button-detalle{position:absolute;top:100px;left:50%;margin-left:calc(-700px + 2rem);background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background .3s ease}.back-button-detalle:hover{background:#ffffff4d}.vacante-detalle-title{font-family:var(--font-heading);font-size:2.5rem;text-align:center;font-weight:700;line-height:1.3;max-width:1000px;margin:0 auto}.vacante-detalle-content{max-width:1400px;margin:0 auto;padding:3rem 2rem;display:grid;grid-template-columns:1fr 400px;gap:2rem}.detalle-main{display:flex;flex-direction:column;gap:2rem}.detalle-card{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 2px 8px #0000001a}.detalle-header-actions{display:flex;justify-content:flex-end;margin-bottom:2rem}.aplicar-button{background:#cb333b;color:#fff;padding:.875rem 2.5rem;border:none;border-radius:8px;font-family:var(--font-heading);font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.aplicar-button:hover{background:#a82930;transform:translateY(-2px);box-shadow:0 6px 20px #cb333b66}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.info-item{display:flex;flex-direction:column}.info-label{font-weight:600;color:#4a5568;font-size:.9rem;margin-bottom:.25rem}.info-value{color:#1c2c48;font-size:1rem}.divider{height:2px;background:linear-gradient(to right,#e2e8f0,transparent);margin:2rem 0}.detalle-section{margin-bottom:2rem}.detalle-section:last-child{margin-bottom:0}.section-title{font-family:var(--font-heading);font-size:1.5rem;color:#1c2c48;margin-bottom:1rem}.job-description{color:#4a5568;line-height:1.8;font-size:1rem}.job-description p{margin-bottom:1rem}.job-description ul,.job-description ol{margin:1rem 0;padding-left:2rem}.job-description li{margin-bottom:.5rem}.job-description h2,.job-description h3,.job-description h4{color:#1c2c48;margin:1.5rem 0 1rem}.job-description-file{background:#f7fafc;border-left:4px solid #244478;padding:1.5rem;border-radius:8px}.file-notice{color:#244478;font-weight:600;margin-bottom:1rem;font-size:1.05rem}.file-name{color:#2d3748;margin-bottom:1rem;font-size:1rem}.file-info{color:#718096;font-size:.95rem;line-height:1.6}.no-info{color:#a0aec0;font-style:italic}.detalle-sidebar{position:sticky;top:100px;height:fit-content}.sidebar-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.sidebar-title{font-family:var(--font-heading);font-size:1.5rem;color:#1c2c48;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0}.sidebar-item{display:flex;gap:1rem;padding:1.25rem 0;border-bottom:1px solid #f7fafc}.sidebar-item:last-child{border-bottom:none}.sidebar-icon{font-size:1.5rem;flex-shrink:0}.sidebar-item h4{font-family:var(--font-heading);font-size:1rem;color:#2d3748;margin-bottom:.25rem}.sidebar-item p{color:#4a5568;font-size:.95rem;margin:0}.text-muted{color:#a0aec0;font-style:italic}.loading-state,.error-state{text-align:center;padding:6rem 2rem}.retry-button{background:#244478;color:#fff;padding:.75rem 2rem;border:none;border-radius:8px;cursor:pointer;margin-top:1rem;transition:all .3s ease}.retry-button:hover{background:#1c2c48}@media(max-width:1200px){.vacante-detalle-content{grid-template-columns:1fr}.detalle-sidebar{position:static}}@media(max-width:768px){.vacante-detalle-header{padding:120px 0 2rem}.back-button-detalle{top:80px;left:1rem;margin-left:0}.vacante-detalle-title{font-size:2rem}.vacante-detalle-content{padding:2rem 1rem}.detalle-card,.sidebar-card{padding:1.5rem}.info-grid{grid-template-columns:1fr;gap:1rem}.detalle-header-actions{justify-content:stretch}.aplicar-button{width:100%}}@media(max-width:480px){.vacante-detalle-title{font-size:1.75rem}.section-title,.sidebar-title{font-size:1.3rem}}.vacante-aplicar-container{min-height:calc(100vh - 250px);background:#f8f9fa}.vacante-aplicar-header{padding:140px 0 3rem;color:#fff;position:relative}.back-button-aplicar{position:absolute;top:100px;left:50%;margin-left:calc(-450px + 2rem);background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background .3s ease}.back-button-aplicar:hover{background:#ffffff4d}.vacante-aplicar-title{font-family:var(--font-heading);font-size:2.5rem;text-align:center;font-weight:700;line-height:1.3;margin-bottom:.5rem}.vacante-aplicar-subtitle{font-size:1.1rem;text-align:center;opacity:.9}.aplicar-content{max-width:900px;margin:0 auto;padding:3rem 2rem}.aplicar-form{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.form-section{padding:2.5rem;border-bottom:2px solid #f7fafc}.form-section:last-of-type{border-bottom:none}.form-section-header{margin-bottom:2rem}.form-section-header h3{font-family:var(--font-heading);font-size:1.5rem;color:#1c2c48;margin-bottom:.5rem}.form-section-header p{color:#718096;font-size:.95rem}.form-group,.form-group-full{display:flex;flex-direction:column}.form-group label,.form-group-full label:not(.file-upload-label){font-weight:600;color:#2d3748;margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group-full input:not(.file-input){padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .3s ease}.form-group input:focus,.form-group-full input:focus{outline:none;border-color:#244478;box-shadow:0 0 0 3px #2444781a}.file-input{display:none}.file-upload-label{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;border:2px dashed #cbd5e0;border-radius:8px;cursor:pointer;transition:all .3s ease;background:#f7fafc}.file-upload-label:hover{border-color:#244478;background:#edf2f7}.upload-icon{font-size:2rem}.upload-text{color:#4a5568;font-size:1rem}.form-actions{padding:2.5rem;background:#f7fafc;border-radius:0 0 12px 12px;display:flex;justify-content:center}.submit-button{background:#cb333b;color:#fff;padding:1rem 4rem;border:none;border-radius:8px;font-family:var(--font-heading);font-weight:600;font-size:1.1rem;cursor:pointer;transition:all .3s ease}.submit-button:hover:not(:disabled){background:#a82930;transform:translateY(-2px);box-shadow:0 6px 20px #cb333b66}.submit-button:disabled{background:#cbd5e0;cursor:not-allowed}.loading-state{text-align:center;padding:6rem 2rem}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#244478;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@media(max-width:768px){.vacante-aplicar-header{padding:120px 0 2rem}.back-button-aplicar{top:80px;left:1rem;margin-left:0}.vacante-aplicar-title{font-size:2rem}.aplicar-content{padding:2rem 1rem}.form-section{padding:1.5rem}.form-grid{grid-template-columns:1fr}.form-actions{padding:1.5rem}.submit-button{width:100%;padding:1rem 2rem}}@media(max-width:480px){.vacante-aplicar-title{font-size:1.75rem}.form-section-header h3{font-size:1.3rem}.file-upload-label{flex-direction:column;text-align:center}}.job-search-container{min-height:calc(100vh - 250px);background:#f8f9fa}.job-search-header{background:linear-gradient(135deg,#244478,#1c2c48);padding:140px 2rem 3rem;color:#fff;text-align:center;position:relative}.job-search-favorites-link{position:absolute;top:100px;right:2rem;border:1px solid rgba(255,255,255,.35);background:#ffffff1f;color:#fff;padding:.75rem 1rem;border-radius:999px;cursor:pointer;font-weight:600}.job-search-title{font-family:var(--font-heading);font-size:2.5rem;margin-bottom:.5rem;font-weight:700}.job-search-subtitle{font-size:1.1rem;opacity:.9}.job-search-section{background:#fff;padding:2rem;box-shadow:0 2px 8px #0000001a}.job-search-form{max-width:1200px;margin:0 auto}.job-search-inputs{display:grid;grid-template-columns:1fr 1fr auto;gap:1rem;align-items:end;margin-bottom:1.5rem}.job-search-input-group{display:flex;flex-direction:column}.job-search-input-group label{font-weight:600;color:#2d3748;margin-bottom:.5rem;font-size:.9rem}.job-search-input{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .3s ease}.job-search-input:focus{outline:none;border-color:#244478}.job-search-button{background:#244478;color:#fff;padding:.75rem 2rem;border:none;border-radius:8px;font-family:var(--font-heading);font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;white-space:nowrap;align-self:end}.job-search-source-selection{padding:1.25rem;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0}.job-search-source-selection>label{display:block;font-weight:600;color:#2d3748;margin-bottom:.75rem;font-size:.9rem}.job-search-source-checkboxes{display:flex;gap:2rem;flex-wrap:wrap}.job-search-source-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:#4a5568}.job-search-source-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#244478}.job-search-source-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.job-search-source-checkbox:has(input:disabled){opacity:.6;cursor:not-allowed}.job-search-source-checkbox span{-webkit-user-select:none;user-select:none}.job-search-button:hover:not(:disabled){background:#1c2c48;transform:translateY(-2px);box-shadow:0 4px 12px #2444784d}.job-search-button:disabled{background:#cbd5e0;cursor:not-allowed;transform:none}.job-search-error-message{background:#fee;border-left:4px solid #CB333B;color:#cb333b;padding:1rem;border-radius:8px;margin-top:1rem;font-weight:500}.job-search-results-section{max-width:1200px;margin:0 auto;padding:3rem 2rem}.job-search-results-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e2e8f0;overflow-x:auto}.job-search-tab{padding:.875rem 1.5rem;border:none;background:transparent;color:#718096;font-family:var(--font-heading);font-weight:600;font-size:.95rem;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s ease;white-space:nowrap}.job-search-tab:hover{color:#244478}.job-search-tab.active{color:#244478;border-bottom-color:#244478}.job-search-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.job-search-result-card{background:#fff;border-radius:12px;padding:2rem;border:2px solid #e2e8f0;transition:all .3s ease;display:flex;flex-direction:column;cursor:pointer}.job-search-result-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000026;border-color:#244478}.job-search-result-header{display:flex;justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.5rem}.job-search-card-actions{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.job-search-result-title{font-family:Mulish,sans-serif;font-size:1.3rem;color:#1c2c48;line-height:1.3;font-weight:700;flex:1}.job-search-source-icon-wrapper{flex-shrink:0}.job-search-favorite-button{display:inline-flex;align-items:center;justify-content:center;height:32px;border-radius:8px;border:1px solid #d6deea;background:#f8fafc;color:#2b3b52;cursor:pointer;font-size:.76rem;font-weight:700;letter-spacing:.01em;padding:0 .7rem;white-space:nowrap;line-height:1;transition:all .2s ease;flex-shrink:0}.job-search-favorite-button:hover{background:#eef3f8;border-color:#b7c5d8}.job-search-favorite-button.active{background:#ecfdf3;color:#166534;border-color:#86efac}.job-search-favorite-button.modal{height:38px;padding:.65rem .95rem;font-size:.82rem}.job-search-source-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden}.job-search-source-icon.cornerstone{background:#244478;padding:8px}.job-search-source-icon.cornerstone img{width:100%;height:100%;object-fit:contain}.job-search-source-icon.linkedin{background:#0077b5;color:#fff}.job-search-source-icon.linkedin svg{width:24px;height:24px}.job-search-result-info{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.job-search-result-item{display:flex;align-items:center;gap:.5rem;color:#4a5568;font-size:.95rem}.job-search-info-icon{font-size:1rem}.job-search-result-button{background:#244478;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-family:var(--font-heading);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;margin-top:auto}.job-search-result-button:hover{background:#1c2c48}.job-search-no-results{text-align:center;padding:4rem 2rem;color:#718096;font-size:1.1rem}.job-search-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.job-search-modal{background:#fff;border-radius:16px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0000004d}.job-search-modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:2rem;color:#718096;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;z-index:1}.job-search-modal-close:hover{background:#f7fafc;color:#1c2c48}.job-search-modal-header{display:flex;justify-content:space-between;gap:1rem;padding:2.5rem 3rem 1.5rem 2rem;border-bottom:2px solid #e2e8f0}.job-search-modal-title-section{width:100%}.job-search-modal-title{font-family:Mulish,sans-serif;font-size:1.75rem;color:#1c2c48;margin-bottom:.5rem;line-height:1.3;font-weight:700}.job-search-modal-company{font-size:1rem;color:#4a5568;margin:0 0 .75rem}.job-search-modal-source-badge{display:inline-flex;align-items:center;gap:.5rem;background:#f7fafc;padding:.5rem 1rem;border-radius:20px;margin-top:.75rem}.job-search-modal-source-badge .source-name{font-size:.85rem;font-weight:600;color:#4a5568}.job-search-source-icon.small{width:28px;height:28px}.job-search-source-icon.small.cornerstone{padding:5px}.job-search-source-icon.small.linkedin svg{width:16px;height:16px}.job-search-favorite-button.modal{flex-shrink:0}.job-search-modal-body{padding:2rem}.job-search-modal-info{display:flex;flex-direction:column;gap:1rem}.job-search-modal-info-item{display:flex;gap:.75rem;padding:.75rem;background:#f7fafc;border-radius:8px}.job-search-modal-info-item .info-label{font-weight:600;color:#2d3748;min-width:120px}.job-search-modal-description{margin-top:1.5rem}.job-search-modal-description h3{font-family:Mulish,sans-serif;font-size:1.2rem;color:#1c2c48;margin-bottom:1rem;font-weight:700}.description-preview{color:#4a5568;line-height:1.6;white-space:pre-wrap}.job-search-modal-loading,.job-search-modal-error{padding:1rem;border-radius:8px;font-weight:500}.job-search-modal-loading{background:#edf2f7;color:#2d3748}.job-search-modal-error{background:#fff5f5;color:#c53030;border:1px solid #feb2b2}.job-search-modal-footer{padding:1.5rem 2rem;border-top:2px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end}.job-search-modal-button{padding:.75rem 2rem;border:none;border-radius:8px;font-family:var(--font-heading);font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.job-search-modal-button.primary{background:#244478;color:#fff}.job-search-modal-button.primary:hover{background:#1c2c48;transform:translateY(-2px);box-shadow:0 4px 12px #2444784d}.job-search-modal-button.secondary{background:#e2e8f0;color:#4a5568}.job-search-modal-button.secondary:hover{background:#cbd5e0}@media(max-width:1024px){.job-search-inputs{grid-template-columns:1fr 1fr;gap:1rem}.job-search-button{grid-column:1 / -1;width:100%}.job-search-favorites-link{position:static;margin-top:1rem}.job-search-results-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media(max-width:768px){.job-search-header{padding:120px 1rem 2rem}.job-search-title{font-size:2rem}.job-search-section{padding:1.5rem 1rem}.job-search-inputs{grid-template-columns:1fr}.job-search-button{width:100%}.job-search-source-checkboxes{flex-direction:column;gap:1rem}.job-search-results-section{padding:2rem 1rem}.job-search-results-grid{grid-template-columns:1fr}.job-search-result-header{flex-direction:column;align-items:start}.job-search-source-badge{align-self:flex-start}}@media(max-width:480px){.job-search-header{padding:100px 1rem 1.5rem}.job-search-title{font-size:1.75rem}.job-search-result-card{padding:1.5rem}.job-search-result-title{font-size:1.1rem}.job-search-modal{border-radius:12px}.job-search-modal-header{padding:1.5rem;flex-direction:column;gap:1rem}.job-search-modal-title-section{padding-right:2rem}.job-search-modal-title{font-size:1.4rem}.job-search-modal-body{padding:1.5rem}.job-search-modal-footer{padding:1rem 1.5rem;flex-direction:column}.job-search-modal-button{width:100%}.job-search-modal-info-item{flex-direction:column;gap:.5rem}.job-search-modal-info-item .info-label{min-width:auto}}.talent-source-container{min-height:100vh;background:#f8f9fa}.talent-source-header{background:linear-gradient(135deg,#1a509d,#0d1427);padding:4rem 2rem;text-align:center}.talent-source-header-content{max-width:800px;margin:0 auto}.talent-source-title{font-family:Trajan Pro,serif;font-size:3rem;font-weight:700;color:var(--neutral-white);margin:0 0 1rem;letter-spacing:2px;text-transform:uppercase}.talent-source-subtitle{font-family:Mulish,sans-serif;font-size:1.25rem;color:#ffffffe6;margin:0;line-height:1.6}.talent-source-content{max-width:1400px;margin:0 auto;padding:3rem 2rem}.talent-source-loading{text-align:center;padding:4rem 2rem}.talent-source-loading p{font-family:Mulish,sans-serif;font-size:1rem;color:#6c757d}.talent-source-error{text-align:center;padding:4rem 2rem}.talent-source-error p{font-family:Mulish,sans-serif;font-size:1rem;color:#dc3545;margin-bottom:1.5rem}.sectors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.sector-card{background:var(--neutral-white);border-radius:16px;padding:2rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 2px 12px #00000014;position:relative;overflow:hidden}.sector-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--sector-color, #1A509D);opacity:0;transition:opacity .2s ease}.sector-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.sector-card:hover:before{opacity:1}.sector-card-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--sector-color, #1A509D) 0%,#0D1427 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;transition:transform .2s ease}.sector-card:hover .sector-card-icon{transform:scale(1.1)}.sector-card-icon svg{width:32px;height:32px;color:var(--neutral-white)}.sector-card-content{display:flex;flex-direction:column;gap:.75rem}.sector-card-title{font-family:Mulish,sans-serif;font-size:1.5rem;font-weight:700;color:#0d1427;margin:0;line-height:1.3}.sector-card-description{font-family:Mulish,sans-serif;font-size:.95rem;color:#6c757d;margin:0;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sector-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem;padding-top:1rem;border-top:1px solid #E9ECEF}.sector-card-count{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:var(--sector-color, #1A509D)}.sector-card-arrow{width:24px;height:24px;color:var(--sector-color, #1A509D);transition:transform .2s ease}.sector-card:hover .sector-card-arrow{transform:translate(4px)}@media(max-width:1024px){.sectors-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}}@media(max-width:768px){.talent-source-header{padding:3rem 1.5rem}.talent-source-title{font-size:2.25rem}.talent-source-subtitle{font-size:1rem}.talent-source-content{padding:2rem 1.5rem}.sectors-grid{grid-template-columns:1fr;gap:1.5rem}.sector-card{padding:1.5rem}.sector-card-title{font-size:1.25rem}}@media(max-width:480px){.talent-source-title{font-size:1.75rem;letter-spacing:1px}.talent-source-subtitle{font-size:.95rem}.sector-card-icon{width:56px;height:56px}.sector-card-icon svg{width:28px;height:28px}}.candidates-list-container{min-height:100vh;background:#f8f9fa}.candidates-header{background:linear-gradient(135deg,#1a509d,#0d1427);padding:3rem 2rem 2rem}.candidates-header-content{max-width:1400px;margin:0 auto}.back-button{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:600;color:#ffffffe6;background:none;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 0;transition:color .2s ease}.candidates-title{font-family:Trajan Pro,serif;font-size:2.5rem;font-weight:700;color:var(--neutral-white);margin:0 0 .75rem;letter-spacing:1px}.candidates-subtitle{font-family:Mulish,sans-serif;font-size:1.1rem;color:#ffffffd9;margin:0 0 1rem;line-height:1.6}.candidates-count{font-family:Mulish,sans-serif;font-size:.95rem;color:#ffffffb3;font-weight:600}.candidates-filters-section{background:var(--neutral-white);border-bottom:1px solid #E9ECEF;padding:2rem;box-shadow:0 2px 8px #0000000d}.candidates-filters-content{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.search-form{display:flex;gap:.75rem;max-width:500px}.search-input{font-family:Mulish,sans-serif;font-size:1rem;flex:1;padding:.875rem 1.25rem;border:2px solid #E9ECEF;border-radius:8px;background:#f8f9fa;color:#0d1427;transition:border-color .2s ease,background .2s ease}.search-input:focus{outline:none;border-color:#1a509d;background:var(--neutral-white)}.search-button{background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:8px;padding:.875rem 1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease}.search-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.search-button svg{width:22px;height:22px;color:var(--neutral-white)}.level-filters{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.filter-label{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:600;color:#495057}.level-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.level-button{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:#495057;background:#f8f9fa;border:2px solid #E9ECEF;border-radius:8px;padding:.625rem 1.25rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.level-button:hover{border-color:#1a509d;color:#1a509d;background:#1a509d0d}.level-button.active{background:linear-gradient(135deg,#1a509d,#0d1427);border-color:#1a509d;color:var(--neutral-white)}.level-count{opacity:.7}.candidates-content{max-width:1400px;margin:0 auto;padding:3rem 2rem}.candidates-loading{text-align:center;padding:4rem 2rem}.candidates-loading p{font-family:Mulish,sans-serif;font-size:1rem;color:#6c757d}.candidates-error{text-align:center;padding:4rem 2rem}.candidates-error p{font-family:Mulish,sans-serif;font-size:1rem;color:#dc3545;margin-bottom:1.5rem}.retry-button{font-family:Mulish,sans-serif;font-size:1rem;font-weight:600;color:var(--neutral-white);background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:8px;padding:.75rem 2rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.retry-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.no-candidates{text-align:center;padding:4rem 2rem}.no-candidates svg{width:64px;height:64px;color:#adb5bd;margin-bottom:1.5rem}.no-candidates p{font-family:Mulish,sans-serif;font-size:1.1rem;color:#6c757d}.candidates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.candidate-card{background:var(--neutral-white);border-radius:16px;padding:1.75rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;gap:1.25rem}.candidate-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.candidate-card-header{display:flex;align-items:center;justify-content:space-between}.candidate-avatar{width:56px;height:56px;background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Mulish,sans-serif;font-size:1.5rem;font-weight:700;color:var(--neutral-white)}.featured-badge{font-family:Mulish,sans-serif;font-size:.75rem;font-weight:700;color:#cb333b;background:#cb333b1a;padding:.375rem .75rem;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.candidate-card-body{display:flex;flex-direction:column;gap:.625rem;flex:1}.candidate-name{font-family:Mulish,sans-serif;font-size:1.25rem;font-weight:700;color:#0d1427;margin:0;line-height:1.3}.candidate-title{font-family:Mulish,sans-serif;font-size:.95rem;color:#6c757d;margin:0;line-height:1.4}.candidate-sectors{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.sector-tag{font-family:Mulish,sans-serif;font-size:.75rem;font-weight:600;color:var(--neutral-white);padding:.375rem .75rem;border-radius:6px}.sector-tag-more{font-family:Mulish,sans-serif;font-size:.75rem;font-weight:600;color:#6c757d;background:#e9ecef;padding:.375rem .75rem;border-radius:6px}.candidate-level{font-family:Mulish,sans-serif;font-size:.85rem;color:#1a509d;font-weight:600;padding-top:.5rem;border-top:1px solid #E9ECEF}.candidate-card-footer{display:flex;align-items:center;gap:.5rem;padding-top:.75rem;border-top:1px solid #E9ECEF}.view-profile{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:#6c757d}.contact-action-wrapper{position:relative;display:flex;align-items:center}.contact-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:none;background:#f0f4fa;color:#1a509d;cursor:pointer;transition:background .2s ease,color .2s ease,transform .15s ease;text-decoration:none}.contact-action-btn:hover{background:#1a509d;color:#fff;transform:translateY(-2px)}.contact-action-btn svg{width:18px;height:18px}.contact-action-btn--linkedin{background:#e8f0fb;color:#0a66c2}.contact-action-btn--linkedin:hover{background:#0a66c2;color:#fff}.copy-tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#0d1427;color:#fff;font-family:Mulish,sans-serif;font-size:.7rem;font-weight:600;padding:.3rem .6rem;border-radius:6px;white-space:nowrap;pointer-events:none;animation:fadeInTooltip .15s ease;z-index:10}.copy-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#0d1427}@keyframes fadeInTooltip{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.pagination{display:flex;justify-content:center;align-items:center;gap:2rem;margin-top:3rem}.pagination-button{font-family:Mulish,sans-serif;font-size:1rem;font-weight:600;color:var(--neutral-white);background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:8px;padding:.75rem 2rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.pagination-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.pagination-button:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-family:Mulish,sans-serif;font-size:1rem;color:#495057;font-weight:600}@media(max-width:1024px){.candidates-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}}@media(max-width:768px){.candidates-header{padding:2rem 1.5rem 1.5rem}.candidates-title{font-size:2rem}.candidates-subtitle{font-size:1rem}.candidates-filters-section{padding:1.5rem}.candidates-content{padding:2rem 1.5rem}.candidates-grid{grid-template-columns:1fr;gap:1.5rem}.search-form{max-width:100%}.level-filters{flex-direction:column;align-items:flex-start}.level-buttons{width:100%}.pagination{gap:1rem}.pagination-button{padding:.625rem 1.5rem;font-size:.9rem}.pagination-info{font-size:.9rem}}@media(max-width:480px){.candidates-title{font-size:1.5rem}.candidate-card{padding:1.5rem}.candidate-name{font-size:1.1rem}}.candidate-detail-container{min-height:100vh;background:#f8f9fa}.candidate-detail-header{background:linear-gradient(135deg,#1a509d,#0d1427);padding:2rem 2rem 1rem}.candidate-detail-header-content{max-width:1200px;margin:0 auto}.back-button{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:600;color:#ffffffe6;background:none;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 0;transition:color .2s ease}.back-button:hover{color:var(--neutral-white)}.back-button svg{width:20px;height:20px}.candidate-detail-content{max-width:1200px;margin:-2rem auto 0;padding:0 2rem 3rem;position:relative;z-index:1}.candidate-detail-card{background:var(--neutral-white);border-radius:16px;box-shadow:0 4px 24px #0000001a;overflow:hidden}.profile-header{background:linear-gradient(135deg,#1a509d0d,#0d14270d);padding:3rem;display:flex;align-items:center;gap:2rem;border-bottom:1px solid #E9ECEF}.profile-avatar-large{width:120px;height:120px;background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Mulish,sans-serif;font-size:3rem;font-weight:700;color:var(--neutral-white);flex-shrink:0}.profile-header-info{flex:1}.profile-name-wrapper{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.profile-name{font-family:Mulish,sans-serif;font-size:2.5rem;font-weight:700;color:#0d1427;margin:0;line-height:1.2}.featured-badge-large{font-family:Mulish,sans-serif;font-size:.85rem;font-weight:700;color:#cb333b;background:#cb333b1a;padding:.5rem 1rem;border-radius:8px;text-transform:uppercase;letter-spacing:.5px}.profile-job-title{font-family:Mulish,sans-serif;font-size:1.25rem;color:#6c757d;margin:0;line-height:1.4}.profile-tags-section{padding:2rem 3rem;display:flex;flex-direction:column;gap:1.5rem;border-bottom:1px solid #E9ECEF}.profile-tag-group{display:flex;flex-direction:column;gap:.75rem}.tag-group-title{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:700;color:#495057;text-transform:uppercase;letter-spacing:.5px;margin:0}.profile-tags{display:flex;flex-wrap:wrap;gap:.75rem}.profile-tag{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:var(--neutral-white);padding:.625rem 1.25rem;border-radius:8px}.profile-tag-level{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:#1a509d;background:#1a509d1a;padding:.625rem 1.25rem;border-radius:8px}.profile-info-section{padding:2.5rem 3rem;border-bottom:1px solid #E9ECEF}.profile-info-section:last-of-type{border-bottom:none}.section-title{font-family:Mulish,sans-serif;font-size:1.5rem;font-weight:700;color:#0d1427;margin:0 0 1.5rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.info-item{display:flex;gap:1rem;padding:1.25rem;background:#f8f9fa;border-radius:12px;transition:background .2s ease}.info-item:hover{background:#e9ecef}.info-icon{width:48px;height:48px;background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-icon svg{width:24px;height:24px;color:#fff}.info-icon svg path{fill:#fff}.info-content{display:flex;flex-direction:column;gap:.25rem}.info-label{font-family:Mulish,sans-serif;font-size:.85rem;font-weight:600;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.info-value{font-family:Mulish,sans-serif;font-size:1rem;font-weight:600;color:#0d1427;text-decoration:none;transition:color .2s ease}.info-value:hover{color:#1a509d}.profile-summary{font-family:Mulish,sans-serif;font-size:1.05rem;color:#495057;line-height:1.7;margin:0}.profile-meta{padding:1.5rem 3rem;background:#f8f9fa;display:flex;align-items:center;gap:2rem}.meta-item{display:flex;align-items:center;gap:.5rem;font-family:Mulish,sans-serif;font-size:.9rem;color:#6c757d;font-weight:600}.meta-item svg{width:20px;height:20px;color:#adb5bd}.candidate-detail-loading{text-align:center;padding:4rem 2rem}.loading-spinner{width:50px;height:50px;margin:0 auto 1rem;border:4px solid #E9ECEF;border-top:4px solid #1A509D;border-radius:50%;animation:spin 1s linear infinite}.candidate-detail-loading p{font-family:Mulish,sans-serif;font-size:1rem;color:#6c757d}.candidate-detail-error{text-align:center;padding:4rem 2rem}.candidate-detail-error p{font-family:Mulish,sans-serif;font-size:1rem;color:#dc3545;margin-bottom:1.5rem}.btn-back{font-family:Mulish,sans-serif;font-size:1rem;font-weight:600;color:var(--neutral-white);background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:8px;padding:.75rem 2rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.btn-back:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}@media(max-width:1024px){.info-grid{grid-template-columns:1fr}}@media(max-width:768px){.candidate-detail-header{padding:1.5rem 1.5rem 1rem}.candidate-detail-content{padding:0 1.5rem 2rem}.profile-header{flex-direction:column;text-align:center;padding:2rem 1.5rem}.profile-avatar-large{width:100px;height:100px;font-size:2.5rem}.profile-name{font-size:2rem}.profile-name-wrapper{flex-direction:column;align-items:center}.profile-job-title{font-size:1.1rem}.profile-tags-section{padding:1.5rem}.profile-info-section{padding:2rem 1.5rem}.section-title{font-size:1.25rem}.profile-meta{padding:1.25rem 1.5rem;flex-direction:column;align-items:flex-start;gap:1rem}}@media(max-width:480px){.profile-avatar-large{width:80px;height:80px;font-size:2rem}.profile-name{font-size:1.5rem}.info-item{padding:1rem}.info-icon{width:40px;height:40px}.info-icon svg{width:20px;height:20px}}.admin-candidates-container{padding:0}.admin-candidates-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.admin-candidates-title{font-family:Mulish,sans-serif;font-size:1.75rem;font-weight:800;color:#0d1427;margin:0 0 .25rem}.admin-candidates-subtitle{font-family:Mulish,sans-serif;font-size:.95rem;color:#6c757d;margin:0}.btn-new-candidate{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:10px;padding:.75rem 1.5rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.btn-new-candidate:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.btn-new-candidate svg{width:18px;height:18px}.admin-filters-bar{background:#fff;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 2px 8px #0000000f;margin-bottom:1.5rem;display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.search-form{display:flex;gap:.5rem;flex:1;min-width:260px}.search-input{font-family:Mulish,sans-serif;font-size:.95rem;flex:1;padding:.625rem 1rem;border:2px solid #E9ECEF;border-radius:8px;background:#f8f9fa;color:#0d1427;transition:border-color .2s ease}.search-input:focus{outline:none;border-color:#1a509d;background:#fff}.search-btn{background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:8px;padding:.625rem 1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.search-btn:hover{transform:translateY(-1px)}.search-btn svg{width:20px;height:20px;stroke:#fff}.filter-selects{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.filter-select{font-family:Mulish,sans-serif;font-size:.9rem;padding:.625rem 1rem;border:2px solid #E9ECEF;border-radius:8px;background:#f8f9fa;color:#0d1427;cursor:pointer;transition:border-color .2s ease}.filter-select:focus{outline:none;border-color:#1a509d}.clear-filters-btn{font-family:Mulish,sans-serif;font-size:.875rem;font-weight:600;color:#cb333b;background:#cb333b14;border:none;border-radius:8px;padding:.625rem 1rem;cursor:pointer;transition:background .2s ease}.clear-filters-btn:hover{background:#cb333b26}.admin-loading,.admin-error,.admin-empty{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f}.admin-loading p,.admin-error p,.admin-empty p{font-family:Mulish,sans-serif;font-size:1rem;color:#6c757d;margin:0}.admin-empty svg{width:48px;height:48px;stroke:#adb5bd;margin-bottom:1rem}.admin-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden;overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;min-width:900px}.admin-table thead{background:#f8f9fa;border-bottom:2px solid #E9ECEF}.admin-table th{font-family:Mulish,sans-serif;font-size:.8rem;font-weight:700;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;padding:1rem 1.25rem;text-align:left;white-space:nowrap}.admin-table td{padding:1rem 1.25rem;border-bottom:1px solid #F1F3F5;vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:none}.candidate-info{display:flex;align-items:center;gap:.875rem}.candidate-avatar-sm{width:40px;height:40px;background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Mulish,sans-serif;font-size:1rem;font-weight:700;color:#fff;flex-shrink:0}.candidate-name{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:700;color:#0d1427;margin:0 0 .125rem}.candidate-email{font-family:Mulish,sans-serif;font-size:.8rem;color:#6c757d;margin:0}.candidate-job{font-family:Mulish,sans-serif;font-size:.875rem;color:#495057}.no-data{color:#adb5bd}.sector-tags{display:flex;flex-wrap:wrap;gap:.375rem}.sector-tag-sm{font-family:Mulish,sans-serif;font-size:.7rem;font-weight:700;color:#fff;padding:.25rem .625rem;border-radius:4px;white-space:nowrap}.sector-tag-more{font-family:Mulish,sans-serif;font-size:.7rem;font-weight:600;color:#6c757d;background:#e9ecef;padding:.25rem .5rem;border-radius:4px}.level-badge{font-family:Mulish,sans-serif;font-size:.8rem;font-weight:600;color:#1a509d;background:#1a509d14;padding:.375rem .75rem;border-radius:6px;white-space:nowrap}.toggle-btn{font-family:Mulish,sans-serif;font-size:.8rem;font-weight:700;padding:.375rem .875rem;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.toggle-btn.active{color:#1a7a4a;background:#1a7a4a1a}.toggle-btn.inactive{color:#6c757d;background:#e9ecef}.toggle-btn.featured{color:#cb333b;background:#cb333b1a}.toggle-btn.not-featured{color:#6c757d;background:#e9ecef}.toggle-btn:hover{opacity:.8;transform:scale(1.02)}.action-buttons{display:flex;gap:.5rem}.action-btn{width:34px;height:34px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.action-btn.edit{background:#1a509d14;color:#1a509d}.action-btn.delete{background:#cb333b14;color:#cb333b}.action-btn.delete:hover{background:#cb333b;color:#fff}.admin-pagination{display:flex;justify-content:center;align-items:center;gap:2rem;margin-top:1.5rem}.pagination-btn{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:8px;padding:.625rem 1.5rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.pagination-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.pagination-info{font-family:Mulish,sans-serif;font-size:.9rem;color:#6c757d;font-weight:600}.modal-overlay{position:fixed;inset:0;background:#0d142780;display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.modal-box{background:#fff;border-radius:16px;padding:2rem;max-width:440px;width:100%;box-shadow:0 20px 60px #0003}.modal-title{font-family:Mulish,sans-serif;font-size:1.25rem;font-weight:800;color:#0d1427;margin:0 0 1rem}.modal-text{font-family:Mulish,sans-serif;font-size:.95rem;color:#495057;line-height:1.6;margin:0 0 1.75rem}.modal-btn{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:700;padding:.625rem 1.5rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.modal-btn.cancel{background:#e9ecef;color:#495057}.modal-btn.cancel:hover{background:#dee2e6}.modal-btn.confirm-delete{background:#cb333b;color:#fff}.modal-btn.confirm-delete:hover:not(:disabled){background:#a52a31}@media(max-width:768px){.admin-candidates-header{flex-direction:column;gap:1rem}.btn-new-candidate{width:100%;justify-content:center}.admin-filters-bar{flex-direction:column}.search-form,.filter-selects{width:100%}.filter-select{flex:1}.admin-pagination{flex-direction:column;gap:1rem}}.admin-candidate-edit{padding:0}.edit-loading,.edit-error{text-align:center;padding:4rem 2rem}.edit-loading p,.edit-error p{font-family:Mulish,sans-serif;font-size:1rem;color:#6c757d}.edit-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem}.btn-back{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:#6c757d;background:#fff;border:2px solid #E9ECEF;border-radius:8px;padding:.625rem 1rem;cursor:pointer;display:flex;align-items:center;gap:.375rem;transition:all .2s ease;white-space:nowrap}.btn-back:hover{border-color:#1a509d;color:#1a509d}.btn-back svg{width:18px;height:18px}.edit-header-title h1{font-family:Mulish,sans-serif;font-size:1.5rem;font-weight:800;color:#0d1427;margin:0 0 .125rem}.edit-header-title p{font-family:Mulish,sans-serif;font-size:.9rem;color:#6c757d;margin:0}.edit-form{display:flex;flex-direction:column;gap:1.5rem}.edit-grid{display:grid;grid-template-columns:1fr 380px;gap:1.5rem;align-items:start}.edit-column{display:flex;flex-direction:column;gap:1.5rem}.edit-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f}.edit-card-title{font-family:Mulish,sans-serif;font-size:1rem;font-weight:800;color:#0d1427;margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:2px solid #F1F3F5}.edit-card-desc{font-family:Mulish,sans-serif;font-size:.85rem;color:#6c757d;margin:-.75rem 0 1rem}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.form-group:last-child{margin-bottom:0}.form-group label{font-family:Mulish,sans-serif;font-size:.85rem;font-weight:700;color:#495057}.form-group input,.form-group textarea{font-family:Mulish,sans-serif;font-size:.95rem;padding:.75rem 1rem;border:2px solid #E9ECEF;border-radius:8px;background:#f8f9fa;color:#0d1427;transition:border-color .2s ease,background .2s ease;width:100%;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#1a509d;background:#fff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.toggle-group{display:flex;flex-direction:column;gap:1rem}.toggle-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:.75rem;border-radius:8px;background:#f8f9fa;transition:background .2s ease}.toggle-label:hover{background:#e9ecef}.toggle-info{display:flex;flex-direction:column;gap:.125rem}.toggle-title{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:700;color:#0d1427}.toggle-desc{font-family:Mulish,sans-serif;font-size:.8rem;color:#6c757d}.toggle-checkbox{display:none}.toggle-switch{width:44px;height:24px;background:#dee2e6;border-radius:12px;position:relative;transition:background .2s ease;flex-shrink:0}.toggle-switch:after{content:"";position:absolute;width:18px;height:18px;background:#fff;border-radius:50%;top:3px;left:3px;transition:transform .2s ease;box-shadow:0 1px 3px #0003}.toggle-switch.on{background:#1a509d}.toggle-switch.on:after{transform:translate(20px)}.checkbox-grid{display:flex;flex-direction:column;gap:.5rem;max-height:320px;overflow-y:auto;padding-right:.25rem}.checkbox-grid::-webkit-scrollbar{width:4px}.checkbox-grid::-webkit-scrollbar-track{background:#f1f3f5;border-radius:2px}.checkbox-grid::-webkit-scrollbar-thumb{background:#ced4da;border-radius:2px}.checkbox-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:8px;border:2px solid #E9ECEF;cursor:pointer;transition:all .2s ease;background:#f8f9fa}.checkbox-item input[type=checkbox]{display:none}.checkbox-item:hover,.checkbox-item.selected{border-color:var(--item-color, #1A509D);background:#fff}.checkbox-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.checkbox-name{font-family:Mulish,sans-serif;font-size:.875rem;font-weight:600;color:#0d1427}.level-radio-group{display:flex;flex-direction:column;gap:.5rem}.level-radio-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;border:2px solid #E9ECEF;cursor:pointer;transition:all .2s ease;background:#f8f9fa;font-family:Mulish,sans-serif;font-size:.925rem;font-weight:600;color:#0d1427}.level-radio-item input{display:none}.level-radio-item:hover{border-color:#1a509d;background:#fff}.level-radio-item.selected{border-color:#1a509d;background:#1a509d0d;color:#1a509d}.edit-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:.5rem}.btn-cancel{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:700;color:#495057;background:#e9ecef;border:none;border-radius:8px;padding:.75rem 2rem;cursor:pointer;transition:background .2s ease}.btn-cancel:hover:not(:disabled){background:#dee2e6}.btn-save{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:8px;padding:.75rem 2.5rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.btn-save:disabled,.btn-cancel:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1024px){.edit-grid{grid-template-columns:1fr}}@media(max-width:768px){.edit-header{flex-direction:column;align-items:flex-start}.form-row{grid-template-columns:1fr}.edit-actions{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%;text-align:center}}.admin-users-container{padding:0}.admin-users-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.admin-users-title{font-family:Mulish,sans-serif;font-size:1.75rem;font-weight:800;color:#0d1427;margin:0 0 .25rem}.admin-users-subtitle{font-family:Mulish,sans-serif;font-size:.95rem;color:#6c757d;margin:0}.btn-new-user{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:10px;padding:.75rem 1.5rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.btn-new-user svg{width:18px;height:18px}.btn-new-user:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.admin-filters-bar{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap}.search-form{display:flex;align-items:center;background:#fff;border:1.5px solid #E0E0E0;border-radius:10px;overflow:hidden;flex:1;min-width:280px;transition:border-color .2s}.search-form:focus-within{border-color:#1a509d}.search-input{flex:1;border:none;outline:none;padding:.65rem 1rem;font-family:Mulish,sans-serif;font-size:.95rem;color:#0d1427;background:transparent}.search-input::placeholder{color:#adb5bd}.search-btn{background:none;border:none;padding:.65rem .75rem;cursor:pointer;color:#6c757d;display:flex;align-items:center;transition:color .2s}.search-btn:hover{color:#1a509d}.search-btn svg{width:18px;height:18px}.filter-selects{display:flex;gap:.75rem;align-items:center}.filter-select{font-family:Mulish,sans-serif;font-size:.9rem;color:#0d1427;background:#fff;border:1.5px solid #E0E0E0;border-radius:10px;padding:.65rem 1rem;cursor:pointer;outline:none;transition:border-color .2s}.filter-select:focus{border-color:#1a509d}.expire-sort-btn{font-family:Mulish,sans-serif;font-size:.88rem;font-weight:600;color:#495057;background:#fff;border:1.5px solid #E0E0E0;border-radius:10px;padding:.65rem 1rem;cursor:pointer;display:flex;align-items:center;gap:.45rem;white-space:nowrap;transition:all .2s}.expire-sort-btn svg{width:15px;height:15px;flex-shrink:0}.expire-sort-btn:hover{border-color:#e67e22;color:#e67e22;background:#fff8f0}.expire-sort-btn.active.proximos{background:#fff3e0;border-color:#e67e22;color:#e67e22;font-weight:700}.expire-sort-btn.active.vencidos{background:#fde8e8;border-color:#c0392b;color:#c0392b;font-weight:700}.expire-sort-btn.active.vencidos:hover{border-color:#c0392b;color:#c0392b;background:#fde8e8}.sort-indicator{display:inline-flex;align-items:center;justify-content:center;margin-left:.4rem;font-size:.85rem;color:#e67e22;font-weight:700}.sort-indicator.expired{color:#c0392b}.clear-filters-btn{font-family:Mulish,sans-serif;font-size:.88rem;font-weight:600;color:#6c757d;background:#f8f9fa;border:1.5px solid #E0E0E0;border-radius:10px;padding:.65rem 1rem;cursor:pointer;white-space:nowrap;transition:all .2s}.clear-filters-btn:hover{background:#e9ecef;color:#0d1427}.admin-table-wrapper{background:#fff;border-radius:14px;box-shadow:0 2px 12px #0d142712;overflow:hidden}.admin-table{width:100%;border-collapse:collapse;font-family:Mulish,sans-serif}.admin-table thead th{background:#f8f9fa;color:#6c757d;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.85rem 1.25rem;text-align:left;border-bottom:1.5px solid #E9ECEF;white-space:nowrap}.admin-table thead th:first-child{min-width:220px}.admin-table tbody tr{border-bottom:1px solid #F0F0F0;transition:background .15s}.admin-table tbody tr:last-child{border-bottom:none}.admin-table tbody tr:hover{background:#f8f9fa}.admin-table td{padding:1rem 1.25rem;vertical-align:middle;font-size:.92rem;color:#0d1427}.table-user-info{display:flex;flex-direction:row;align-items:center;gap:.75rem;flex-wrap:nowrap}.table-user-info>div{min-width:0}.user-avatar-sm{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6c757d,#495057);color:#fff;font-size:.82rem;font-weight:800;letter-spacing:.03em;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-avatar-sm.admin{background:linear-gradient(135deg,#1a509d,#0d1427)}.user-name{font-weight:700;font-size:.92rem;color:#0d1427;margin:0 0 .1rem}.user-email{font-size:.82rem;color:#6c757d;margin:0}.user-username{font-family:Courier New,monospace;font-size:.85rem;color:#495057;background:#f0f4fa;padding:.25rem .6rem;border-radius:6px}.perfil-badge{font-family:Mulish,sans-serif;font-size:.78rem;font-weight:700;padding:.3rem .75rem;border-radius:20px;display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap}.perfil-badge.admin{background:#ebf1fa;color:#1a509d}.perfil-badge.candidato{background:#f0f0f0;color:#495057}.perfil-badge.cliente{background:#e8f5e9;color:#27ae60}.expire-cell{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}.expire-date-text{font-size:.78rem;color:#6c757d;font-family:Mulish,sans-serif}.expire-badge{font-family:Mulish,sans-serif;font-size:.8rem;font-weight:700;padding:.28rem .7rem;border-radius:20px;display:inline-block;white-space:nowrap}.expire-badge.expire-expired{background:#fde8e8;color:#c0392b}.expire-badge.expire-soon{background:#fff3e0;color:#e67e22}.expire-badge.expire-ok{background:#e8f5e9;color:#27ae60}.expire-badge.expire-none{background:#f0f0f0;color:#6c757d}.last-access{font-size:.88rem;color:#495057}.no-data{color:#adb5bd;font-style:italic}.action-buttons{display:flex;gap:.5rem;align-items:center}.action-btn{width:34px;height:34px;border-radius:8px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.action-btn svg{width:16px;height:16px}.action-btn.edit{background:#ebf1fa;color:#1a509d}.action-btn.edit:hover{background:#1a509d;color:#fff}.action-btn.delete{background:#fde8e8;color:#c0392b}.action-btn.delete:hover{background:#c0392b;color:#fff}.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#6c757d;font-family:Mulish,sans-serif}.loading-spinner{width:42px;height:42px;border:3px solid #E9ECEF;border-top-color:#1a509d;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.admin-error{background:#fde8e8;border-radius:10px;padding:1.5rem;font-family:Mulish,sans-serif;color:#c0392b;text-align:center}.admin-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#adb5bd;font-family:Mulish,sans-serif;background:#fff;border-radius:14px;box-shadow:0 2px 12px #0d142712}.admin-empty svg{width:56px;height:56px;margin-bottom:1rem;opacity:.4}.admin-pagination{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:1.75rem;font-family:Mulish,sans-serif}.pagination-btn{font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:#1a509d;background:#fff;border:1.5px solid #D0DDEF;border-radius:10px;padding:.6rem 1.25rem;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#1a509d;color:#fff;border-color:#1a509d}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:.88rem;color:#6c757d;white-space:nowrap}.modal-overlay{position:fixed;inset:0;background:#0d142773;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-box{background:#fff;border-radius:16px;padding:2rem;max-width:420px;width:100%;box-shadow:0 8px 40px #0d14272e}.modal-title{font-family:Mulish,sans-serif;font-size:1.2rem;font-weight:800;color:#0d1427;margin:0 0 .75rem}.modal-text{font-family:Mulish,sans-serif;font-size:.95rem;color:#495057;margin:0 0 1.5rem;line-height:1.5}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.modal-btn{font-family:Mulish,sans-serif;font-size:.92rem;font-weight:700;border:none;border-radius:10px;padding:.65rem 1.5rem;cursor:pointer;transition:all .2s}.modal-btn.cancel{background:#f0f0f0;color:#495057}.modal-btn.cancel:hover{background:#e0e0e0}.modal-btn.confirm-delete{background:linear-gradient(135deg,#c0392b,#922b21);color:#fff}.modal-btn.confirm-delete:hover:not(:disabled){box-shadow:0 4px 12px #c0392b59;transform:translateY(-1px)}.modal-btn:disabled{opacity:.6;cursor:not-allowed}.admin-user-form-container{padding:0;max-width:720px}.form-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.back-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:1.5px solid #E0E0E0;background:#fff;color:#495057;cursor:pointer;transition:all .2s;flex-shrink:0}.back-btn:hover{background:#f0f0f0;border-color:#adb5bd}.back-btn svg{width:18px;height:18px}.form-header-text h1{font-family:Mulish,sans-serif;font-size:1.6rem;font-weight:800;color:#0d1427;margin:0 0 .2rem}.form-header-text p{font-family:Mulish,sans-serif;font-size:.9rem;color:#6c757d;margin:0}.form-card{background:#fff;border-radius:14px;box-shadow:0 2px 12px #0d142712;padding:2rem;margin-bottom:1.5rem}.form-card-title{font-family:Mulish,sans-serif;font-size:1rem;font-weight:700;color:#0d1427;margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:1.5px solid #F0F0F0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-label{font-family:Mulish,sans-serif;font-size:.82rem;font-weight:700;color:#495057;text-transform:uppercase;letter-spacing:.04em}.form-label span{color:#c0392b;margin-left:2px}.form-input,.form-select{font-family:Mulish,sans-serif;font-size:.95rem;color:#0d1427;background:#f8f9fa;border:1.5px solid #E0E0E0;border-radius:10px;padding:.7rem 1rem;outline:none;transition:border-color .2s,background .2s;width:100%;box-sizing:border-box}.form-input:focus,.form-select:focus{border-color:#1a509d;background:#fff}.form-input::placeholder{color:#adb5bd}.form-hint{font-family:Mulish,sans-serif;font-size:.78rem;color:#adb5bd}.password-wrapper{position:relative}.password-wrapper .form-input{padding-right:2.8rem}.password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#adb5bd;display:flex;align-items:center;transition:color .2s;padding:0}.password-toggle:hover{color:#1a509d}.password-toggle svg{width:18px;height:18px}.perfil-options{display:flex;gap:.75rem}.perfil-option{flex:1;position:relative}.perfil-option input[type=radio]{position:absolute;opacity:0;width:0;height:0}.perfil-option label{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.7rem 1rem;border:2px solid #E0E0E0;border-radius:10px;cursor:pointer;font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;color:#6c757d;background:#f8f9fa;transition:all .2s}.perfil-option label svg{width:16px;height:16px;flex-shrink:0;margin-right:.25rem}.perfil-option input[type=radio]:checked+label{border-color:#1a509d;background:#ebf1fa;color:#1a509d}.perfil-option.admin input[type=radio]:checked+label{border-color:#1a509d;background:#ebf1fa;color:#1a509d}.perfil-option.candidato input[type=radio]:checked+label{border-color:#495057;background:#f0f0f0;color:#0d1427}.perfil-option.cliente input[type=radio]:checked+label{border-color:#be185d;background:#fce7f3;color:#be185d}.expire-note{font-family:Mulish,sans-serif;font-size:.82rem;color:#6c757d;margin-top:.25rem}.expire-input-row{display:flex;align-items:center;gap:.75rem}.expire-input-row .form-input{flex:1}.expire-input-row .form-input.no-expire{background:#f0f0f0;color:#adb5bd;border-color:#e0e0e0}.clear-expire-btn{display:flex;align-items:center;gap:.35rem;font-family:Mulish,sans-serif;font-size:.82rem;font-weight:600;color:#c0392b;background:#fde8e8;border:1.5px solid #F5C6C6;border-radius:8px;padding:.5rem .85rem;cursor:pointer;white-space:nowrap;transition:all .2s;flex-shrink:0}.clear-expire-btn svg{width:13px;height:13px}.clear-expire-btn:hover{background:#c0392b;color:#fff;border-color:#c0392b}.no-expire-badge{font-family:Mulish,sans-serif;font-size:.82rem;font-weight:600;color:#6c757d;background:#f0f0f0;border:1.5px solid #E0E0E0;border-radius:8px;padding:.5rem .85rem;white-space:nowrap;flex-shrink:0}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:.5rem}.btn-cancel{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:600;color:#495057;background:#f0f0f0;border:none;border-radius:10px;padding:.75rem 1.75rem;cursor:pointer;transition:background .2s}.btn-cancel:hover{background:#e0e0e0}.btn-save{font-family:Mulish,sans-serif!important;font-size:.95rem!important;font-weight:700!important;color:#fff!important;background:linear-gradient(135deg,#1a509d,#0d1427)!important;border:none!important;border-radius:10px!important;padding:.875rem 2rem!important;cursor:pointer!important;transition:all .3s ease!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:.5rem!important;min-height:48px!important;text-decoration:none!important;outline:none!important;box-shadow:0 2px 6px #1a509d33!important}.btn-save:hover:not(:disabled){transform:translateY(-1px)!important;box-shadow:0 6px 16px #1a509d66!important;background:linear-gradient(135deg,#2463b5,#1a2b3d)!important}.btn-save:active:not(:disabled){transform:translateY(0)!important;box-shadow:0 2px 6px #1a509d4d!important}.btn-save:disabled{opacity:.6!important;cursor:not-allowed!important;transform:none!important;box-shadow:0 2px 6px #1a509d1a!important}.btn-save svg{width:16px!important;height:16px!important;stroke:currentColor!important;flex-shrink:0!important}.form-alert{font-family:Mulish,sans-serif;font-size:.92rem;padding:.85rem 1.25rem;border-radius:10px;margin-bottom:1.5rem}.form-alert.error{background:#fde8e8;color:#c0392b;border:1px solid #F5C6C6}.form-alert.success{background:#e8f5e9;color:#27ae60;border:1px solid #C3E6CB}.cvs-count{display:inline-block;background:#1a509d;color:#fff;font-size:.75rem;font-weight:700;padding:.2rem .6rem;border-radius:20px;margin-left:.5rem}.cvs-list{display:flex;flex-direction:column;gap:1.5rem}.cv-item{border:1.5px solid #E0E0E0;border-radius:12px;padding:1.5rem;background:#fafafa;transition:all .2s}.cv-item:hover{border-color:#1a509d;box-shadow:0 2px 8px #1a509d14}.cv-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #E0E0E0}.cv-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.cv-title-row h3{font-family:Mulish,sans-serif;font-size:1.1rem;font-weight:700;color:#0d1427;margin:0}.cv-badges{display:flex;gap:.5rem}.badge-active,.badge-complete{font-size:.7rem;font-weight:600;padding:.25rem .6rem;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.cv-meta{display:flex;gap:1.5rem;font-size:.85rem;color:#6c757d;font-family:Mulish,sans-serif}.cv-tags-section{margin-top:1rem}.cv-tags-section h4{font-family:Mulish,sans-serif;font-size:.95rem;font-weight:700;color:#495057;margin:0 0 1rem;padding:.75rem;background:#fff9e6;border-left:3px solid #FFC107;border-radius:6px}.tags-categories{display:flex;flex-direction:column;gap:1rem}.tag-category{display:flex;flex-direction:column;gap:.5rem}.category-label{font-family:Mulish,sans-serif;font-size:.85rem;font-weight:700;color:#495057;text-transform:uppercase;letter-spacing:.5px}.tags-list{display:flex;flex-wrap:wrap;gap:.5rem}.tag{display:inline-block;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600;font-family:Mulish,sans-serif;border:1.5px solid;transition:all .2s}.tag-tech{background:#e3f2fd;color:#1565c0;border-color:#90caf9}.tag-soft{background:#f3e5f5;color:#7b1fa2;border-color:#ce93d8}.tag-industry{background:#fff3e0;color:#e65100;border-color:#ffcc80}.tag-experience{background:#e8f5e9;color:#2e7d32;border-color:#a5d6a7}.tag-functional{background:#fce4ec;color:#c2185b;border-color:#f48fb1}.tag-cert{background:#fff9c4;color:#f57f17;border-color:#fff59d}.tag-language{background:#e0f2f1;color:#00695c;border-color:#80cbc4}.tag-tool{background:#efebe9;color:#4e342e;border-color:#bcaaa4}.cv-no-tags{padding:1.5rem;background:#fff3cd;border:1px solid #FFE69C;border-radius:8px;margin-top:1rem}.cv-no-tags p{margin:0;color:#856404;font-size:.9rem;font-family:Mulish,sans-serif}.checkbox-group{padding:1rem;background:#f8f9fa;border:1px solid #E9ECEF;border-radius:8px;transition:all .3s ease}.checkbox-group:hover{border-color:#1a509d;background:#f0f6ff}.checkbox-input{width:18px;height:18px;accent-color:#1A509D;cursor:pointer;margin:0;flex-shrink:0}.checkbox-label{display:flex;flex-direction:column;gap:.3rem;cursor:pointer;font-family:Mulish,sans-serif;font-size:.95rem;font-weight:600;color:#495057!important;line-height:1.4}.international-checkbox-label{margin:0!important}.checkbox-main-row{display:flex;align-items:center;gap:.65rem}.checkbox-title{display:block;line-height:1}.checkbox-label span{color:#495057!important}.world-icon{width:20px;height:20px;color:#1a509d!important;flex-shrink:0;display:block}.checkbox-description{display:block;font-weight:400;font-size:.85rem;color:#6c757d!important;margin-left:calc(38px + 1.3rem)}.admin-invitations-container{padding:2rem}.invitations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.invitations-header h1{font-size:1.75rem;font-weight:700;color:#1a202c}.btn-new-invitation{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.btn-new-invitation:hover{background:#5568d3}.btn-new-invitation svg{width:20px;height:20px}.search-bar{position:relative;margin-bottom:1.5rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;align-items:center;padding:0 1rem}.search-bar svg{width:20px;height:20px;color:#718096}.search-bar input{flex:1;padding:1rem;border:none;outline:none;font-size:1rem;color:#2d3748}.search-bar input::placeholder{color:#a0aec0}.clear-search{background:transparent;border:none;padding:.5rem;cursor:pointer;color:#a0aec0;border-radius:6px;transition:all .2s}.clear-search:hover{background:#f7fafc;color:#4a5568}.clear-search svg{width:18px;height:18px}.admin-loading{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f}.loading-spinner{width:44px;height:44px;margin:0 auto 1rem;border:4px solid #E9ECEF;border-top:4px solid #1A509D;border-radius:50%;animation:spin 1s linear infinite}.admin-loading p{font-family:Mulish,sans-serif;font-size:1rem;color:#6c757d;margin:0}.invitations-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.invitations-table{width:100%;border-collapse:collapse}.invitations-table thead{background:#f7fafc}.invitations-table th{padding:1rem;text-align:left;font-weight:600;color:#2d3748;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.invitations-table td{padding:1rem;border-top:1px solid #e2e8f0;color:#4a5568}.invitations-table tbody tr:hover{background:#f7fafc}.no-data{text-align:center!important;color:#a0aec0;padding:3rem!important}.actions-cell{display:flex;align-items:center;gap:.25rem}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-pending{background:#fef3c7;color:#92400e}.status-completed{background:#d1fae5;color:#065f46}.status-expired{background:#fee2e2;color:#991b1b}.btn-copy,.btn-delete{padding:.5rem;background:transparent;border:none;cursor:pointer;border-radius:6px;transition:background .2s;margin-right:.5rem}.btn-copy svg,.btn-delete svg{width:18px;height:18px}.btn-copy{color:#4299e1}.btn-copy:hover{background:#ebf8ff}.btn-delete{color:#f56565}.btn-delete:hover{background:#fff5f5}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2{font-size:1.25rem;font-weight:700;color:#1a202c}.btn-close{background:transparent;border:none;padding:.5rem;cursor:pointer;color:#718096;border-radius:6px;transition:background .2s}.btn-close:hover{background:#f7fafc}.btn-close svg{width:20px;height:20px}.invitation-form{padding:1.5rem}.form-group{margin-bottom:0}.form-group-full{grid-column:1 / -1}.form-group label{display:block;font-weight:600;color:#2d3748;margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group select{width:100%;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea}.form-group small{display:block;margin-top:.5rem;color:#718096;font-size:.875rem}.help-text-accent{color:#d97706!important;font-weight:600;background:#fef3c7;padding:.5rem;border-radius:6px;border-left:3px solid #f59e0b}.alert{padding:1rem;border-radius:8px;margin-bottom:1rem}.alert-error{background:#fff5f5;color:#c53030;border:1px solid #fc8181}.alert-success{background:#f0fff4;color:#22543d;border:1px solid #9ae6b4}.generated-url-container{margin-top:1rem}.url-copy-box{display:flex;gap:.5rem;margin-top:.5rem}.url-copy-box input{flex:1;padding:.5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:monospace}.btn-copy-url{padding:.5rem 1rem;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600}.btn-copy-url:hover{background:#5568d3}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.btn-cancel,.btn-submit{flex:1;padding:.75rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel{background:#edf2f7;color:#2d3748}.btn-submit{background:#667eea;color:#fff}.btn-submit:hover:not(:disabled){background:#5568d3}.btn-submit:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.admin-invitations-container{padding:1rem}.invitations-header{flex-direction:column;align-items:flex-start;gap:1rem}.invitations-header h1{font-size:1.5rem}.btn-new-invitation{width:100%;justify-content:center}.invitations-table-container{display:none}.invitations-cards{display:block}.invitation-card{background:#fff;border-radius:12px;padding:1rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000001a}.invitation-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.invitation-card-email{font-weight:600;color:#2d3748;font-size:.95rem;word-break:break-all;flex:1;margin-right:.5rem}.invitation-card-body{display:flex;flex-direction:column;gap:.5rem}.invitation-card-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.invitation-card-label{color:#718096;font-weight:500}.invitation-card-value{color:#2d3748;font-weight:600}.invitation-card-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.btn-card-action{flex:1;padding:.75rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.875rem}.btn-card-copy{background:#ebf8ff;color:#2c5282}.btn-card-delete{background:#fff5f5;color:#c53030}.modal-content{margin:1rem}.form-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}.url-copy-box{flex-direction:column}.btn-copy-url{width:100%}}@media(min-width:769px){.invitations-cards{display:none}}.admin-resources{display:flex;flex-direction:column;gap:1.5rem}.resources-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.resources-topbar-left{flex:1}.resources-topbar-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.section-tabs{display:flex;gap:.375rem;flex-wrap:wrap}.section-tab{display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border:1.5px solid #E2E8F0;background:#fff;border-radius:8px;font-size:.82rem;font-weight:500;color:#4a5568;cursor:pointer;transition:all .15s ease;white-space:nowrap}.section-tab:hover{border-color:#1a509d;color:#1a509d;background:#ebf2fb}.section-tab.active{background:#1a509d;border-color:#1a509d;color:#fff}.section-count{background:#ffffff40;color:inherit;border-radius:99px;padding:0 .45rem;font-size:.72rem;font-weight:600;min-width:1.4rem;text-align:center}.section-tab:not(.active) .section-count{background:#f0f4f8;color:#718096}.show-inactive-toggle{display:flex;align-items:center;gap:.5rem;font-size:.83rem;color:#4a5568;cursor:pointer;-webkit-user-select:none;user-select:none}.show-inactive-toggle input[type=checkbox]{width:15px;height:15px;accent-color:#1A509D;cursor:pointer}.btn-new-resource{display:flex;align-items:center;gap:.45rem;padding:.5rem 1.1rem;background:linear-gradient(135deg,#1a509d,#0d1427);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity .15s;white-space:nowrap}.btn-new-resource svg{width:16px;height:16px}.btn-new-resource:hover{opacity:.88}.resources-loading{display:flex;align-items:center;gap:.75rem;padding:3rem;justify-content:center;color:#718096}.spinner{width:22px;height:22px;border:3px solid #E2E8F0;border-top-color:#1a509d;border-radius:50%;animation:spin .7s linear infinite}.resources-error{background:#fde8e8;border:1px solid #F5C6C6;color:#c0392b;padding:1rem 1.25rem;border-radius:10px;font-size:.88rem}.resources-empty{text-align:center;padding:3rem;color:#718096;font-size:.9rem}.resources-sections{display:flex;flex-direction:column;gap:1.5rem}.resource-section-block{background:#fff;border-radius:12px;border:1px solid #E2E8F0;overflow:hidden}.resource-section-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid #E2E8F0;background:#f8f9fa}.section-badge{font-size:.82rem;font-weight:700;padding:.3rem .8rem;border-radius:99px;text-transform:uppercase;letter-spacing:.03em}.section-badge.section-manual{background:#ebf2fb;color:#1a509d}.section-badge.section-herramientas{background:#e8f8f1;color:#1a7a4a}.section-badge.section-videos{background:#fff3e0;color:#e67e22}.section-badge.section-adicionales{background:#f3e8ff;color:#7b2d8b}.section-item-count{font-size:.78rem;color:#718096}.resource-table-wrapper{overflow-x:auto}.resource-table{width:100%;border-collapse:collapse;font-size:.84rem}.resource-table thead{background:#fafbfc;border-bottom:1px solid #E2E8F0}.resource-table th{padding:.7rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.resource-table td{padding:.75rem 1rem;border-bottom:1px solid #F0F4F8;vertical-align:middle;color:#2d3748}.resource-table tbody tr:last-child td{border-bottom:none}.resource-table tbody tr:hover{background:#f8fbff}.resource-table tbody tr.row-inactive{opacity:.55;background:#fafafa}.col-order{width:42px;text-align:center;color:#a0aec0!important;font-size:.78rem}.col-thumb{width:52px}.col-status{width:90px;text-align:center}.col-actions{width:90px;text-align:right}.col-url{max-width:200px}.resource-thumb{width:40px;height:28px;object-fit:cover;border-radius:5px;border:1px solid #E2E8F0;display:block}.resource-thumb-placeholder{width:40px;height:28px;border-radius:5px;background:#f0f4f8;border:1px solid #E2E8F0;display:flex;align-items:center;justify-content:center}.resource-thumb-placeholder svg{width:16px;height:16px;color:#cbd5e0}.col-title{display:flex;flex-direction:column;gap:.15rem}.resource-title{font-weight:600;color:#1a202c;font-size:.84rem}.resource-desc{font-size:.75rem;color:#718096}.type-badge{display:inline-block;font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:99px;text-transform:uppercase;letter-spacing:.02em}.type-badge.type-manual{background:#ebf2fb;color:#1a509d}.type-badge.type-herramienta{background:#e8f8f1;color:#1a7a4a}.type-badge.type-video{background:#fff3e0;color:#e67e22}.type-badge.type-documento{background:#f3e8ff;color:#7b2d8b}.resource-url-link,.resource-url-file{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:500;text-decoration:none;padding:.2rem 0;border-bottom:1px dashed transparent;transition:border-color .15s}.resource-url-link{color:#1a509d}.resource-url-link:hover{border-bottom-color:#1a509d}.resource-url-file{color:#1a7a4a}.resource-url-file:hover{border-bottom-color:#1a7a4a}.resource-url-link svg,.resource-url-file svg{width:13px;height:13px;flex-shrink:0}.no-url{color:#cbd5e0;font-size:.82rem}.toggle-active-btn{display:inline-block;padding:.25rem .65rem;border-radius:99px;font-size:.72rem;font-weight:600;border:1.5px solid;cursor:pointer;transition:all .15s}.toggle-active-btn.active{background:#e8f8f1;border-color:#1a7a4a;color:#1a7a4a}.toggle-active-btn.active:hover{background:#1a7a4a;color:#fff}.toggle-active-btn.inactive{background:#f0f4f8;border-color:#cbd5e0;color:#718096}.toggle-active-btn.inactive:hover{background:#e8f8f1;border-color:#1a7a4a;color:#1a7a4a}.col-actions{display:flex;justify-content:flex-end;gap:.4rem;align-items:center}.action-btn{width:32px;height:32px;border-radius:7px;border:1.5px solid #E2E8F0;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.action-btn svg{width:14px;height:14px}.edit-btn{color:#1a509d}.edit-btn:hover{background:#ebf2fb;border-color:#1a509d}.delete-btn{color:#c0392b}.delete-btn:hover{background:#fde8e8;border-color:#c0392b}.modal-overlay{position:fixed;inset:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.resource-modal{background:#fff;border-radius:14px;width:100%;max-width:620px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000040}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.2rem 1.5rem;border-bottom:1px solid #E2E8F0}.modal-header h3{font-size:1rem;font-weight:700;color:#1a202c;margin:0}.modal-close{width:32px;height:32px;border-radius:8px;border:1.5px solid #E2E8F0;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#718096;transition:all .15s}.modal-close:hover{background:#fde8e8;border-color:#c0392b;color:#c0392b}.modal-close svg{width:15px;height:15px}.resource-form{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.form-error{background:#fde8e8;border:1px solid #F5C6C6;color:#c0392b;padding:.75rem 1rem;border-radius:8px;font-size:.84rem;margin-bottom:.5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group label{font-size:.8rem;font-weight:600;color:#4a5568}.form-group .required{color:#c0392b;margin-left:2px}.form-group input,.form-group select,.form-group textarea{padding:.55rem .8rem;border:1.5px solid #E2E8F0;border-radius:8px;font-size:.84rem;color:#1a202c;background:#fff;transition:border-color .15s;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1a509d;box-shadow:0 0 0 3px #1a509d1a}.form-group textarea{resize:vertical}.field-hint{font-size:.72rem;color:#a0aec0}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem;padding-top:1rem;border-top:1px solid #E2E8F0}.btn-cancel{padding:.55rem 1.2rem;border:1.5px solid #E2E8F0;background:#fff;border-radius:8px;font-size:.84rem;font-weight:600;color:#4a5568;cursor:pointer;transition:all .15s}.btn-cancel:hover{background:#f0f4f8}.btn-save{padding:.55rem 1.4rem;background:linear-gradient(135deg,#1a509d,#0d1427);color:#fff;border:none;border-radius:8px;font-size:.84rem;font-weight:600;cursor:pointer;transition:opacity .15s}.btn-save:hover{opacity:.88}.btn-save:disabled{opacity:.55;cursor:not-allowed}.delete-modal{background:#fff;border-radius:14px;padding:2rem 2rem 1.5rem;width:100%;max-width:400px;text-align:center;box-shadow:0 20px 60px #00000040}.delete-modal-icon{width:52px;height:52px;border-radius:50%;background:#fde8e8;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#c0392b}.delete-modal-icon svg{width:24px;height:24px}.delete-modal h3{font-size:1rem;font-weight:700;color:#1a202c;margin:0 0 .6rem}.delete-modal p{font-size:.85rem;color:#4a5568;line-height:1.5;margin:0 0 1.5rem}.delete-modal-actions{display:flex;gap:.75rem;justify-content:center}.btn-delete-confirm{padding:.55rem 1.4rem;background:#c0392b;color:#fff;border:none;border-radius:8px;font-size:.84rem;font-weight:600;cursor:pointer;transition:opacity .15s}.btn-delete-confirm:hover{opacity:.88}.btn-delete-confirm:disabled{opacity:.55;cursor:not-allowed}@media(max-width:768px){.resources-topbar{flex-direction:column}.resources-topbar-right{width:100%;justify-content:space-between}.section-tabs{gap:.25rem}.section-tab{font-size:.75rem;padding:.35rem .65rem}.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:1}}.admin-events{padding:0}.events-topbar{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;background:#fff;border-bottom:1px solid #e5e7eb;gap:20px;flex-wrap:wrap}.events-topbar-left{flex:1}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}.filter-tab{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.filter-tab:hover{background:#f3f4f6;border-color:#d1d5db}.filter-tab.active{background:#1f2937;color:#fff;border-color:#1f2937}.filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:#0000001a;border-radius:11px;font-size:12px;font-weight:600}.filter-tab.active .filter-count{background:#fff3}.events-topbar-right{display:flex;align-items:center;gap:16px}.show-inactive-toggle{display:flex;align-items:center;gap:8px;font-size:14px;color:#6b7280;cursor:pointer;-webkit-user-select:none;user-select:none}.show-inactive-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer}.btn-new-event{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#1f2937;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-new-event:hover{background:#111827;transform:translateY(-1px)}.btn-new-event svg{width:18px;height:18px}.events-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:80px 20px;color:#6b7280}.spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#1f2937;border-radius:50%;animation:spin .8s linear infinite}.events-error{padding:20px;margin:20px;background:#fef2f2;color:#dc2626;border-radius:8px;text-align:center}.events-empty{padding:60px 20px;text-align:center;color:#9ca3af;font-size:16px}.events-section{padding:24px 32px;background:#fff}.events-section+.events-section{border-top:1px solid #e5e7eb}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.section-header h3{font-size:18px;font-weight:600;color:#1f2937;margin:0}.section-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;background:#f3f4f6;border-radius:14px;font-size:13px;font-weight:600;color:#6b7280}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.event-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s}.event-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #00000014}.event-card.inactive{opacity:.6}.event-card.past{border-color:#d1d5db}.event-image{width:100%;height:200px;background:#f3f4f6;overflow:hidden}.event-image img{width:100%;height:100%;object-fit:cover}.event-content{padding:20px;display:flex;flex-direction:column;gap:12px;flex:1}.event-header{display:flex;align-items:center;gap:8px}.type-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge{display:inline-block;padding:4px 8px;border-radius:6px;font-size:11px;font-weight:600}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.event-title{font-size:18px;font-weight:600;color:#1f2937;margin:0;line-height:1.4}.event-meta{display:flex;flex-direction:column;gap:8px}.meta-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#6b7280}.meta-item svg{width:16px;height:16px;flex-shrink:0}.event-description{font-size:14px;color:#6b7280;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.event-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid #f3f4f6;margin-top:auto}.action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .2s}.action-btn:hover{background:#f3f4f6;border-color:#d1d5db;color:#1f2937}.action-btn svg{width:18px;height:18px}.action-btn.featured-btn:hover{background:#fef3c7;border-color:#fbbf24;color:#92400e}.action-btn.edit-btn:hover{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.action-btn.delete-btn:hover{background:#fee2e2;border-color:#ef4444;color:#991b1b}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.event-modal{background:#fff;border-radius:16px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #00000026}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid #e5e7eb}.modal-header h3{font-size:20px;font-weight:600;color:#1f2937;margin:0}.modal-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#f9fafb;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-close svg{width:20px;height:20px}.event-form{padding:28px}.form-error{padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#374151}.required{color:#dc2626}.form-group input,.form-group select,.form-group textarea{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#1f2937;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:80px}.field-hint{font-size:12px;color:#9ca3af;margin-top:-4px}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid #e5e7eb}.btn-cancel,.btn-save{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel{background:#f9fafb;color:#6b7280;border:1px solid #d1d5db}.btn-cancel:hover{background:#f3f4f6;color:#1f2937}.btn-save{background:#1f2937;color:#fff}.btn-save:hover{background:#111827}.btn-save:disabled{opacity:.5;cursor:not-allowed}.delete-modal{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:440px;text-align:center;box-shadow:0 20px 40px #00000026}.delete-modal-icon{width:64px;height:64px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;background:#fee2e2;border-radius:50%;color:#dc2626}.delete-modal-icon svg{width:32px;height:32px}.delete-modal h3{font-size:20px;font-weight:600;color:#1f2937;margin:0 0 12px}.delete-modal p{font-size:14px;color:#6b7280;line-height:1.6;margin:0 0 24px}.delete-modal-actions{display:flex;gap:12px;justify-content:center}.btn-delete-confirm{padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-delete-confirm:hover{background:#b91c1c}.btn-delete-confirm:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.events-topbar{flex-direction:column;align-items:stretch;padding:16px}.filter-tabs{justify-content:flex-start;overflow-x:auto}.events-topbar-right{flex-direction:column;align-items:stretch}.events-section{padding:16px}.events-grid,.form-grid{grid-template-columns:1fr}.form-group{grid-column:1 / -1}}.acs-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 2rem;color:var(--neutral-gray);font-size:1rem}.acs-spinner{width:40px;height:40px;border:3px solid #E9ECEF;border-top-color:var(--primary-navy);border-radius:50%;animation:acs-spin .8s linear infinite}.acs-error-state{text-align:center;padding:3rem 2rem}.acs-error-state p{color:#dc3545;margin-bottom:1.5rem;font-size:1rem}.acs-btn-back-link{color:var(--primary-navy);text-decoration:none;font-weight:600;font-size:.95rem}.acs-btn-back-link:hover{text-decoration:underline}.acs-container{max-width:1400px;margin:0 auto}.acs-header{margin-bottom:2rem}.acs-breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.9rem}.acs-breadcrumb-link{color:var(--primary-navy);text-decoration:none;font-weight:600}.acs-breadcrumb-link:hover{text-decoration:underline}.acs-breadcrumb-sep{color:#adb5bd}.acs-breadcrumb-current{color:var(--neutral-gray)}.acs-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.acs-title{font-family:var(--font-heading);font-size:2.25rem;color:var(--deep-navy);margin:0 0 .5rem}.acs-subtitle{font-size:1.05rem;color:var(--neutral-gray);margin:0}.acs-btn-create{background:var(--accent-coral);color:var(--neutral-white);padding:.875rem 1.75rem;border:none;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 12px #cb333b33;white-space:nowrap}.acs-btn-create svg{width:20px;height:20px}.acs-btn-create:hover{background:#b02a31;transform:translateY(-2px);box-shadow:0 4px 16px #cb333b4d}.acs-course-info{display:flex;align-items:center;gap:1rem;background:var(--neutral-white);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000000f;border-left:4px solid var(--primary-navy)}.acs-course-info-icon{width:42px;height:42px;background:#1a509d1a;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.acs-course-info-icon svg{width:20px;height:20px;stroke:var(--primary-navy)}.acs-course-info-text{display:flex;flex-direction:column;flex:1;gap:.2rem}.acs-course-info-title{font-family:var(--font-heading);font-size:1.1rem;color:var(--deep-navy);font-weight:700}.acs-course-info-desc{font-size:.875rem;color:var(--neutral-gray)}.acs-badge{padding:.35rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.acs-badge-active{background:#d4edda;color:#155724}.acs-badge-inactive{background:#f8d7da;color:#721c24}.acs-empty-state{text-align:center;padding:4rem 2rem;background:var(--neutral-white);border-radius:16px;box-shadow:0 2px 12px #00000014}.acs-empty-state svg{width:80px;height:80px;stroke:var(--neutral-gray);opacity:.4;margin-bottom:1.5rem}.acs-empty-state p{font-size:1.15rem;color:var(--neutral-gray);margin-bottom:1.5rem}.acs-btn-create-small{background:var(--primary-navy);color:var(--neutral-white);padding:.75rem 1.5rem;border:none;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease}.acs-btn-create-small:hover{background:var(--deep-navy);transform:translateY(-2px)}.acs-table-wrapper{background:var(--neutral-white);border-radius:16px;box-shadow:0 2px 12px #00000014;overflow:hidden}.acs-table{width:100%;border-collapse:collapse;font-size:.9rem}.acs-table thead{background:#f8f9fa;border-bottom:2px solid #E9ECEF}.acs-table th{padding:.875rem 1rem;text-align:left;font-weight:700;font-size:.8rem;color:var(--neutral-gray);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.acs-th-order{width:48px;text-align:center}.acs-table td{padding:.875rem 1rem;border-bottom:1px solid #F1F3F5;vertical-align:middle}.acs-table tbody tr:last-child td{border-bottom:none}.acs-table tbody tr:hover{background:#f8f9fa}.acs-row-inactive{opacity:.55}.acs-td-order{text-align:center;font-weight:700;color:var(--neutral-gray);font-size:.85rem}.acs-td-thumbnail{width:80px}.acs-thumbnail{width:70px;height:50px;object-fit:cover;border-radius:6px;display:block}.acs-thumbnail-placeholder{width:70px;height:50px;background:#f1f3f5;border-radius:6px;display:flex;align-items:center;justify-content:center}.acs-thumbnail-placeholder svg{width:22px;height:22px;stroke:#adb5bd}.acs-td-title{max-width:260px}.acs-section-title{display:block;font-weight:600;color:var(--deep-navy);margin-bottom:.15rem}.acs-section-desc{display:block;font-size:.8rem;color:var(--neutral-gray);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}.acs-type-badge{padding:.3rem .65rem;border-radius:6px;font-size:.75rem;font-weight:600;white-space:nowrap}.acs-type-video{background:#fff3cd;color:#856404}.acs-type-text{background:#cce5ff;color:#004085}.acs-type-both{background:#d4edda;color:#155724}.acs-td-resource{text-align:center;width:70px}.acs-resource-link{display:inline-flex;align-items:center;gap:.3rem;color:var(--primary-navy);text-decoration:none;font-weight:600;font-size:.8rem;padding:.3rem .5rem;border-radius:5px;background:#1a509d14;transition:background .2s}.acs-resource-link:hover{background:#1a509d2e}.acs-resource-link svg{width:14px;height:14px}.acs-resource-video{color:#d97706;background:#d9770614}.acs-resource-video:hover{background:#d977062e}.acs-no-resource{color:#adb5bd;font-size:.85rem}.acs-toggle-btn{padding:.3rem .75rem;border-radius:20px;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.acs-toggle-active{background:#d4edda;color:#155724}.acs-toggle-active:hover{background:#c3e6cb}.acs-toggle-inactive{background:#f8d7da;color:#721c24}.acs-toggle-inactive:hover{background:#f5c6cb}.acs-td-actions{white-space:nowrap;width:90px}.acs-action-btn{width:34px;height:34px;border-radius:6px;border:1px solid #DEE2E6;background:var(--neutral-white);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;margin-left:.35rem}.acs-action-btn svg{width:16px;height:16px}.acs-btn-edit{color:#0d6efd;border-color:#0d6efd}.acs-btn-edit:hover{background:#0d6efd;color:#fff}.acs-btn-edit svg{stroke:#0d6efd}.acs-btn-edit:hover svg{stroke:#fff}.acs-btn-delete{color:#dc3545;border-color:#dc3545}.acs-btn-delete:hover{background:#dc3545;color:#fff}.acs-btn-delete svg{stroke:#dc3545}.acs-btn-delete:hover svg{stroke:#fff}.acs-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.acs-modal{background:var(--neutral-white);border-radius:16px;width:100%;max-width:640px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.acs-modal-small{max-width:440px}.acs-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.75rem 2rem 1.25rem;border-bottom:1px solid #E9ECEF;position:sticky;top:0;background:var(--neutral-white);z-index:1}.acs-modal-header h2{font-family:var(--font-heading);font-size:1.6rem;color:var(--deep-navy);margin:0}.acs-modal-close{background:none;border:none;cursor:pointer;padding:.4rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background .2s}.acs-modal-close:hover{background:#f8f9fa}.acs-modal-close svg{width:22px;height:22px;stroke:var(--neutral-gray)}.acs-modal-form{padding:1.75rem 2rem 2rem}.acs-form-error{background:#fff5f5;border:1px solid #FED7D7;color:#c53030;border-radius:8px;padding:.75rem 1rem;font-size:.9rem;margin-bottom:1.25rem}.acs-form-group{margin-bottom:1.25rem}.acs-form-group label{display:block;font-weight:600;color:var(--deep-navy);margin-bottom:.45rem;font-size:.9rem}.acs-form-group input[type=text],.acs-form-group input[type=url],.acs-form-group input[type=number],.acs-form-group textarea,.acs-form-group select{width:100%;padding:.7rem .9rem;border:1px solid #DEE2E6;border-radius:8px;font-family:var(--font-body);font-size:.9rem;transition:border-color .2s,box-shadow .2s;background:#fff;color:var(--deep-navy)}.acs-form-group input:focus,.acs-form-group textarea:focus,.acs-form-group select:focus{outline:none;border-color:var(--primary-navy);box-shadow:0 0 0 3px #1a509d1a}.acs-form-group textarea{resize:vertical;min-height:80px}.acs-form-group small{display:block;margin-top:.4rem;font-size:.82rem;color:var(--neutral-gray)}.acs-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.acs-checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer}.acs-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.acs-checkbox-label span{font-size:.9rem;color:var(--deep-navy);font-weight:600}.acs-thumbnail-preview{margin-top:.5rem}.acs-thumbnail-preview img{max-height:100px;max-width:200px;border-radius:6px;object-fit:cover;border:1px solid #DEE2E6}.acs-modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.25rem;border-top:1px solid #E9ECEF;margin-top:.25rem}.acs-btn-cancel{background:var(--neutral-white);color:var(--neutral-gray);padding:.7rem 1.4rem;border:1px solid #DEE2E6;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease}.acs-btn-cancel:hover{background:#f8f9fa;border-color:var(--neutral-gray)}.acs-btn-cancel:disabled{opacity:.5;cursor:not-allowed}.acs-btn-submit{background:var(--accent-coral);color:var(--neutral-white);padding:.7rem 1.4rem;border:none;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease}.acs-btn-submit:hover:not(:disabled){background:#b02a31;transform:translateY(-1px)}.acs-btn-submit:disabled{opacity:.6;cursor:not-allowed}.acs-btn-danger{background:#dc3545;color:var(--neutral-white);padding:.7rem 1.4rem;border:none;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease}.acs-btn-danger:hover:not(:disabled){background:#c82333;transform:translateY(-1px)}.acs-btn-danger:disabled{opacity:.6;cursor:not-allowed}.acs-delete-body{padding:1.5rem 2rem;text-align:center}.acs-delete-icon{width:60px;height:60px;background:#fff5f5;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}.acs-delete-icon svg{width:30px;height:30px;stroke:#dc3545}.acs-delete-body p{font-size:.95rem;color:var(--deep-navy);margin-bottom:.5rem;line-height:1.5}.acs-delete-warning{font-size:.85rem!important;color:var(--neutral-gray)!important}@media(max-width:900px){.acs-table th:nth-child(5),.acs-table td:nth-child(5),.acs-table th:nth-child(6),.acs-table td:nth-child(6){display:none}}@media(max-width:768px){.acs-title-row{flex-direction:column;gap:1rem}.acs-btn-create{width:100%;justify-content:center}.acs-title{font-size:1.75rem}.acs-table-wrapper{overflow-x:auto}.acs-form-row{grid-template-columns:1fr}.acs-modal-form,.acs-modal-header{padding:1.25rem 1.5rem}}.acs-upload-field{display:flex;flex-direction:column;gap:.5rem}.acs-upload-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;background:var(--primary-navy, #1A3A5C);color:#fff;border:none;border-radius:7px;font-size:.85rem;font-weight:500;cursor:pointer;transition:opacity .15s;width:fit-content}.acs-upload-btn svg{width:16px;height:16px;flex-shrink:0}.acs-upload-btn:hover:not(:disabled){opacity:.85}.acs-upload-btn:disabled{opacity:.6;cursor:not-allowed}.acs-upload-btn.uploading{opacity:.7}.acs-upload-btn-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.acs-upload-or{font-size:.8rem;color:#888;white-space:nowrap}.acs-upload-url-input{flex:1;min-width:0;padding:.55rem .9rem;border:1px solid #CED4DA;border-radius:7px;font-size:.85rem;font-family:inherit;background:#fff;color:#212529}.acs-upload-url-input:focus{outline:none;border-color:var(--primary-navy, #1A3A5C);box-shadow:0 0 0 3px #1a3a5c1a}.acs-upload-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;display:inline-block;animation:acs-spin .7s linear infinite;flex-shrink:0}@keyframes acs-spin{to{transform:rotate(360deg)}}.acs-upload-preview{position:relative;border-radius:8px;border:1px solid #DEE2E6;overflow:hidden;background:#f8f9fa}.acs-upload-preview-image img{display:block;max-height:140px;width:auto;max-width:100%;object-fit:cover}.acs-upload-preview-video video{display:block;width:100%;max-height:200px;background:#000}.acs-upload-preview-pdf{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem}.acs-upload-preview-pdf svg{width:20px;height:20px;color:#dc3545;flex-shrink:0}.acs-upload-preview-pdf a{font-size:.82rem;color:var(--primary-navy, #1A3A5C);text-decoration:none;word-break:break-all}.acs-upload-preview-pdf a:hover{text-decoration:underline}.acs-upload-preview-url{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;font-size:.82rem;color:#555;word-break:break-all}.acs-upload-preview-url svg{width:18px;height:18px;flex-shrink:0}.acs-upload-remove{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;border:none;background:#0000008c;color:#fff;font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.acs-upload-remove:hover{background:#000c}.cursos-container{min-height:100vh;background:#f8f9fa;padding-bottom:4rem}.cursos-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:5rem 2rem;color:#718096;font-size:.9rem}.cursos-spinner{width:26px;height:26px;border:3px solid #E2E8F0;border-top-color:#1a509d;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.cursos-error{max-width:700px;margin:3rem auto;background:#fde8e8;border:1px solid #F5C6C6;color:#c0392b;padding:1rem 1.25rem;border-radius:10px;font-size:.88rem}.cursos-header{padding:2rem 2rem 0;max-width:1300px;margin:0 auto}.cursos-header-inner{background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:18px;padding:2rem 2.5rem;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.cursos-header-icon{width:52px;height:52px;background:#ffffff26;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cursos-header-icon svg{width:26px;height:26px;color:#fff}.cursos-header-text{flex:1;min-width:0}.cursos-title{font-family:Trajan Pro,Trajan,serif;font-size:1.6rem;color:#fff;margin:0 0 .35rem;line-height:1.2}.cursos-subtitle{font-size:.85rem;color:#ffffffbf;margin:0;line-height:1.5;max-width:500px}.cursos-progress-area{min-width:200px;flex-shrink:0}.cursos-progress-label{display:flex;justify-content:space-between;font-size:.75rem;color:#fffc;margin-bottom:.4rem;font-weight:600}.cursos-progress-bar{height:7px;background:#fff3;border-radius:99px;overflow:hidden}.cursos-progress-fill{height:100%;background:#4ade80;border-radius:99px;transition:width .4s ease}.cursos-layout{display:grid;grid-template-columns:300px 1fr;gap:1.5rem;max-width:1300px;margin:1.5rem auto 3rem;padding:0 2rem;align-items:start}.cursos-sidebar{background:#fff;border-radius:14px;border:1px solid #E2E8F0;overflow:hidden;position:sticky;top:calc(68px + 1.5rem)}.sidebar-course-title{padding:1rem 1.25rem;font-size:.75rem;font-weight:700;color:#718096;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #F0F4F8;background:#fafbfc}.sections-list{list-style:none;padding:.5rem 0;margin:0;max-height:calc(100vh - 200px);overflow-y:auto}.section-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.7rem 1.25rem;background:none;border:none;text-align:left;cursor:pointer;transition:background .15s;font-family:inherit;border-left:3px solid transparent}.section-item:hover{background:#f8fbff}.section-item.active{background:#ebf2fb;border-left-color:#1a509d}.section-item.done{opacity:.75}.section-item.intro{background:linear-gradient(135deg,#1a509d14,#0d14270d);border-left-color:#1a509d;margin-bottom:.5rem}.section-item.intro:hover{background:linear-gradient(135deg,#1a509d1f,#0d142714)}.section-item.intro.active{background:linear-gradient(135deg,#1a509d26,#0d14271a)}.section-number.intro-icon{background:#1a509d;border-color:#1a509d;color:#fff}.section-number.intro-icon svg{width:12px;height:12px}.section-number{width:26px;height:26px;border-radius:50%;background:#f0f4f8;border:1.5px solid #E2E8F0;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;color:#718096;flex-shrink:0;transition:all .15s}.section-item.active .section-number{background:#1a509d;border-color:#1a509d;color:#fff}.section-number.done{background:#e8f8f1;border-color:#1a7a4a;color:#1a7a4a}.section-number.done svg{width:13px;height:13px}.section-item-title{flex:1;font-size:.82rem;font-weight:500;color:#2d3748;line-height:1.35}.section-item.active .section-item-title{font-weight:600;color:#1a509d}.section-has-pdf{color:#cbd5e0;flex-shrink:0}.section-has-pdf svg{width:13px;height:13px}.cursos-main{min-width:0}.section-content-card{background:#fff;border-radius:14px;border:1px solid #E2E8F0;overflow:hidden}.section-content-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.5rem 1.75rem 1rem;border-bottom:1px solid #F0F4F8;flex-wrap:wrap}.section-content-meta{flex:1;min-width:0}.section-content-num{font-size:.72rem;font-weight:700;color:#1a509d;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:.35rem}.section-content-num.intro-label{background:linear-gradient(135deg,#1a509d,#0d1427);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:.75rem}.section-title-row{display:flex;align-items:center;gap:.75rem;margin-top:.2rem}.section-title-thumb{width:40px;height:40px;border-radius:6px;object-fit:cover;flex-shrink:0}.section-content-title{font-size:1.3rem;font-weight:700;color:#1a202c;margin:0;line-height:1.3}.mark-done-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:#e8f8f1;border:1.5px solid #1A7A4A;border-radius:8px;color:#1a7a4a;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0;font-family:inherit}.mark-done-btn svg{width:14px;height:14px}.mark-done-btn:hover{background:#1a7a4a;color:#fff}.done-badge{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:#e8f8f1;border:1.5px solid #1A7A4A;border-radius:8px;color:#1a7a4a;font-size:.8rem;font-weight:600;white-space:nowrap;flex-shrink:0}.done-badge svg{width:14px;height:14px}.section-video-wrap{padding:1.5rem 1.75rem 0}.section-video-label{font-size:.75rem;font-weight:700;color:#718096;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.section-video{width:100%;border-radius:10px;background:#000;max-height:480px;display:block}iframe.section-video{aspect-ratio:16 / 9;max-height:none;border:none}.section-text-content{padding:1.25rem 1.75rem 0;font-size:.9rem;color:#2d3748;line-height:1.7}.section-material{padding:1.5rem 1.75rem 0}.material-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f8fbff;border:1.5px solid #BFDBFE;border-radius:10px;cursor:pointer;transition:all .15s}.material-card:hover{background:#ebf2fb;border-color:#1a509d}.material-icon{width:40px;height:40px;background:#ebf2fb;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#1a509d;flex-shrink:0}.material-icon svg{width:20px;height:20px}.material-info{flex:1;min-width:0}.material-label{display:block;font-size:.72rem;font-weight:700;color:#718096;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.15rem}.material-name{display:block;font-size:.85rem;font-weight:600;color:#1a509d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-action{display:flex;align-items:center;gap:.3rem;font-size:.82rem;font-weight:600;color:#1a509d;flex-shrink:0}.material-action svg{width:16px;height:16px}.section-no-material{display:flex;align-items:center;gap:.5rem;padding:1rem 1.75rem 0;font-size:.82rem;color:#a0aec0}.section-no-material svg{width:16px;height:16px}.section-nav{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.75rem;margin-top:1.5rem;border-top:1px solid #F0F4F8}.section-nav-btn{display:flex;align-items:center;gap:.4rem;padding:.6rem 1.25rem;border-radius:9px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit;border:1.5px solid #E2E8F0;background:#fff;color:#4a5568}.section-nav-btn svg{width:16px;height:16px}.section-nav-btn:hover:not(:disabled){border-color:#1a509d;color:#1a509d;background:#ebf2fb}.section-nav-btn:disabled{opacity:.35;cursor:default}.section-nav-btn.next{background:linear-gradient(135deg,#1a509d,#0d1427);border-color:transparent;color:#fff;margin-left:auto}.section-nav-btn.next:hover:not(:disabled){opacity:.88;background:linear-gradient(135deg,#1a509d,#0d1427);color:#fff}@media(max-width:900px){.cursos-layout{grid-template-columns:1fr;padding:0 1rem}.cursos-sidebar{position:static}.sections-list{max-height:280px}.cursos-header-inner{flex-direction:column;align-items:flex-start;gap:1rem}.cursos-progress-area{width:100%}}@media(max-width:600px){.cursos-header{padding:1rem 1rem 0}.cursos-layout{margin-top:1rem;gap:1rem}.cursos-title{font-size:1.25rem}.section-content-header{padding:1rem 1.25rem .75rem}.section-content-title{font-size:1.05rem}.section-video-wrap,.section-material,.section-thumbnail-wrap{padding-left:1.25rem;padding-right:1.25rem}.section-nav{padding:1rem 1.25rem}}.eventos-container{max-width:1200px;margin:0 auto;padding:2rem;animation:fadeInPage .4s ease-out}.eventos-header{text-align:center;margin-bottom:2.5rem}.eventos-title{font-family:var(--font-heading);font-size:2.25rem;font-weight:700;color:var(--deep-navy);margin-bottom:.75rem}.eventos-subtitle{font-size:1.1rem;color:var(--neutral-gray);line-height:1.6;max-width:700px;margin:0 auto}.eventos-filters{display:flex;gap:.75rem;margin-bottom:2.5rem;flex-wrap:wrap;justify-content:center}.filter-btn{padding:.65rem 1.5rem;background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:600;color:var(--neutral-dark);cursor:pointer}.filter-btn:hover{border-color:var(--primary-navy);color:var(--primary-navy);background:#f8fafc}.filter-btn.active{background:var(--primary-navy);border-color:var(--primary-navy);color:#fff}.featured-section,.regular-section{margin-bottom:3rem}.section-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--deep-navy);margin-bottom:1.5rem}.eventos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.featured-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.evento-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;position:relative}.evento-card:hover{box-shadow:0 4px 12px #0000001f}.evento-card.featured{border:2px solid #fbbf24}.featured-badge{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:4px;padding:6px 12px;background:#fbbf24;color:#78350f;border-radius:6px;font-size:12px;font-weight:600;z-index:10}.featured-badge svg{width:14px;height:14px}.evento-image{width:100%;height:200px;background:#f3f4f6;overflow:hidden}.evento-card.featured .evento-image{height:240px}.evento-image img{width:100%;height:100%;object-fit:cover}.image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#9ca3af}.image-placeholder svg{width:60px;height:60px}.evento-content{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;flex:1}.type-badge{display:inline-block;align-self:flex-start;padding:4px 12px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.type-badge.type-webinar{background:#dbeafe;color:#1e40af}.type-badge.type-conversatorio{background:#fce7f3;color:#be185d}.evento-title{font-size:1.25rem;font-weight:600;color:var(--deep-navy);line-height:1.4;margin:0}.evento-meta{display:flex;flex-direction:column;gap:.5rem}.meta-item{display:flex;align-items:flex-start;gap:8px;font-size:.875rem;color:var(--neutral-gray)}.meta-item svg{width:18px;height:18px;flex-shrink:0;margin-top:2px}.meta-item span{flex:1}.evento-description{font-size:.95rem;color:var(--neutral-gray);line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.evento-button{display:inline-block;padding:.75rem 1.5rem;background:var(--primary-navy);color:#fff;text-align:center;border-radius:8px;font-weight:600;text-decoration:none;margin-top:auto;border:none;cursor:pointer;width:100%}.evento-button:hover{background:var(--deep-navy)}.loading-message,.error-message{text-align:center;padding:3rem;font-size:1.1rem;color:var(--neutral-gray)}.error-message{color:#dc2626;background:#fef2f2;border-radius:8px;margin:2rem 0}.no-eventos{text-align:center;padding:4rem 2rem;color:var(--neutral-gray)}.no-eventos svg{width:80px;height:80px;margin-bottom:1rem;color:#d1d5db}.no-eventos p{font-size:1.1rem;margin:0}@media(max-width:1024px){.eventos-grid,.featured-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:768px){.eventos-container{padding:1.5rem 1rem}.eventos-title{font-size:1.75rem}.eventos-subtitle{font-size:1rem}.eventos-grid,.featured-grid{grid-template-columns:1fr}.filter-btn{flex:1;min-width:120px}.evento-image{height:180px}.evento-card.featured .evento-image{height:200px}}.evento-detalle-container{min-height:calc(100vh - 200px);padding:2rem;max-width:1400px;margin:0 auto;animation:fadeInPage .4s ease-out}@keyframes fadeInPage{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.evento-loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1.5rem}.evento-dots-loader{display:block;animation:none!important;transform:none!important}.evento-loading-dot{animation:none!important;transform:none!important}.evento-loading-dot-1{animation:none!important;opacity:1}.evento-loading-dot-2{animation:none!important;opacity:.7}.evento-loading-dot-3{animation:none!important;opacity:.4}.evento-loading-state p{font-size:1.1rem;font-weight:500;color:#475569}.error-state svg{width:64px;height:64px;color:#ef4444}.error-state h2{font-size:1.5rem;color:#1e293b;margin:0}.evento-back-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;font-weight:600;color:#475569;cursor:pointer;margin-bottom:2rem}.evento-back-btn:hover{border-color:#244478;color:#244478;background:#f8fafc}.evento-back-btn svg{width:20px;height:20px}.evento-hero{position:relative;height:400px;border-radius:20px;overflow:hidden;margin-bottom:3rem;box-shadow:0 10px 40px #00000026}.evento-hero-image{width:100%;height:100%;object-fit:cover}.evento-hero-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#244478,#1c2c48);display:flex;align-items:center;justify-content:center}.evento-hero-placeholder svg{width:120px;height:120px;color:#ffffff4d}.evento-hero-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:3rem 2rem 2rem}.evento-hero-content{max-width:900px}.evento-type-badge{display:inline-block;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem}.evento-type-badge.type-webinar{background:#3b82f6;color:#fff}.evento-type-badge.type-taller{background:#8b5cf6;color:#fff}.evento-type-badge.type-networking{background:#10b981;color:#fff}.evento-type-badge.type-conferencia{background:#f59e0b;color:#fff}.evento-type-badge.type-otro{background:#6b7280;color:#fff}.evento-hero-title{font-size:2.5rem;font-weight:700;color:#fff;margin:0;line-height:1.2}.evento-content-grid{display:grid;grid-template-columns:1fr 400px;gap:2rem;align-items:start}.evento-main-content{display:flex;flex-direction:column;gap:2rem}.content-card{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 16px #0000000d;border:1px solid #e2e8f0}.content-title{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0 0 1.5rem;padding-bottom:1rem;border-bottom:2px solid #f1f5f9}.content-body{font-size:1.05rem;line-height:1.8;color:#475569}.content-body p{margin:0 0 1rem}.no-description{color:#94a3b8;font-style:italic}.evento-sidebar{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:2rem}.sidebar-card{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 16px #0000000d;border:1px solid #e2e8f0}.sidebar-title{font-size:1.125rem;font-weight:700;color:#1e293b;margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid #f1f5f9}.info-item{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid #f1f5f9;margin:0 -1.5rem}.info-item:last-child{border-bottom:none}.info-item:first-child{padding-top:1.25rem}.info-item svg{width:24px;height:24px;color:#244478;flex-shrink:0;margin-top:.125rem}.info-item>div{display:flex;flex-direction:column;gap:.25rem;flex:1}.info-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:.95rem;font-weight:600;color:#1e293b}.registration-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #244478}.registration-text{font-size:.95rem;color:#475569;line-height:1.6;margin:0 0 1.5rem}.btn-register{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#cb333b,#a82830);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer}.btn-register:hover:not(:disabled){background:linear-gradient(135deg,#b52d34,#8f2329)}.btn-register:disabled{opacity:.7;cursor:not-allowed}.btn-register svg{width:20px;height:20px}.btn-spinner{display:inline-flex;gap:4px;align-items:center}.btn-spinner:before,.btn-spinner:after{content:"";width:6px;height:6px;border-radius:50%;background:#fff;animation:btnDotBounce 1.4s ease-in-out infinite both}.btn-spinner:before{animation-delay:-.32s}.btn-spinner:after{animation-delay:0s}@keyframes btnDotBounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}.registration-success{text-align:center;padding:1rem 0}.registration-success svg{width:64px;height:64px;color:#10b981;margin-bottom:1rem}.registration-success h4{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.registration-success p{font-size:.95rem;color:#64748b;margin:0}.btn-back{padding:.875rem 1.75rem;background:#244478;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer}.btn-back:hover{background:#1c2c48}@media(max-width:1024px){.evento-content-grid{grid-template-columns:1fr}.evento-sidebar{position:static}}@media(max-width:768px){.evento-detalle-container{padding:1rem}.evento-hero{height:300px;margin-bottom:2rem}.evento-hero-title{font-size:1.75rem}.evento-hero-overlay{padding:2rem 1.5rem 1.5rem}.content-card,.sidebar-card{padding:1.5rem}}.cv-builder{max-width:1200px;margin:0 auto;padding:3rem 2rem;background-color:#fff;min-height:100vh;box-sizing:border-box}.cv-builder-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #0066cc;border-radius:50%;animation:spin 1s linear infinite}.cv-builder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;background:#fff;padding:1.5rem 0;border-radius:0;box-shadow:none;border-bottom:1px solid #e0e0e0;flex-wrap:wrap;gap:1rem}.cv-builder-header h1{margin:0;color:#333;font-size:2rem;flex-shrink:0}.cv-title-input{display:flex;align-items:center;gap:.75rem;flex:1;min-width:300px}.cv-title-input label{font-weight:500;color:#555;white-space:nowrap}.input-cv-title{flex:1;padding:.6rem 1rem;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;transition:border-color .3s}.input-cv-title:focus{outline:none;border-color:#06c}.cv-builder-actions{flex-shrink:0}.cv-builder-actions{display:flex;gap:1rem}.btn-save-draft{padding:.75rem 1.5rem;background-color:#6c757d;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;transition:background-color .3s}.btn-back-to-cvs{padding:.75rem 1.5rem;background-color:#eef3f8;color:#1c2c48;border:1px solid #d5dee8;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s}.btn-back-to-cvs:hover{background-color:#e2e8f0}.btn-save-draft:hover:not(:disabled){background-color:#5a6268}.btn-save-draft:disabled{opacity:.6;cursor:not-allowed}.cv-steps-nav{display:flex;gap:1rem;margin-bottom:2rem;overflow-x:auto;overflow-y:visible;padding:.5rem 0;width:100%;box-sizing:border-box}.step-item{flex:1;min-width:180px;display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border-radius:8px;cursor:pointer;transition:all .3s;border:2px solid #e0e0e0}.step-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a;border-color:#06c}.step-item.active{border-color:#06c;background-color:#e6f2ff}.step-item.completed{border-color:#28a745;background-color:#e8f5e9}.step-icon{font-size:2rem;min-width:40px;text-align:center}.step-item.completed .step-icon{background-color:#28a745;color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.step-info{display:flex;flex-direction:column}.step-number{font-size:.75rem;color:#666;text-transform:uppercase}.step-title{font-weight:600;color:#333}.cv-step-content{background:#fff;padding:2rem 0;border-radius:0;box-shadow:none;margin-bottom:2rem;min-height:500px;width:100%;box-sizing:border-box;overflow-x:hidden}.cv-step h2{margin:0 0 .5rem;color:#333;font-size:1.75rem}.step-description{color:#666;margin-bottom:2rem;font-size:1rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{margin-bottom:.5rem;font-weight:600;color:#333;font-size:.9rem}.required{color:#dc3545}.form-group input,.form-group textarea,.form-group select{padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.form-group textarea{resize:vertical;min-height:100px}.form-hint{margin-top:.5rem;font-size:.85rem;color:#666}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:400!important}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer}.info-box{background-color:#e6f2ff;border-left:4px solid #0066cc;padding:1rem;margin-top:2rem;border-radius:4px;font-size:.9rem}.experiences-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.experience-item{border:2px solid #e0e0e0;border-radius:8px;overflow:hidden;transition:all .3s}.experience-item:hover,.experience-item.expanded{border-color:#06c}.experience-header{padding:1rem;background-color:#f8f9fa;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.experience-summary h3{margin:0 0 .25rem;color:#333;font-size:1.1rem}.experience-summary p{margin:0;color:#666;font-size:.9rem}.experience-form{padding:1.5rem;background-color:#fff}.achievements-list{display:flex;flex-direction:column;gap:.75rem}.achievement-item{display:flex;gap:.5rem;align-items:flex-start}.achievement-item textarea{flex:1;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;resize:vertical}.btn-add-achievement{margin-top:.5rem;padding:.5rem 1rem;background-color:#f0f0f0;border:1px dashed #999;border-radius:4px;cursor:pointer;font-size:.9rem;color:#333;transition:all .3s}.btn-add-achievement:hover{background-color:#e0e0e0;border-color:#666}.btn-add-experience,.btn-add{padding:.875rem 1.5rem;background-color:#06c;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:background-color .3s;width:100%}.btn-add-experience:hover,.btn-add:hover{background-color:#0052a3}.education-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.education-item,.item-card{border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;background-color:#fff;transition:box-shadow .3s}.education-item:hover,.item-card:hover{box-shadow:0 4px 12px #0000001a}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.card-header h3{margin:0;color:#333;font-size:1.1rem}.card{border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;background:#fff}.btn-icon{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.25rem;transition:transform .2s}.btn-icon:hover{transform:scale(1.2)}.btn-remove{color:#dc3545}.btn-remove-small{padding:.25rem .5rem;background-color:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-remove-small:hover{background-color:#c82333}.btn-remove-item{margin-top:1rem;padding:.5rem 1rem;background-color:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.btn-remove-item:hover{background-color:#c82333}.tabs-nav{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e0e0e0;flex-wrap:wrap}.tab-button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;font-weight:500;color:#666;transition:all .3s}.tab-button:hover{color:#06c}.tab-button.active{color:#06c;border-bottom-color:#06c}.tab-content{margin-top:1rem}.tab-panel{animation:fadeIn .3s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tab-panel h3{margin:0 0 .5rem;font-size:1.25rem;color:#333}.tab-description{color:#666;margin-bottom:1.5rem;font-size:.9rem}.item-card-inline{margin-bottom:.75rem}.form-inline{display:flex;gap:.75rem;align-items:center}.input-medium{flex:2;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem}.input-small{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem}.empty-state{text-align:center;padding:3rem 1rem;color:#999}.empty-state p{margin:.5rem 0}.cv-step-navigation{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#fff;padding:1.5rem 0;border-radius:0;box-shadow:none;border-top:1px solid #e0e0e0}.btn-previous,.btn-next,.btn-finish{padding:.875rem 2rem;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s}.btn-previous{background-color:#6c757d;color:#fff}.btn-previous:hover:not(:disabled){background-color:#5a6268}.btn-next,.btn-finish{background-color:#06c;color:#fff}.btn-next:hover:not(:disabled),.btn-finish:hover:not(:disabled){background-color:#0052a3}.btn-previous:disabled,.btn-next:disabled,.btn-finish:disabled{opacity:.5;cursor:not-allowed}.step-indicator{font-size:.9rem;color:#666;font-weight:500}.cv-preview{max-width:800px;margin:0 auto;background:#fff;padding:2rem 3rem;border:none;box-shadow:none;font-family:Arial Narrow,Arial,sans-serif;font-size:11pt;line-height:1.3;color:#000;width:100%;box-sizing:border-box;overflow-x:hidden}.cv-preview *,.cv-preview *:before,.cv-preview *:after{font-family:Arial Narrow,Arial,sans-serif!important}.cv-header{text-align:center;margin-bottom:.5rem}.cv-name{margin:0 0 .2rem;font-size:14pt;font-weight:700;color:#000;text-transform:uppercase;letter-spacing:.3px;text-align:center}.cv-contact-line{font-size:11pt;color:#000;margin-bottom:.5rem;line-height:1.2;text-align:center}.cv-contact-line .separator{margin:0 .3rem;font-weight:400}.cv-summary-section{margin:.5rem 0}.cv-summary{text-align:justify;line-height:1.3;color:#000;margin:0;font-size:11pt}.cv-linkedin{margin:.2rem 0 0;font-size:11pt;color:#000;text-align:right}.cv-skills-section{margin:.5rem 0;text-align:left;font-size:11pt;line-height:1.3;color:#000}.cv-skills-row{margin-bottom:.2rem;text-align:left}.cv-skill-item{display:inline-block;width:33.333%;text-align:left;padding-right:1rem;box-sizing:border-box;text-indent:-.5rem;padding-left:.5rem}.cv-spacer-lines{height:.8rem;margin:.3rem 0}.cv-section{margin-bottom:1.5rem}.cv-section-title{font-size:11pt!important;font-weight:700;color:#000;margin:0 0 .8rem;padding:0 0 .3rem;text-transform:uppercase;border-bottom:1px solid #000;width:100%;display:block}.cv-experience{margin-bottom:1.2rem}.cv-company-name{margin:0 0 .1rem;font-size:11pt;font-weight:700;color:#000;text-transform:uppercase}.cv-company-desc{margin:0 0 .3rem;font-size:11pt;color:#000;font-style:normal;line-height:1.3}.cv-position-header{width:100%;margin-bottom:.2rem;border-collapse:collapse;border:none}.cv-position-header td{border:none;padding:0;margin:0;vertical-align:baseline}.cv-position-title{font-size:11pt;font-weight:700;color:#000;text-align:left}.cv-position-spacer{display:none}.cv-date-range{font-size:11pt;color:#000;font-weight:700;text-align:right;white-space:nowrap}.cv-role-desc{margin:.1rem 0 .3rem;font-size:11pt;color:#000;font-style:italic;line-height:1.3}.cv-achievements{margin:.3rem 0 0;padding-left:1.2rem;list-style-type:none}.cv-achievement-item{margin:0 0 .3rem;padding-left:.2rem;line-height:1.3;font-size:11pt;color:#000;text-align:justify}.cv-experience-gap{height:.8rem}.cv-education-item{margin-bottom:.3rem;line-height:1.3;font-size:11pt;color:#000}.cv-edu-institution,.cv-edu-degree,.cv-edu-years{font-weight:400}.cv-training-item{margin-bottom:.3rem;line-height:1.3;font-size:11pt;color:#000}.cv-training-institution,.cv-training-course,.cv-training-year{font-weight:400}.cv-language-item{margin-bottom:.3rem;line-height:1.3;font-size:11pt;color:#000}.cv-award-item{margin-bottom:.5rem}.cv-award-content{margin:0;line-height:1.3;font-size:11pt;color:#000;text-align:justify}.cv-tool-item{margin-bottom:.3rem;line-height:1.3;font-size:11pt;color:#000}.preview-actions{margin-top:2rem;padding:1.5rem;display:flex;gap:1rem;justify-content:center;align-items:center}.btn-download{padding:.875rem 2rem;background:#dc3545;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 8px #00000026;min-width:180px;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-download:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000040}.btn-download:active{transform:translateY(0);box-shadow:0 2px 6px #0003}.btn-download:nth-child(1){background:#dc3545}.btn-download:nth-child(1):hover{background:#c82333}.btn-download:nth-child(2){background:#007bff}.btn-download:nth-child(2):hover{background:#0056b3}@media(max-width:768px){.cv-builder{padding:1rem .5rem}.cv-builder-header{padding:1rem}.cv-steps-nav{flex-direction:column;gap:.5rem}.step-item{min-width:auto}.form-grid{grid-template-columns:1fr}.cv-step-content{padding:1rem}.cv-preview{padding:1.5rem 1rem}.cv-position-header{flex-direction:column;align-items:flex-start}.cv-step-navigation{padding:1rem}}@media print{@page{margin:1.5cm 2cm;size:A4}body{background:#fff;margin:0;padding:0}.cv-builder-header,.cv-steps-nav,.cv-step-navigation,.preview-actions,.step-description,.cv-step>h2:first-child{display:none!important}header,nav,.header,.navbar,.footer{display:none!important}.cv-step-content{box-shadow:none;padding:0;background:#fff}.cv-preview{box-shadow:none;border:none;max-width:100%;padding:1.5cm 2cm;margin:0;font-size:11pt}.cv-section{margin-bottom:.8rem;page-break-after:auto}.cv-summary-section{margin:.2rem 0 .4rem}.cv-experience{page-break-inside:avoid;margin-bottom:.5rem}.cv-spacer-lines{height:.5rem;margin:.1rem 0}.cv-header{margin-bottom:.2rem;page-break-after:avoid}.cv-name{font-size:14pt;color:#000;margin-bottom:.1rem}.cv-contact-line{color:#000;margin-bottom:.2rem}.cv-section-title{font-size:10pt;font-weight:700;letter-spacing:2px;border-bottom:1px solid #000;width:100%;display:block!important;visibility:visible!important;padding-bottom:.2rem;margin-top:.5rem;margin-bottom:.3rem;page-break-after:avoid;color:#000!important}.cv-skills-section{margin-bottom:.4rem;page-break-inside:auto}.cv-skills-row{margin-bottom:.2rem}.cv-achievements{page-break-inside:auto;orphans:2;widows:2}.cv-achievement-item{page-break-inside:avoid}.cv-company-name,.cv-company-desc{page-break-after:avoid;margin-bottom:.1rem}.cv-role-desc{margin-top:.1rem;margin-bottom:.2rem}.cv-experience-gap{height:.4rem}.cv-contact-line,.cv-summary,.cv-company-desc,.cv-position-title,.cv-date-range,.cv-role-desc,.cv-achievement-item,.cv-education-item,.cv-training-item,.cv-language-item,.cv-award-content,.cv-tool-item{font-size:11pt;line-height:1.3}.cv-position-header{width:100%!important;margin-bottom:.2rem!important;border-collapse:collapse!important;border:none!important}.cv-position-header td{border:none!important;padding:0!important;margin:0!important;vertical-align:baseline!important}.cv-position-title{text-align:left!important;font-size:11pt!important;font-weight:700!important;color:#000!important}.cv-position-spacer{display:none!important}.cv-date-range{text-align:right!important;white-space:nowrap!important;font-size:11pt!important;color:#000!important;font-weight:700!important}.cv-skills-section,.cv-skills-row{text-align:left!important}.cv-skill-item{display:inline-block!important;width:33.333%!important;text-align:left!important;padding-right:1rem!important;box-sizing:border-box!important;text-indent:-.5rem!important;padding-left:.5rem!important}}.notification-toast{position:fixed;top:100px;right:30px;z-index:10000;min-width:320px;max-width:500px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026,0 0 0 1px #0000000d;animation:slideInRight .3s ease-out;overflow:hidden}@keyframes slideInRight{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.notification-toast.success{border-left:4px solid #10b981}.notification-toast.error{border-left:4px solid #ef4444}.notification-toast.info{border-left:4px solid #3b82f6}.notification-toast.warning{border-left:4px solid #f59e0b}.notification-content{display:flex;align-items:flex-start;padding:16px 20px;gap:12px}.notification-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-weight:700;font-size:14px;flex-shrink:0;margin-top:2px}.notification-toast.success .notification-icon{background-color:#d1fae5;color:#065f46}.notification-toast.error .notification-icon{background-color:#fee2e2;color:#991b1b}.notification-toast.info .notification-icon{background-color:#dbeafe;color:#1e40af}.notification-toast.warning .notification-icon{background-color:#fef3c7;color:#92400e}.notification-message{flex:1;color:#374151;font-size:14px;line-height:1.5;font-weight:400}.notification-close{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:18px;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;flex-shrink:0}.notification-close:hover{background-color:#f3f4f6;color:#374151}@media(max-width:768px){.notification-toast{top:80px;right:15px;left:15px;min-width:auto;max-width:none}@keyframes slideInRight{0%{transform:translateY(-100px);opacity:0}to{transform:translateY(0);opacity:1}}}.cv-upload-zone-container{margin-bottom:2rem}.cv-upload-zone{border:2px dashed #cbd5e0;border-radius:12px;padding:3rem 2rem;text-align:center;background-color:#f7fafc;transition:all .3s ease;cursor:pointer;position:relative}.cv-upload-zone:hover:not(.disabled){border-color:#06c;background-color:#e6f2ff;transform:translateY(-2px)}.cv-upload-zone.dragging{border-color:#06c;background-color:#e6f2ff;border-width:3px}.cv-upload-zone.disabled{opacity:.6;cursor:not-allowed;background-color:#f0f0f0}.upload-icon{color:#06c;margin-bottom:1rem;display:flex;justify-content:center}.upload-icon svg{width:64px;height:64px}.upload-title{margin:0 0 .5rem;color:#333;font-size:1.5rem;font-weight:600}.upload-description{margin:0 0 .5rem;color:#666;font-size:1rem}.upload-hint{margin:0 0 1rem;color:#06c;font-size:.95rem;font-weight:600}.upload-formats{margin:0;color:#999;font-size:.85rem}.upload-processing{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;background:linear-gradient(135deg,#e6f2ff,#f7fafc);border-radius:12px}.spinner-upload{width:56px;height:56px;border:5px solid #f3f3f3;border-top:5px solid #0066cc;border-right:5px solid #0066cc;border-radius:50%;animation:spin-upload 1.2s linear infinite}@keyframes spin-upload{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.upload-message{margin:0;color:#06c;font-size:1.15rem;font-weight:600;text-align:center;line-height:1.6;max-width:600px;padding:0 1rem}.upload-message-details{font-size:.95rem;color:#666;font-weight:400;margin-top:.5rem;font-style:italic}.upload-filename{margin:0;color:#666;font-size:.9rem;font-style:italic}.upload-status{margin-top:1rem;padding:1rem 1.5rem;border-radius:8px;display:flex;align-items:center;gap:.75rem;font-size:.95rem;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.upload-status-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.upload-status-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.upload-status-info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.status-icon{font-size:1.25rem;font-weight:700;flex-shrink:0}.status-message{flex:1;text-align:left}@media(max-width:768px){.cv-upload-zone{padding:2rem 1rem}.upload-icon svg{width:48px;height:48px}.upload-title{font-size:1.25rem}.upload-description{font-size:.9rem}}.cv-list-container{max-width:1200px;margin:0 auto;padding:3rem 2rem;min-height:100vh}.cv-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.cv-list-header h1{font-family:Mulish,sans-serif;font-size:2rem;font-weight:700;color:#0d1427;margin:0 0 .5rem}.cv-list-header p{font-size:1rem;color:#6b7280;margin:0}.btn-create-cv{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:#1a509d;color:#fff;border:none;border-radius:8px;font-family:Mulish,sans-serif;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-create-cv:hover{background:#0d1427;transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.btn-create-cv svg{width:20px;height:20px}.cv-list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #1A509D;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cv-list-empty{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f}.cv-list-empty svg{width:100px;height:100px;color:#e0e0e0;margin-bottom:2rem}.cv-list-empty h2{font-family:Mulish,sans-serif;font-size:1.5rem;font-weight:700;color:#0d1427;margin-bottom:.75rem}.cv-list-empty p{font-size:1rem;color:#6b7280;margin-bottom:2rem}.btn-create-cv-large{padding:1rem 2rem;background:#cb333b;color:#fff;border:none;border-radius:8px;font-family:Mulish,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-create-cv-large:hover{background:#b02a31;transform:translateY(-2px);box-shadow:0 4px 12px #cb333b4d}.cv-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.cv-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;transition:all .3s ease;border:2px solid transparent}.cv-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f;border-color:#1a509d}.cv-card-primary{border-color:#1a509d;box-shadow:0 12px 28px #1a509d1f}.cv-card-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #E0E0E0}.cv-card-header h3{font-family:Mulish,sans-serif;font-size:1.25rem;font-weight:700;color:#0d1427;margin:0 0 .75rem}.cv-card-badges{display:flex;gap:.5rem;flex-wrap:wrap}.badge-active,.badge-complete,.badge-draft{font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.badge-active{background:#e8f5e9;color:#2e7d32;border:1px solid #C8E6C9}.badge-complete{background:#e3f2fd;color:#1565c0;border:1px solid #BBDEFB}.badge-draft{background:#fff3e0;color:#e65100;border:1px solid #FFCC80}.cv-card-info{margin-bottom:1.5rem}.cv-primary-copy{margin:0 0 1rem;font-size:.92rem;line-height:1.5;color:#405064}.cv-date{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280;margin:0}.cv-date svg{width:16px;height:16px}.cv-card-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn-primary-cv,.btn-edit,.btn-delete{flex:1;min-width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border:none;border-radius:8px;font-family:Mulish,sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary-cv{background:#f0f6ff;color:#1a509d;border:1px solid #C7DAF5}.btn-primary-cv:hover:not(:disabled){background:#e1edff;transform:translateY(-2px)}.btn-primary-cv.is-current{background:#1a509d;color:#fff;border-color:#1a509d;cursor:default}.btn-primary-cv:disabled{opacity:1}.btn-edit{background:#1a509d;color:#fff}.btn-edit:hover{background:#0d1427;transform:translateY(-2px)}.btn-delete{background:#f5f5f5;color:#cb333b}.btn-delete:hover{background:#ffe8e8;color:#b02a31;transform:translateY(-2px)}.btn-primary-cv svg,.btn-edit svg,.btn-delete svg{width:16px;height:16px}.btn-edit svg{stroke:#fff}@media(max-width:768px){.cv-list-container{padding:2rem 1rem}.cv-list-header{flex-direction:column;align-items:flex-start;gap:1.5rem}.btn-create-cv{width:100%;justify-content:center}.cv-list-grid{grid-template-columns:1fr;gap:1.5rem}}.user-profile-container{min-height:100vh;background:#f5f7fa}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1.5rem}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#244478;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.profile-loading p{font-size:1.1rem;color:#64748b}.profile-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem;color:#ef4444}.profile-error svg{width:64px;height:64px}.profile-error p{font-size:1.1rem}.profile-banner{position:relative;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 2px 8px #0000000d}.banner-gradient{height:180px;background:linear-gradient(135deg,#244478,#1c2c48);position:relative;overflow:hidden}.banner-gradient:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.4}.profile-header-main{max-width:1200px;margin:0 auto;padding:0 2rem 2rem;display:flex;align-items:flex-end;gap:2rem;transform:translateY(-60px)}.profile-photo-section{display:flex;flex-direction:column;align-items:center;gap:.75rem}.profile-photo-wrapper{width:160px;height:160px;border-radius:50%;background:#fff;border:5px solid white;box-shadow:0 8px 24px #00000026;overflow:hidden;cursor:pointer;position:relative;transition:all .3s ease}.profile-photo-wrapper:hover{box-shadow:0 12px 32px #0003;transform:translateY(-2px)}.profile-photo-wrapper.dragging{border-color:#244478;box-shadow:0 0 0 3px #24447833}.profile-photo{width:100%;height:100%;object-fit:cover}.profile-photo-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);display:flex;align-items:center;justify-content:center}.profile-photo-placeholder svg{width:64px;height:64px;color:#94a3b8}.photo-overlay{position:absolute;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;opacity:0;transition:opacity .3s ease}.profile-photo-wrapper:hover .photo-overlay{opacity:1}.photo-overlay svg{width:32px;height:32px;color:#fff}.photo-overlay span{color:#fff;font-size:.875rem;font-weight:500}.photo-hint{font-size:.875rem;color:#64748b;text-align:center}.profile-header-info{flex:1;display:flex;flex-direction:column;gap:.5rem}.profile-name{font-size:2rem;font-weight:700;color:#1e293b;margin:0}.profile-email{font-size:1rem;color:#64748b;margin:0}.profile-role-badge{display:inline-block;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-top:.5rem;width:fit-content}.profile-role-badge.admin,.profile-role-badge.administrador{background:linear-gradient(135deg,#cb333b,#a82830);color:#fff}.profile-role-badge.normal,.profile-role-badge.candidato{background:linear-gradient(135deg,#244478,#1c2c48);color:#fff}.expiration-badge{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border-radius:12px;border:2px solid #e2e8f0;box-shadow:0 4px 12px #0000000d;min-width:280px}.expiration-badge svg{width:40px;height:40px;flex-shrink:0}.expiration-badge.active{border-color:#10b981}.expiration-badge.active svg{color:#10b981}.expiration-badge.warning{border-color:#f59e0b;background:#fffbeb}.expiration-badge.warning svg{color:#f59e0b}.expiration-badge.expired{border-color:#ef4444;background:#fef2f2}.expiration-badge.expired svg{color:#ef4444}.expiration-badge>div{display:flex;flex-direction:column;gap:.25rem}.expiration-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.expiration-date{font-size:.95rem;font-weight:700;color:#1e293b}.expiration-days{font-size:.875rem;color:#64748b}.expiration-expired{font-size:.875rem;color:#ef4444;font-weight:600}.profile-content{max-width:1200px;margin:0 auto 3rem;padding:0 2rem}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:2rem;margin-bottom:2rem;margin-top:2rem}.profile-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 16px #0000000d;border:1px solid #e2e8f0}.section-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f1f5f9}.section-header h2{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.section-subtitle{font-size:.95rem;color:#64748b;margin:0}.info-fields{display:flex;flex-direction:column;gap:1.5rem}.profile-field{display:flex;flex-direction:column;gap:.5rem}.profile-field label{font-size:.875rem;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px}.field-content{display:flex;align-items:center;gap:.5rem;background:#f8fafc;border:2px solid #e2e8f0;border-radius:10px;transition:all .2s ease;padding:.5rem}.field-content:hover{border-color:#cbd5e1}.field-value{flex:1;font-size:1rem;color:#1e293b;font-weight:500;padding:.375rem .5rem}.field-input{flex:1;font-size:1rem;color:#1e293b;font-weight:500;background:#fff;border:2px solid #244478;border-radius:8px;padding:.5rem .75rem;outline:none}.field-input:focus{border-color:#cb333b;box-shadow:0 0 0 3px #cb333b1a}.field-actions{display:flex;gap:.5rem;flex-shrink:0}.user-profile-container .btn-edit,.user-profile-container .btn-save,.user-profile-container .btn-cancel-edit{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;max-width:36px!important;max-height:36px!important;flex-shrink:0!important;flex-grow:0!important;border:none;border-radius:8px;display:flex!important;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0!important}.user-profile-container .btn-edit{background:#244478}.user-profile-container .btn-edit:hover{background:#1c2c48;transform:translateY(-1px)}.user-profile-container .btn-edit svg{width:18px;height:18px;color:#fff;stroke:#fff}.user-profile-container .btn-save{background:#10b981}.user-profile-container .btn-save:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.user-profile-container .btn-save:disabled{opacity:.5;cursor:not-allowed}.user-profile-container .btn-save svg{width:20px;height:20px;color:#fff;stroke:#fff}.user-profile-container .btn-cancel-edit{background:#ef4444}.user-profile-container .btn-cancel-edit:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.user-profile-container .btn-cancel-edit:disabled{opacity:.5;cursor:not-allowed}.user-profile-container .btn-cancel-edit svg{width:18px;height:18px;color:#fff;stroke:#fff}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem}.stat-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;transition:all .2s ease}.stat-card:hover{border-color:#244478;box-shadow:0 4px 12px #2444781a;transform:translateY(-2px)}.stat-icon{width:48px;height:48px;background:linear-gradient(135deg,#244478,#1c2c48);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon svg{width:24px;height:24px;color:#fff}.stat-content{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stat-value{font-size:.95rem;font-weight:700;color:#1e293b}.alert-warning,.alert-error{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;border-radius:12px;margin-top:2rem}.alert-warning{background:#fffbeb;border:2px solid #fde68a}.alert-warning svg{width:28px;height:28px;color:#f59e0b;flex-shrink:0}.alert-warning strong{color:#92400e}.alert-warning p{color:#78350f;margin:.25rem 0 0}.alert-error{background:#fef2f2;border:2px solid #fecaca}.alert-error svg{width:28px;height:28px;color:#ef4444;flex-shrink:0}.alert-error strong{color:#991b1b}.alert-error p{color:#7f1d1d;margin:.25rem 0 0}.crop-modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;padding:2rem}.crop-modal{background:#fff;border-radius:16px;max-width:600px;width:100%;overflow:hidden;box-shadow:0 20px 60px #0000004d}.crop-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0}.crop-header h3{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.close-btn{width:36px;height:36px;border:none;background:#f1f5f9;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.close-btn:hover{background:#e2e8f0}.close-btn svg{width:20px;height:20px;color:#64748b}.crop-content{padding:2rem}.crop-preview{width:100%;height:400px;background:#f8fafc;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center}.crop-preview img{max-width:100%;max-height:100%;object-fit:contain}.crop-actions{display:flex;gap:1rem;padding:1.5rem 2rem;border-top:1px solid #e2e8f0;justify-content:flex-end}.btn-cancel,.btn-confirm{padding:.75rem 1.5rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel{background:#f1f5f9;color:#475569}.btn-cancel:hover{background:#e2e8f0}.btn-confirm{background:linear-gradient(135deg,#244478,#1c2c48);color:#fff}.btn-confirm:hover{transform:translateY(-1px);box-shadow:0 4px 12px #2444784d}@media(max-width:1024px){.profile-grid{grid-template-columns:1fr}}@media(max-width:768px){.profile-header-main{flex-direction:column;align-items:center;text-align:center;transform:translateY(-40px)}.profile-photo-wrapper{width:120px;height:120px}.expiration-badge{width:100%}.profile-name{font-size:1.5rem}.profile-content{margin-top:-20px}.stats-grid{grid-template-columns:1fr}.crop-preview{height:300px}}.cv-uploaded-box,.cv-empty-box{padding:2rem;border-radius:12px;border:2px dashed #e2e8f0;text-align:center}.cv-uploaded-box{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-color:#bae6fd;display:flex;align-items:center;justify-content:space-between;text-align:left}.cv-file-info{display:flex;align-items:center;gap:1rem}.cv-file-info svg{width:48px;height:48px;color:#0284c7;flex-shrink:0}.cv-file-details{display:flex;flex-direction:column;gap:.25rem}.cv-filename{font-weight:600;color:#0c4a6e;font-size:1rem}.cv-date{font-size:.875rem;color:#0369a1}.btn-view-cv{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#0284c7;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;transition:all .2s}.btn-view-cv:hover{background:#0369a1;transform:translateY(-2px);box-shadow:0 4px 12px #0284c74d}.btn-view-cv svg{width:20px;height:20px}.cv-empty-box{background:#f8fafc;border-color:#cbd5e0}.cv-empty-box svg{width:64px;height:64px;color:#94a3b8;margin:0 auto 1rem}.cv-empty-box p{font-size:1.125rem;font-weight:600;color:#475569;margin-bottom:.5rem}.cv-empty-box small{color:#64748b;font-size:.875rem}@media(max-width:768px){.cv-uploaded-box{flex-direction:column;gap:1.5rem;text-align:center}.cv-file-info{flex-direction:column;text-align:center}}.favorite-jobs-container{min-height:calc(100vh - 250px);background:#f8f9fa;padding:88px 2rem 3rem}.favorite-jobs-header,.favorite-jobs-toolbar{max-width:1200px;margin:0 auto 1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.favorite-jobs-header h1{font-family:var(--font-heading);color:#1c2c48;margin-bottom:.5rem;font-weight:700}.favorite-jobs-header p,.favorite-jobs-current-cv{color:#4a5568}.favorite-jobs-current-cv{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.favorite-jobs-current-cv-note{font-size:.92rem;color:#5b6474}.favorite-jobs-back-button,.favorite-jobs-match-all,.favorite-job-button,.favorite-jobs-secondary-action{border:none;border-radius:10px;cursor:pointer;font-weight:600}.favorite-jobs-back-button,.favorite-jobs-match-all{padding:.9rem 1.25rem}.favorite-jobs-toolbar-actions{display:flex;gap:.75rem;flex-wrap:wrap}.favorite-jobs-secondary-action{padding:.9rem 1.25rem;background:#e2e8f0;color:#1c2c48}.favorite-jobs-back-button{background:#e2e8f0;color:#1c2c48}.favorite-jobs-match-all,.favorite-job-button.primary{background:#244478;color:#fff}.favorite-jobs-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.favorite-job-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:1.5rem;box-shadow:0 8px 24px #0f172a0f}.favorite-job-card-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.favorite-job-card h3{font-family:Mulish,sans-serif;color:#1c2c48;margin-bottom:.4rem;font-weight:700}.favorite-job-card p{color:#4a5568}.favorite-job-remove{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:999px;border:1px solid #fecdd3;background:#fff5f5;color:#b42318;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;flex:0 0 40px;aspect-ratio:1 / 1;box-sizing:border-box}.favorite-job-remove:hover{background:#ffe4e6;border-color:#fda4af}.favorite-job-remove svg{width:18px;height:18px}.favorite-job-meta{display:flex;flex-wrap:wrap;gap:.75rem;color:#475569;font-size:.95rem;margin-bottom:1rem}.favorite-job-match{background:#eff6ff;border:1px solid #bfdbfe;border-radius:14px;padding:1rem;margin-bottom:1rem}.favorite-job-match.pending{background:#f8fafc;border-color:#e2e8f0}.favorite-job-match-score{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.5rem}.favorite-job-match-score strong{font-size:1.8rem;color:#1d4ed8}.favorite-job-match-score span{color:#1e3a8a;font-weight:600}.favorite-job-actions{display:flex;gap:.75rem}.favorite-job-button{flex:1;padding:.85rem 1rem}.favorite-job-button.secondary{background:#e2e8f0;color:#1c2c48}.favorite-jobs-loading,.favorite-jobs-empty,.favorite-jobs-error{max-width:1200px;margin:0 auto;background:#fff;border-radius:16px;padding:2rem}.favorite-jobs-error{margin-bottom:1rem;color:#b91c1c;border:1px solid #fecaca;background:#fff5f5}.favorite-jobs-empty h2{font-family:Mulish,sans-serif;color:#1c2c48;font-weight:700}.favorite-jobs-modal-overlay{position:fixed;inset:0;background:#0f172a99;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:10000}.favorite-jobs-modal{position:relative;width:100%;max-width:560px;background:#fff;border-radius:20px;padding:2rem;box-shadow:0 24px 60px #0f172a38}.favorite-jobs-modal-close{position:absolute;top:.9rem;right:.9rem;width:36px;height:36px;border:none;border-radius:999px;background:#f1f5f9;color:#334155;font-size:1.5rem;cursor:pointer}.favorite-jobs-modal-title{margin:0 0 .75rem;font-family:Mulish,sans-serif;font-size:1.45rem;font-weight:700;color:#1c2c48}.favorite-jobs-modal-copy{margin:0;color:#4a5568;line-height:1.6}.favorite-jobs-modal-job{margin-top:1.25rem;padding:1rem 1.1rem;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:.35rem;color:#334155}.favorite-jobs-modal-actions{margin-top:1.5rem;display:flex;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}.favorite-jobs-modal-button{border:none;border-radius:10px;padding:.85rem 1.15rem;cursor:pointer;font-weight:700}.favorite-jobs-modal-button.primary{background:#244478;color:#fff}.favorite-jobs-modal-button.secondary{background:#e2e8f0;color:#1c2c48}@media(max-width:768px){.favorite-jobs-container{padding:96px 1rem 2rem}.favorite-jobs-header,.favorite-jobs-toolbar,.favorite-job-actions{flex-direction:column}.favorite-jobs-toolbar{align-items:stretch}.favorite-jobs-toolbar-actions,.favorite-jobs-secondary-action,.favorite-jobs-match-all{width:100%}.favorite-jobs-grid{grid-template-columns:1fr}.favorite-jobs-modal{padding:1.5rem}.favorite-jobs-modal-actions,.favorite-jobs-modal-button{width:100%}}@font-face{font-family:Trajan Sans Pro;src:url(/fonts/TrajanSansPro-Regular.woff2) format("woff2"),url(/fonts/TrajanSansPro-Regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Trajan Sans Pro;src:url(/fonts/TrajanSansPro-Bold.woff2) format("woff2"),url(/fonts/TrajanSansPro-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Trajan Sans Pro;src:url(/fonts/TrajanSansPro-Semibold.woff2) format("woff2"),url(/fonts/TrajanSansPro-Semibold.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}:root{--primary-navy: #1A509D;--deep-navy: #0D1427;--accent-coral: #CB333B;--neutral-white: #FFFFFF;--neutral-light: #F5F7FA;--neutral-gray: #6B7280;--neutral-dark: #1F2937;--transition-smooth: all .3s ease;--font-body: "Mulish", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: "Trajan Sans Pro", "Trajan Sans Pro", serif;--font-trajan: "Trajan Sans Pro", serif;--font-montserrat: "Montserrat", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);line-height:1.6;color:var(--neutral-dark);background-color:var(--deep-navy)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700}a{text-decoration:none;color:inherit}ul{list-style:none}img{max-width:100%;height:auto;display:block}.site-masthead{background:#244478;box-shadow:0 2px 10px #0000001a;position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;padding:0;transition:var(--transition-smooth)}.site-masthead:after{content:"";position:absolute;top:100%;left:0;right:0;height:0;background:#244478;transition:height .3s ease;z-index:-1}.site-masthead.submenu-active:after{height:250px}.masthead-wrapper{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:1rem 0}.brand-identity{flex-shrink:0;margin:0;padding:0}.brand-mark{display:block;margin:0;padding:0}.brand-mark img{width:200px;height:auto;margin:0;padding:0}.primary-navigation{flex-grow:1;display:flex;justify-content:flex-end}.nav-menu-list{display:flex;gap:0;align-items:center;padding-right:130px}.menu-item{position:relative}.menu-link{color:var(--neutral-white);font-family:var(--font-trajan);font-weight:500;font-size:.8rem;padding:.5rem .8rem;display:block;transition:var(--transition-smooth);border-radius:4px}.menu-link:hover{color:var(--neutral-white);opacity:.9}.has-submenu{position:relative}.submenu-panel{position:absolute;top:100%;left:0;background-color:transparent;min-width:220px;padding:.5rem 0;opacity:0;visibility:hidden;transition:var(--transition-smooth);margin-top:.5rem;z-index:10}.has-submenu:hover .submenu-panel{opacity:1;visibility:visible}.submenu-link{display:block;padding:.75rem 1.5rem;color:var(--neutral-white);font-family:var(--font-trajan);font-size:.95rem;transition:var(--transition-smooth)}.submenu-link:hover{background-color:#ffffff1a;color:var(--neutral-white);padding-left:2rem}.header-actions{display:flex;gap:1rem;align-items:center;margin-left:2rem;margin:0;padding:0}.action-link{display:flex;align-items:center;color:var(--neutral-white);transition:var(--transition-smooth);padding:0;margin:0}.action-link:hover{opacity:.8}.action-link svg{flex-shrink:0;width:24px;height:24px}.user-menu-container{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--neutral-white);cursor:pointer;padding:.5rem 1rem;border-radius:8px;transition:var(--transition-smooth)}.user-menu-trigger:hover{background:#ffffff1a}.user-menu-trigger svg{flex-shrink:0}.user-name{font-size:.9rem;font-weight:500;color:#fff;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-trigger .chevron{transition:transform .3s ease}.user-menu-trigger .chevron.open{transform:rotate(180deg)}.user-dropdown-menu{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--neutral-white);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:200px;z-index:1000;overflow:hidden}.dropdown-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem 1.25rem;border:none;background:none;color:var(--neutral-dark);font-size:.95rem;cursor:pointer;transition:var(--transition-smooth);text-align:left}.dropdown-item:hover{background:var(--neutral-light)}.dropdown-item.logout{background:var(--accent-coral);color:var(--neutral-white)}.dropdown-item.logout:hover{background:#b52e35}.dropdown-item svg{width:16px;height:16px;stroke:currentColor}.dropdown-item{text-decoration:none}.dropdown-user-info{padding:1rem 1rem .75rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0}.dropdown-user-name{font-size:1rem;font-weight:700;color:#1e293b;margin-bottom:.25rem}.dropdown-user-email{font-size:.875rem;color:#64748b;margin-bottom:.5rem}.dropdown-user-role{display:inline-block;padding:.25rem .75rem;background:linear-gradient(135deg,#244478,#1c2c48);color:#fff;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.dropdown-expiration{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:linear-gradient(135deg,#fef2f2,#fee2e2);border-bottom:1px solid #fecaca}.dropdown-expiration svg{color:#dc2626;flex-shrink:0;margin-top:.125rem}.expiration-info{display:flex;flex-direction:column;gap:.125rem}.expiration-label{font-size:.75rem;color:#991b1b;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.expiration-date{font-size:.875rem;color:#dc2626;font-weight:700}.dropdown-divider{height:1px;background:#e2e8f0;margin:0}@media(max-width:768px){.user-name{display:none}.user-menu-trigger{padding:.5rem}.user-dropdown-menu{right:-1rem}}.mobile-menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem;margin-left:1rem}.toggle-bar{width:28px;height:3px;background-color:var(--neutral-white);border-radius:2px;transition:var(--transition-smooth)}.mobile-menu-active .toggle-bar:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.mobile-menu-active .toggle-bar:nth-child(2){opacity:0}.mobile-menu-active .toggle-bar:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.page-content{min-height:60vh;position:relative;padding-top:68px;width:100%;overflow-x:hidden;background-color:#fff}.hero-banner{background:linear-gradient(135deg,var(--primary-navy) 0%,var(--deep-navy) 100%);padding:calc(82px + 4rem) 2rem 6rem;text-align:center;color:var(--neutral-white)}.banner-container{max-width:900px;margin:0 auto}.banner-title{font-size:3.5rem;font-weight:700;margin-bottom:1rem;line-height:1.2}.banner-subtitle{font-size:1.5rem;margin-bottom:2rem;opacity:.9}.action-button{display:inline-block;background-color:var(--accent-coral);color:var(--neutral-white);padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;border-radius:50px;transition:var(--transition-smooth);box-shadow:0 4px 15px #cb333b4d}.action-button:hover{background-color:#b02a31;transform:translateY(-3px);box-shadow:0 6px 20px #cb333b66}.content-area{padding:4rem 2rem;background-color:var(--neutral-light)}.content-wrapper{max-width:1200px;margin:0 auto}.content-wrapper h2{font-size:2.5rem;color:var(--primary-navy);margin-bottom:1.5rem}.content-wrapper p{font-size:1.2rem;color:var(--neutral-gray)}.bottom-section{background-color:var(--deep-navy);background-size:cover;background-position:center;background-repeat:no-repeat;color:var(--neutral-white);padding:80px 0 0}.bottom-container{max-width:1200px;margin:0 auto;padding:0 30px}.cta-area{display:grid;grid-template-columns:1fr 1.3fr;gap:0px;padding-bottom:0}.cta-content{display:flex;flex-direction:column;gap:20px;justify-content:center}.cta-logo img{width:180px;height:auto}.cta-brand{max-width:236px}.cta-title{font-size:40px;font-weight:400;color:var(--neutral-white);margin:0;line-height:1.3}.cta-text{font-size:1rem;color:#ffffffd9;line-height:1.6;margin:0}.cta-button{display:inline-block;background-color:var(--accent-coral);color:var(--neutral-white);padding:11px 30px 7px;text-decoration:none;border-radius:4px;font-family:var(--font-trajan);font-weight:400;font-size:1rem;transition:var(--transition-smooth);align-self:flex-start}.cta-button:hover{background-color:#b02a32;transform:translateY(-2px);box-shadow:0 4px 12px #cb333b4d}.services-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:30px}.service-column h3{font-family:var(--font-trajan);font-size:1.1rem;font-weight:600;color:var(--neutral-white);margin:0 0 15px;line-height:1.3}.service-column h3 a{font-family:var(--font-trajan);color:var(--neutral-white);text-decoration:none;font-size:14px;line-height:14px;font-weight:100}.service-list li{font-family:var(--font-trajan);font-size:12px;line-height:12px;margin-bottom:15px}.service-list li a,.service-list li span{font-family:var(--font-trajan);color:#ffffff73;font-size:12px;line-height:1.5;font-weight:300}.service-list li span:hover{color:#ffffffbf}.service-list{list-style:none;padding:0;margin:0}.service-item{margin-bottom:12px}.service-link{color:#ffffffbf;text-decoration:none;font-family:var(--font-trajan);font-size:.85rem;line-height:1.5;transition:var(--transition-smooth);display:inline-block}.service-link:hover{color:var(--neutral-white);padding-left:5px}.contact-area{display:flex;flex-direction:column;gap:25px}.social-row{display:flex;gap:15px;align-items:center;margin-bottom:15px}.social-link{color:#fffc;transition:var(--transition-smooth);display:flex;align-items:center;justify-content:center}.social-link:hover{color:var(--neutral-white);transform:translateY(-3px)}.social-link svg{width:1em;height:1em;fill:currentColor}.contact-info{display:flex;gap:40px}.contact-item{color:#fffc;text-decoration:none;font-size:.85rem;transition:var(--transition-smooth);display:flex;align-items:center;gap:8px}.contact-item:hover{color:var(--neutral-white)}.contact-item svg{width:14px;height:14px;fill:currentColor;flex-shrink:0}.contact-item span{font-size:12px;line-height:1.4}.desktop-only{display:flex}.mobile-only{display:none}.legal-area{display:flex;justify-content:space-between;align-items:center;padding:30px 0}.legal-links{display:flex;gap:30px;list-style:none;padding:0;margin:0}.legal-link{position:relative}.legal-link:not(:last-child):after{content:"";position:absolute;right:-15px;top:50%;transform:translateY(-50%);height:40%;width:1px;background-color:#ddd;border-left:1px solid #ddd}.legal-link a{color:#fff9;font-weight:400;text-decoration:none;font-size:12px;transition:var(--transition-smooth);font-family:var(--font-montserrat)}.legal-link a:hover{color:var(--neutral-white)}.copyright-text{color:#fff9;font-size:12px;margin:0;font-family:var(--font-trajan)}@media(max-width:1024px){.nav-menu-list{gap:1.5rem}.banner-title{font-size:2.5rem}.banner-subtitle{font-size:1.2rem}}@media(max-width:768px){.social-row{margin-bottom:0}.header-actions{display:none}.mobile-menu-toggle{display:flex}.primary-navigation{position:fixed;top:67px;left:0;width:100%;background:linear-gradient(180deg,var(--deep-navy) 0%,var(--primary-navy) 100%);padding:2rem;transform:translate(-100%);transition:var(--transition-smooth);box-shadow:0 4px 20px #0003}.primary-navigation.active{transform:translate(0)}.nav-menu-list{flex-direction:column;gap:0;align-items:stretch}.menu-item{border-bottom:1px solid rgba(255,255,255,.1)}.menu-link{padding:1rem}.submenu-panel{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;margin:0;border-radius:0;max-height:0;overflow:hidden;transition:max-height .3s ease}.has-submenu.active .submenu-panel{max-height:500px}.submenu-link{color:#ffffffe6;padding:.75rem 2rem}.submenu-link:hover{background-color:#ffffff1a;color:var(--neutral-white)}.banner-title{font-size:2rem}.banner-subtitle{font-size:1rem}.cta-area{grid-template-columns:1fr;gap:40px}.services-grid{grid-template-columns:repeat(2,1fr);gap:30px}.contact-area{gap:25px;align-items:flex-start}.contact-info{flex-direction:column;gap:20px;align-items:flex-start}.desktop-only{display:none!important}.mobile-only{display:flex!important;flex-direction:column;align-items:flex-start}.social-row{justify-content:flex-start;margin-top:30px}.legal-area{flex-direction:column;gap:20px;text-align:left;align-items:flex-start}.legal-links{flex-direction:column;align-items:flex-start;gap:15px}.legal-link{text-align:left;width:auto}.legal-link a{text-align:left}.legal-link:not(:last-child):after{display:none}.copyright-text{text-align:left}.contact-item{justify-content:flex-start}.legal-area .desktop-only{flex-direction:column}}@media(max-width:480px){.masthead-wrapper{padding:1rem}.banner-title{font-size:1.75rem}.action-button{padding:.875rem 2rem;font-size:1rem}.hero-banner{padding:4rem 1rem}.content-area{padding:3rem 1rem}.content-wrapper h2{font-size:2rem}.bottom-section{padding:60px 0 0}.bottom-container{padding:0 20px}.services-grid{grid-template-columns:1fr;gap:25px}.cta-brand{max-width:180px}.cta-logo img{width:140px}.cta-title{font-size:24px!important;line-height:1.3;font-weight:400}.cta-text{font-size:15px;line-height:1.5}.cta-button{padding:12px 24px;font-size:14px;width:100%;text-align:center}.service-column h3{font-size:16px;margin-bottom:12px}.service-column h3 a{font-size:16px}.service-list li{font-size:13px;line-height:13px;margin-bottom:12px}.service-list li a,.service-list li span{font-size:13px}.social-row{justify-content:center;gap:20px}.contact-item,.contact-item span{font-size:13px}.legal-links{gap:15px}.legal-link:not(:last-child):after{right:-8px}}@media(max-width:780px){.masthead-wrapper{padding:1rem}}.footer-lite{background:linear-gradient(180deg,#244478,#1c2c48);padding:1rem 0}.footer-lite .bottom-container{max-width:1200px;margin:0 auto;padding:0 2rem}.contact-area-lite{display:flex;flex-direction:column;align-items:flex-start;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1rem;gap:.75rem}.contact-info-lite{display:flex;align-items:center}.contact-list-inline{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:1.5rem;flex-wrap:wrap}.contact-item{display:inline-flex;align-items:center}.contact-item a{display:inline-flex;align-items:center;gap:.4rem;color:#fffc;text-decoration:none;font-size:.875rem;transition:color .3s ease}.contact-item a:hover{color:var(--neutral-white)}.contact-icon{display:inline-flex;align-items:center;width:14px;height:14px}.contact-icon svg{width:100%;height:100%;fill:currentColor}.contact-text{white-space:nowrap}.footer-lite .legal-area{padding:.75rem 0 0}.footer-lite .legal-links{justify-content:center;margin-bottom:.5rem}.footer-lite .copyright-text{font-size:.85rem;opacity:.7}@media(max-width:768px){.footer-lite{padding:1rem 0}.contact-area-lite{flex-direction:column;gap:1rem;align-items:center}.contact-list-inline{display:none}.social-row{margin:0 auto}}
