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:100vh;display:flex;align-items:center;justify-content:center;padding:calc(82px + 2rem) 2rem 2rem;background:#0d1427}.login-card{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;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}.login-title{font-family:Montserrat,sans-serif;font-size:1.3rem;font-weight:600;color:#1a1a1a;margin-bottom:.5rem}.login-subtitle{font-family:Mulish,sans-serif;font-size:1rem;color:#666}.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}.error-message svg{flex-shrink:0}.form-label{display:block;font-family:Mulish,sans-serif;font-size:.875rem;font-weight:600;color:#333;margin-bottom:.5rem}.form-input{width:100%;padding:.875rem 1rem;font-family:Mulish,sans-serif;font-size:1rem;border:1px solid #ddd;border-radius:8px;transition:all .3s ease}.form-input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.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;align-items:center;gap:.5rem;cursor:pointer;color:#666}.checkbox-input{cursor:pointer}.forgot-password{color:#06c;text-decoration:none;transition:color .3s ease}.forgot-password:hover{color:#004d99}.login-button{width:100%;padding:1rem;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#06c,#004d99);border:none;border-radius:8px;cursor:pointer;transition:all .3s ease}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0066cc4d}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-footer{text-align:center;font-family:Mulish,sans-serif;font-size:.875rem;color:#666}.login-footer a{color:#06c;text-decoration:none;font-weight:600}.login-footer a:hover{text-decoration:underline}@media(max-width:768px){.login-container{padding:1rem}.login-card{padding:2rem 1.5rem}.login-title{font-size:1.5rem}}.dashboard-container{min-height:calc(100vh - 250px);background:#f8f9fa;padding:2rem 2rem 3rem}.welcome-section{max-width:1200px;margin:0 auto 2rem}.welcome-content{background:var(--neutral-white);padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000000f;border-left:4px solid var(--accent-coral)}.welcome-title{font-family:var(--font-body);font-size:1.75rem;font-weight:700;margin-bottom:.75rem;color:var(--deep-navy)}.welcome-text{font-size:.95rem;line-height:1.6;margin-bottom:.75rem;color:var(--neutral-dark)}.welcome-contact{font-size:.9rem;color:var(--neutral-gray)}.welcome-contact a{color:var(--primary-navy);text-decoration:none;font-weight:600;transition:color .3s ease}.welcome-contact a:hover{color:var(--accent-coral)}.services-section{max-width:1200px;margin:0 auto}.section-heading{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--deep-navy);margin-bottom:1.5rem;text-align:left}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.service-card{background:var(--neutral-white);border-radius:12px;padding:1.75rem 1.5rem;text-align:center;box-shadow:0 2px 8px #0000000f;transition:all .3s ease;border:2px solid transparent;display:flex;flex-direction:column;align-items:center}.service-card:hover{transform:translateY(-8px);box-shadow:0 8px 24px #0000001f;border-color:var(--primary-navy)}.service-card-featured{background:linear-gradient(135deg,#1a509d,#0d1427);color:var(--neutral-white)}.service-card-featured .service-title,.service-card-featured .service-description{color:var(--neutral-white)}.service-card-featured svg{stroke:var(--neutral-white);opacity:.9}.service-card-featured:hover{border-color:var(--accent-coral)}.service-icon{margin-bottom:1.25rem;height:70px;width:70px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a509d,#0d1427);border-radius:12px;padding:1rem}.service-card-featured .service-icon{background:#ffffff26}.service-icon svg{width:100%;height:100%;stroke:var(--neutral-white);transition:transform .3s ease}.service-card:hover .service-icon svg{transform:scale(1.15)}.service-title{font-family:var(--font-heading);font-size:1.15rem;margin-bottom:.5rem;color:var(--deep-navy);font-weight:600}.service-description{font-size:.875rem;line-height:1.5;color:var(--neutral-gray);margin-bottom:1.25rem;flex-grow:1}.service-button{display:inline-block;background:var(--primary-navy);color:var(--neutral-white);padding:.65rem 1.5rem;border-radius:8px;text-decoration:none;font-family:var(--font-body);font-weight:600;font-size:.9rem;transition:all .3s ease;margin-top:auto}.service-button:hover{background:var(--deep-navy);transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.service-button-primary{background:var(--accent-coral)}.service-button-primary:hover{background:#b02a31;box-shadow:0 4px 12px #cb333b4d}@media(max-width:1024px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.dashboard-container{padding:1.5rem 1rem 2rem}.welcome-content{padding:1.5rem}.welcome-title{font-size:1.5rem}.welcome-text{font-size:.9rem}.services-grid{grid-template-columns:1fr;gap:1.25rem}.service-card{padding:1.5rem}}@media(max-width:480px){.welcome-title{font-size:1.35rem}.service-icon{height:60px;width:60px}.service-icon img{max-width:70px;max-height:60px}.service-title{font-size:1.05rem}.service-description{font-size:.825rem}}.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,#ffeaa7,#fdcb6e);border:2px solid #fab1a0}.service-card-h.featured-h:hover{box-shadow:0 8px 24px #fdcb6e4d}.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:#744210}.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:#975a16}.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:#667eea;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:#5568d3;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-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}.user-name{font-size:.9rem;font-weight:600;color:var(--deep-navy);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:linear-gradient(135deg,#0d1427,#1a509d);color:var(--neutral-white);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:var(--neutral-white);text-transform:lowercase;font-weight:700}.vacantes-subtitle{font-size:1.1rem;line-height:1.7;color:#ffffffd9}.vacantes-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:3rem}.vacante-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:3rem 2.5rem;border:1px solid rgba(255,255,255,.2);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 #0000004d;border-color:#fff6}.vacante-icon{margin-bottom:2rem}.vacante-icon img{max-width:300px;height:auto}.vacante-card-title{font-family:var(--font-heading);font-size:1.6rem;margin-bottom:2rem;color:var(--neutral-white);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:#ffffff26;border:1px solid rgba(255,255,255,.3);color:var(--neutral-white);padding:.5rem 1.25rem;border-radius:25px;font-size:.9rem;font-weight:500;transition:all .3s ease}.tag:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-2px)}.vacante-button{display:inline-block;background:var(--accent-coral);color:var(--neutral-white);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}.vacante-button:hover{background:#b02a31;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}}.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:var(--neutral-white)}.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}.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}.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: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}.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:.5rem;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}.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}.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;font-size:.95rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#1a509d,#0d1427);border:none;border-radius:10px;padding:.75rem 2rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;display:flex;align-items:center;gap:.5rem}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.btn-save:disabled{opacity:.6;cursor:not-allowed}.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}.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}@keyframes spin{to{transform:rotate(360deg)}}.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}.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;transition:all .2s}.filter-btn:hover{border-color:var(--primary-navy);color:var(--primary-navy)}.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;transition:all .3s;display:flex;flex-direction:column;position:relative}.evento-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #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-taller{background:#fef3c7;color:#92400e}.type-badge.type-networking{background:#d1fae5;color:#065f46}.type-badge.type-conferencia{background:#e9d5ff;color:#6b21a8}.type-badge.type-otro{background:#f3f4f6;color:#4b5563}.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;transition:all .2s;margin-top:auto}.evento-button:hover{background:var(--deep-navy);transform:translateY(-2px);box-shadow:0 4px 12px #1a509d4d}.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}}.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-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:center;font-size:11pt;line-height:1.3;color:#000}.cv-spacer-lines{height:.8rem;margin:.3rem 0}.cv-section{margin-bottom:1.5rem}.cv-section-title{font-size:11pt;font-weight:700;color:#000;margin:0 0 .8rem;padding:0 0 .3rem;text-transform:uppercase;letter-spacing:2px;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{display:block;margin-bottom:.2rem;white-space:pre-wrap}.cv-position-title{font-size:11pt;font-weight:700;color:#000}.cv-position-spacer{white-space:pre}.cv-date-range{font-size:11pt;color:#000;font-weight:400}.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:disc}.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;text-align:center}.btn-download{padding:1rem 2rem;background-color:#28a745;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:background-color .3s}.btn-download:hover{background-color:#218838}@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{body{background:#fff}.cv-builder-header,.cv-steps-nav,.cv-step-navigation,.preview-actions,.step-description,h2:first-child{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;page-break-inside:avoid}.cv-section{page-break-inside:avoid;margin-bottom:1rem}.cv-summary-section{margin:.3rem 0 .5rem}.cv-experience{page-break-inside:avoid}.cv-spacer-lines{height:.8rem;margin:.2rem 0}.cv-header{margin-bottom:.3rem}.cv-name{font-size:14pt;color:#000}.cv-contact-line{color:#000}.cv-section-title{font-size:11pt;letter-spacing:2px;border-bottom:1px solid #000;width:100%;display:block;padding-bottom:.3rem}.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}}.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-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-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;gap:.75rem}.btn-edit,.btn-delete{flex:1;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-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-edit svg,.btn-delete svg{width:16px;height:16px}@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}}@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:#0d1427;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:#0d1427;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}@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:#0d1427;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}}
