:root{--tvet-primary:#084d96;--tvet-secondary:#f0884b;--tvet-primary-light:#0a5bb3;--tvet-secondary-light:#ff9f5a;--tvet-success:#198754;--tvet-success-light:#20c997;--tvet-accent:#0d6efd;--tvet-accent-light:#3d8bfd;--sidebar-width:260px}.sidebar .nav-item{display:flex;align-items:center;padding:0.85rem 1.25rem;margin-bottom:0.3rem;color:#4b5563;text-decoration:none;border-radius:10px;transition:all 0.25s ease;font-weight:500;font-size:0.95rem;cursor:pointer;border-left:3px solid transparent}.sidebar .nav-item i{width:28px;margin-right:14px;font-size:1.3rem;color:#6b7280;transition:all 0.25s ease}.sidebar .nav-item:hover{background:linear-gradient(90deg,#f0f9ff 0%,#e0f2fe 100%);color:#084d96;transform:translateX(6px);border-left-color:#f0884b;box-shadow:0 2px 6px rgba(8,77,150,0.08)}.sidebar .nav-item:hover i{color:#f0884b;transform:scale(1.1)}.sidebar .nav-item.active{background:linear-gradient(135deg,#084d96 0%,#0d6ec9 100%);color:white;border-left-color:#f0884b;box-shadow:0 4px 12px rgba(8,77,150,0.25);font-weight:600}.sidebar .nav-item.active i{color:#fbbf24;transform:scale(1.05)}.sidebar .nav-section{margin-top:1.75rem;margin-bottom:0.6rem;border-top:2px solid #e5e7eb;padding-top:0.75rem}.sidebar .section-title{font-size:0.7rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#9ca3af;padding:0.5rem 1.25rem;margin-bottom:0.5rem}.sidebar .nav-group{margin-bottom:0.75rem}.sidebar .nav-group-title{display:flex;align-items:center;justify-content:space-between;padding:0.85rem 1.25rem;color:#1f2937;font-weight:700;font-size:0.95rem;cursor:pointer;border-radius:10px;transition:all 0.25s ease;background:#f9fafb;border:1px solid #e5e7eb;margin-bottom:0.5rem}.sidebar .nav-group-title:hover{background:linear-gradient(90deg,#eff6ff 0%,#dbeafe 100%);border-color:#bfdbfe;transform:translateX(3px)}.sidebar .nav-group-title i.toggle-icon{transition:transform 0.3s ease;color:#6b7280;font-size:0.9rem}.sidebar .nav-group-title.collapsed i.toggle-icon{transform:rotate(-90deg)}.sidebar .nav-group-items{margin-left:0.5rem;margin-top:0rem;padding-left:1rem;border-left:2px solid #e5e7eb}.sidebar .nav-group-items .nav-item{padding:0.7rem 1.25rem;font-size:0.9rem;margin-bottom:0.2rem}.sidebar .nav-group-items hr{border-color:#e5e7eb;margin:0.75rem 0;opacity:0.5}.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-track{background:#f8f9fa;border-radius:4px}.sidebar::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#cbd5e1 0%,#94a3b8 100%);border-radius:4px}.sidebar::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#94a3b8 0%,#64748b 100%)}.tvet-primary-color{color:var(--tvet-primary)!important}.tvet-secondary-color{color:var(--tvet-secondary)!important}.tvet-bg-primary{background-color:var(--tvet-primary)!important;color:white!important}.tvet-bg-secondary{background-color:var(--tvet-secondary)!important;color:white!important}.tvet-header{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);padding:1.5rem;border-radius:12px;border:1px solid #dee2e6;box-shadow:0 2px 10px rgba(8,77,150,0.1)}.tvet-welcome-box{background:#f8f9fa;padding:0.75rem;border-radius:8px;border-left:4px solid var(--tvet-secondary)}.tvet-card-primary{background:linear-gradient(135deg,var(--tvet-primary) 0%,var(--tvet-primary-light) 100%);border:none;box-shadow:0 4px 15px rgba(8,77,150,0.2)}.tvet-card-secondary{background:linear-gradient(135deg,var(--tvet-secondary) 0%,var(--tvet-secondary-light) 100%);border:none;box-shadow:0 4px 15px rgba(240,136,75,0.2)}.tvet-card-accent{background:linear-gradient(135deg,var(--tvet-accent) 0%,var(--tvet-accent-light) 100%);border:none;box-shadow:0 4px 15px rgba(13,110,253,0.3)}.tvet-card-success{background:linear-gradient(135deg,var(--tvet-success) 0%,var(--tvet-success-light) 100%);border:none;box-shadow:0 4px 15px rgba(25,135,84,0.2)}.btn-primary{background-color:var(--tvet-primary);border-color:var(--tvet-primary)}.btn-primary:hover{background-color:#063761;border-color:#063761}.btn-outline-primary{color:var(--tvet-primary);border-color:var(--tvet-primary)}.btn-outline-primary:hover{background-color:var(--tvet-primary);border-color:var(--tvet-primary)}.btn-success{background-color:var(--tvet-secondary);border-color:var(--tvet-secondary)}.btn-success:hover{background-color:#e67e22;border-color:#e67e22}.card{transition:transform 0.2s ease-in-out,box-shadow 0.2s ease-in-out;border:1px solid #dee2e6}.card:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(8,77,150,0.15)!important;border-color:var(--tvet-primary)}.pagination .page-link{color:var(--tvet-primary);border-color:var(--tvet-primary)}.pagination .page-link:hover{background-color:var(--tvet-primary);border-color:var(--tvet-primary);color:white}.pagination .page-item.active .page-link{background-color:var(--tvet-primary);border-color:var(--tvet-primary)}.modal-header{background:linear-gradient(135deg,var(--tvet-primary) 0%,var(--tvet-secondary) 100%);color:white;border-bottom:none}.badge.bg-success{background-color:var(--tvet-secondary)!important}.badge.bg-primary{background-color:var(--tvet-primary)!important}.list-group-item{border-color:#dee2e6;transition:all 0.2s ease}.list-group-item:hover{background-color:#f8f9fa;border-color:var(--tvet-primary);transform:translateX(4px)}.table-hover tbody tr:hover{background-color:rgba(8,77,150,0.05)}.course-card,.candidate-item,.unit-item{transition:all 0.2s ease;border:1px solid #dee2e6;border-radius:8px;background-color:#fff}.course-card:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(8,77,150,0.15)!important;border-color:var(--tvet-primary)}.candidate-item:hover,.unit-item:hover{background-color:#f8f9fa;border-color:var(--tvet-primary);transform:translateX(4px)}.bg-gradient-primary{background:linear-gradient(135deg,var(--tvet-primary) 0%,var(--tvet-secondary) 100%)}.stat-box{padding:0.5rem;border-radius:8px;background-color:rgba(8,77,150,0.08);border:1px solid rgba(8,77,150,0.15)}.toast-header.bg-success{background:linear-gradient(135deg,var(--tvet-success) 0%,var(--tvet-success-light) 100%)!important}.form-control:focus,.form-select:focus{border-color:var(--tvet-primary);box-shadow:0 0 0 0.2rem rgba(8,77,150,0.25)}.navbar-dark .navbar-brand{color:white!important;font-weight:600}.navbar-dark .nav-link{color:rgba(255,255,255,0.9)!important}.navbar-dark .nav-link:hover{color:var(--tvet-secondary)!important}.navbar-dark .nav-link.active{color:white!important;background-color:rgba(255,255,255,0.15);border-radius:4px}html{overflow-x:hidden;min-height:100%}body{overflow-x:hidden;width:100%;min-height:100vh}.container,.container-fluid{max-width:100%}img,video,iframe,table{max-width:100%;height:auto}@media (max-width:991.98px){.tvet-header{padding:1rem}.tvet-header .row{text-align:center!important}.tvet-header .col-md-2,.tvet-header .col-md-8,.tvet-header .col-md-2{width:100%!important;margin-bottom:1rem}.tvet-header .col-md-2:last-child{margin-bottom:0}.tvet-welcome-box{display:inline-block;margin:0 auto}.stat-card{margin-bottom:1rem}.menu-card{margin-bottom:1rem}.navbar-nav{background-color:rgba(8,77,150,0.95);padding:1rem;border-radius:0.5rem;margin-top:0.5rem}.navbar-nav .dropdown-menu{background-color:rgba(255,255,255,0.98)}}@media (max-width:767.98px){.tvet-header{padding:0.75rem}.tvet-header h2{font-size:1.5rem!important}.tvet-header p{font-size:0.85rem}.tvet-header img{height:60px!important}.stat-card .card-body{padding:1rem}.stat-card h2{font-size:1.75rem}.stat-card h5{font-size:0.95rem}.stat-card i{font-size:2rem!important}.menu-card{flex-direction:row!important;align-items:center}.menu-card-body h5{font-size:1rem;margin-bottom:0.25rem}.menu-card-body p{font-size:0.85rem;margin-bottom:0}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.modal-dialog{margin:0.5rem}.modal-body{padding:1rem}.form-control,.form-select{font-size:16px}.btn{padding:0.5rem 1rem;font-size:0.9rem}.navbar-brand{font-size:1rem!important}.navbar-brand i{display:none}}@media (max-width:575.98px){.container-fluid{padding-left:0.75rem;padding-right:0.75rem}.card{margin-bottom:1rem}.card-body{padding:1rem}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.1rem}h5{font-size:1rem}.tvet-welcome-box{padding:0.5rem;font-size:0.85rem}.card:hover,.course-card:hover,.candidate-item:hover,.unit-item:hover{transform:none}}@media (max-height:500px) and (orientation:landscape){.tvet-header{padding:0.5rem}.tvet-header img{height:40px!important}.stat-card{margin-bottom:0.5rem}}@media print{.navbar,.menu-card-arrow,.btn,button{display:none!important}.tvet-header{background:white!important;border:1px solid #000}.card{break-inside:avoid;box-shadow:none!important}}.app-header{height:64px!important;background:linear-gradient(135deg,#084d96 0%,#0a5bb3 100%)!important;border-bottom:3px solid #f0884b!important;box-shadow:0 4px 15px rgba(8,77,150,0.25)!important;position:sticky!important;top:0!important;z-index:1050!important;display:flex!important;align-items:center!important;padding:0 1.5rem!important}.app-header .header-brand{display:flex;align-items:center;gap:0.75rem;color:white;text-decoration:none;font-size:1.25rem;font-weight:600}.app-header .header-brand img{height:40px;width:auto}.app-header .header-brand:hover{color:var(--tvet-secondary)}.user-menu-trigger{display:flex;align-items:center;gap:0.75rem;padding:0.5rem 1rem;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:50px;color:white;font-weight:500;transition:all 0.3s ease;cursor:pointer}.user-menu-trigger:hover,.user-menu-trigger:focus{background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.3);color:white;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,0.15)}.user-menu-trigger .user-avatar{width:36px;height:36px;border-radius:50%;background:white;display:flex;align-items:center;justify-content:center;color:var(--tvet-primary);font-weight:600;font-size:0.9rem}.user-menu-trigger .user-info{display:flex;flex-direction:column;align-items:flex-start}.user-menu-trigger .user-name{font-size:0.95rem;line-height:1.2}.user-menu-trigger .user-role{font-size:0.75rem;opacity:0.85;line-height:1.2}.user-menu-dropdown{min-width:220px;border:1px solid rgba(8,77,150,0.1);box-shadow:0 4px 20px rgba(0,0,0,0.15);border-radius:8px;margin-top:0.5rem}.user-menu-dropdown .dropdown-item{padding:0.75rem 1.25rem;color:#374151;transition:all 0.2s ease}.user-menu-dropdown .dropdown-item:hover{background-color:#f3f4f6;color:var(--tvet-primary);transform:translateX(4px)}.user-menu-dropdown .dropdown-item i{width:20px;margin-right:0.75rem;color:var(--tvet-secondary)}.user-menu-dropdown .dropdown-divider{margin:0.5rem 0}.app-shell{display:flex;min-height:calc(100vh - 64px);position:relative;align-items:stretch}.app-sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background:white;border-right:1px solid #e5e7eb;box-shadow:2px 0 10px rgba(0,0,0,0.05);position:fixed;top:64px;left:0;bottom:0;height:calc(100vh - 64px);overflow-y:auto;overflow-x:hidden;z-index:1045;scrollbar-width:thin;scrollbar-color:#94a3b8 #f1f5f9}.app-sidebar::-webkit-scrollbar{width:6px}.app-sidebar::-webkit-scrollbar-track{background:#f1f5f9}.app-sidebar::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:3px}.app-sidebar::-webkit-scrollbar-thumb:hover{background:#64748b}.sidebar-menu{display:flex;flex-direction:column;padding-bottom:6rem;min-height:100%}.app-content{flex:1;padding:clamp(1rem,3vw,2rem);overflow-x:hidden;background:#f8f9fa;margin-left:var(--sidebar-width)}@media (max-width:991.98px){.app-content{margin-left:0}}.mobile-nav-toggle{display:none;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:white;padding:0.5rem;border-radius:6px;cursor:pointer;transition:all 0.3s ease}.mobile-nav-toggle:hover{background:rgba(255,255,255,0.2)}.offcanvas-sidebar{background:white;border-right:1px solid #e5e7eb}.offcanvas-sidebar .offcanvas-header{background:linear-gradient(135deg,var(--tvet-primary) 0%,#0a5bb3 100%);color:white;padding:1rem 1.5rem}.offcanvas-sidebar .offcanvas-header .btn-close{filter:brightness(0) invert(1)}.offcanvas-sidebar .offcanvas-body{padding:0}@media (max-width:991.98px){.app-sidebar{display:none}.mobile-nav-toggle{display:flex;align-items:center;gap:0.5rem}.app-header{padding:0 1rem}.app-header .header-brand{font-size:1rem}.user-menu-trigger .user-info{display:none}}@media (max-width:575.98px){.app-header{padding:0 0.75rem}.app-header .header-brand span{display:none}.app-content{padding:1rem 0.75rem}}.choices{position:relative!important}.choices.is-open{z-index:9999!important}.choices__list--dropdown{z-index:99999!important;position:absolute!important;top:100%!important;left:0!important;max-height:300px!important;overflow-y:auto!important;background:white!important;border:1px solid #dee2e6!important;box-shadow:0 4px 12px rgba(0,0,0,0.15)!important}.choices__item--selectable{background-color:white!important;color:#212529!important}.choices__item--selectable.is-highlighted{background-color:#084d96!important;color:white!important}.choices[data-type*="select-one"] .choices__inner,.choices[data-type*="select-multiple"] .choices__inner{z-index:1!important}.choices.is-open .choices__list--dropdown{display:block!important}.card{position:relative;overflow:visible!important}.card .card-body{overflow:visible!important}.card:has(.choices.is-open){z-index:10000!important}.card.dropdown-open,.card-body.dropdown-open{z-index:10000!important;overflow:visible!important;position:relative}.mb-3:has(.choices.is-open),.form-group:has(.choices.is-open){z-index:9999!important;position:relative}#candidatesSection .card,.card:has(#attachmentsTable),.card:has(.table-responsive):not(:has(.choices.is-open)){z-index:10}.introjs-tooltip{border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,0.15);min-width:320px;max-width:420px}.introjs-tooltip-header{background:linear-gradient(135deg,#084d96,#0a5fba);padding:12px 15px;border-radius:8px 8px 0 0}.introjs-tooltip-title{color:white;font-weight:600;font-size:1.1rem}.introjs-tooltiptext{padding:15px;font-size:0.95rem;line-height:1.6;color:#333}.introjs-bullets ul li a{background:#dee2e6}.introjs-bullets ul li a.active{background:#f0884b}.introjs-button{border-radius:5px;padding:8px 16px;font-weight:500;text-shadow:none;border:none;font-size:0.9rem}.introjs-prevbutton{background:#6c757d;color:white}.introjs-prevbutton:hover{background:#5a6268}.introjs-nextbutton,.introjs-donebutton{background:linear-gradient(135deg,#f0884b,#e07030);color:white}.introjs-nextbutton:hover,.introjs-donebutton:hover{background:linear-gradient(135deg,#e07030,#d06020)}.introjs-skipbutton{color:#6c757d;font-size:0.85rem}.introjs-skipbutton:hover{color:#dc3545}.introjs-helperLayer{border-radius:8px;box-shadow:0 0 0 4000px rgba(0,0,0,0.5)}.introjs-helperNumberLayer{background:linear-gradient(135deg,#f0884b,#e07030);color:white;font-weight:600;border:2px solid white;box-shadow:0 2px 10px rgba(0,0,0,0.2)}.tour-welcome-modal .modal-dialog{max-width:450px}.tour-welcome-modal .modal-content{border-radius:12px;overflow:hidden;border:none;box-shadow:0 10px 40px rgba(0,0,0,0.2)}.tour-welcome-modal .modal-header{background:linear-gradient(135deg,#084d96,#0a5fba);color:white;padding:14px 18px;border-bottom:none}.tour-welcome-modal .modal-title{font-weight:600;font-size:1.05rem}.tour-welcome-modal .modal-header .btn-close{filter:brightness(0) invert(1);opacity:0.8;padding:6px;margin:-2px -2px -2px auto;font-size:0.8rem}.tour-welcome-modal .modal-header .btn-close:hover{opacity:1}.tour-welcome-modal .modal-body{padding:18px;font-size:0.95rem}.tour-welcome-modal .modal-footer{padding:14px 18px;border-top:1px solid #e9ecef;background:#f8f9fa}.tour-welcome-steps{background:#f8f9fa;border-radius:8px;padding:15px}.tour-welcome-step{display:flex;align-items:center;padding:8px 0}.tour-welcome-step-number{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#084d96,#0a5fba);color:white;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:0.85rem;margin-right:12px;flex-shrink:0}.tour-welcome-step-text{font-size:0.95rem;color:#333}.btn-start-tour{background:linear-gradient(135deg,#084d96,#0a5fba);border:none;color:white;padding:10px 20px;border-radius:8px;font-weight:500;transition:all 0.3s ease}.btn-start-tour:hover{background:linear-gradient(135deg,#0a5fba,#084d96);color:white;transform:translateY(-2px);box-shadow:0 4px 12px rgba(8,77,150,0.3)}.btn-start-tour i{margin-right:8px}