:root{--primary-color: #82c7a8;--secondary-color: #203876;--accent-color: #82c7a8}html,body{height:100%;margin:0;padding:0}body{font-family:ITC Avant Garde Gothic Pro,Avant Garde,Avant Garde Gothic,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--primary-color);background-color:#fff;overflow-x:hidden;position:relative}body{background-color:#fff}body.welcome-page:before,body.welcome-page:after{content:"";position:fixed;inset:0;pointer-events:none}body.welcome-page:before{z-index:-2;background:var(--bg-url) no-repeat center center fixed;background-size:cover}body.welcome-page:after{z-index:-1;background:#0f111ab3}.app-wrapper{min-height:100vh;display:flex;flex-direction:column}main{flex:1}body.welcome-page{overflow-y:hidden}body.welcome-page main{padding-top:0!important;padding-bottom:0!important;display:flex;align-items:center;justify-content:center}body.welcome-page .hero-section{width:100%;text-align:center}.navbar{background-color:var(--secondary-color)!important;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 4px 10px #0006;padding:15px 0}.navbar-brand .brand-logo{display:inline-flex;gap:5px}.brand-main-link{text-decoration:none}.brand-main{font-size:1.8rem;font-weight:700;color:var(--accent-color);text-transform:uppercase}.brand-by-link{text-decoration:none}.brand-by{font-size:.9rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.1em;position:relative;top:.25rem;opacity:.9}.brand-main-link:hover .brand-main{opacity:.85}.brand-by-link:hover .brand-by{color:var(--accent-color);text-shadow:0 0 8px var(--accent-color)}.nav-link{color:#fff!important;font-weight:500;position:relative}.nav-link.neon-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0%;height:2px;background:var(--accent-color)}.nav-link.neon-link:hover:after{width:100%}.navbar .logout-btn{padding:6px 18px!important;border:none!important;outline:none!important;border-radius:8px;background-color:transparent;color:#fff!important;font-weight:600;display:flex;align-items:center;gap:6px;transition:background .3s ease,transform .2s ease}.navbar .logout-btn:hover{background-color:#00f5ff66;transform:scale(1.05);padding:6px 18px!important;border:none!important;outline:none!important;border-radius:8px;background-color:var(--primary-color);color:#fff!important;font-weight:600;display:flex;align-items:center;gap:6px;transition:background .3s ease,transform .2s ease}.app-footer{background-color:var(--secondary-color);backdrop-filter:none;-webkit-backdrop-filter:none;border-top:1px solid rgba(255,255,255,.15);color:#fff;font-size:.85rem}.footer-link{color:var(--accent-color);text-decoration:none!important;padding:0 4px}.footer-link:hover{color:var(--accent-color)!important}body.welcome-page .navbar{background-color:#0f111a40!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}body.welcome-page .app-footer{background-color:#0f111a40;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.btn-primary{background-color:var(--primary-color);border:none;color:#fff;font-weight:700;padding:10px 20px;border-radius:8px}.btn:hover{transform:scale(1.05);background-color:var(--primary-color)}.btn-icon-text{display:inline-flex;align-items:center;gap:.35rem}.btn-outline-light:hover,.btn-outline-light:focus{color:#fff!important}.back-btn{background-color:#fff;color:var(--primary-color)!important;border-color:var(--primary-color);border-radius:8px}.back-btn:hover,.back-btn:focus{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff!important}@keyframes neonPulse{0%{box-shadow:0 0 10px var(--primary-color),0 0 20px var(--primary-color)}50%{box-shadow:0 0 20px var(--accent-color),0 0 40px var(--accent-color)}to{box-shadow:0 0 10px var(--primary-color),0 0 20px var(--primary-color)}}@keyframes glowText{0%{text-shadow:0 0 10px var(--primary-color),0 0 20px var(--accent-color)}50%{text-shadow:0 0 20px var(--accent-color),0 0 40px var(--primary-color)}to{text-shadow:0 0 10px var(--primary-color),0 0 20px var(--accent-color)}}.card{background:var(--secondary-color);border-radius:12px;padding:20px;color:#fff;box-shadow:0 4px 20px #0009;transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #000c}.tech-header{font-size:2rem;font-weight:700;color:var(--primary-color)}.dropzone{border:2px dashed var(--primary-color);border-radius:12px;background-color:#1a1c24;color:#fff;padding:30px;text-align:center;font-size:1.2rem;transition:background-color .3s ease}.dropzone:hover{background-color:#22242e}.table-dark-fx{border-collapse:separate;border-spacing:0;border-radius:8px!important;overflow:hidden;background-color:transparent}.accordion-button{background-color:#fff!important;color:var(--primary-color)!important;border:none}.accordion-button:hover{background-color:#82c7a8d9!important;color:#fff!important}.accordion-button:not(.collapsed){background-color:#fff!important;color:var(--primary-color)!important;box-shadow:inset 0 -2px 4px #0000001a}.accordion-button:after{background-image:none!important;content:"";font-family:bootstrap-icons;font-size:1rem;color:#0f172a!important;transition:transform .25s ease}.accordion-button:not(.collapsed):after{transform:rotate(180deg)}.accordion-body{background-color:var(--secondary-color)!important;border-bottom-left-radius:12px!important;border-bottom-right-radius:12px!important}.accordion-item{border:1px solid rgba(148,163,184,.3)!important;border-radius:12px!important;background-color:var(--secondary-color)!important;color:#fff}.quick-nav{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;flex-direction:column;gap:.75rem;z-index:1050}.quick-nav-btn{width:46px;height:46px;border-radius:999px;border:none;outline:none;background:var(--primary-color);color:#fff;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 10px 25px #00000073;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease}.quick-nav-btn i{font-size:1.4rem}.quick-nav-btn:hover,.quick-nav-btn:focus{background-color:var(--secondary-color);color:#fff;transform:translateY(-2px) scale(1.05);box-shadow:0 14px 30px #0000008c}@media(max-width:576px){.quick-nav{bottom:1rem;right:1rem;gap:.5rem}.quick-nav-btn{width:40px;height:40px}.quick-nav-btn i{font-size:1.2rem}}.dashboard-pagination-wrapper .pagination{margin-bottom:0;gap:.35rem}.dashboard-pagination-wrapper .page-item .page-link{border-radius:8px;border:0px solid rgba(148,163,184,.7);background-color:transparent;color:var(--primary-color);padding:.25rem .7rem;font-size:.8rem;line-height:1.2}.dashboard-pagination-wrapper .page-item .page-link:hover{background-color:#38bdf81f;border-color:var(--primary-color);color:#f9fafb;transform:translateY(-1px);box-shadow:0 4px 10px #0f172a59}.dashboard-pagination-wrapper .page-item.active .page-link{background-color:var(--primary-color);border-color:var(--primary-color);color:#f9fafb;font-weight:600}.dashboard-pagination-wrapper .page-item.disabled .page-link{background-color:transparent;border-color:transparent;color:#94a3b8cc;box-shadow:none;cursor:default}.dashboard-pagination-wrapper .page-link:focus{box-shadow:0 0 0 .15rem #38bdf859;outline:none}#global-loader{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;pointer-events:none;font-family:inherit}#global-loader.is-visible{display:flex;pointer-events:all}.gl-backdrop{position:absolute;inset:0;background:radial-gradient(circle at top left,rgba(56,189,248,.18),transparent 55%),radial-gradient(circle at bottom right,rgba(96,165,250,.22),transparent 55%),#0f172adb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gl-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;min-width:260px;max-width:360px;padding:20px 22px 18px;margin:0;color:#f9fafb;text-align:center}.gl-ring{position:relative;width:72px;height:72px;margin:0 auto 10px}.gl-ring-inner{position:absolute;inset:12px;border-radius:50%;background:radial-gradient(circle,#38bdf866,#0f172a);box-shadow:0 0 18px #38bdf8b3,inset 0 0 12px #0f172ae6}.gl-ring-pulse{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(56,189,248,.65);box-shadow:0 0 18px #38bdf880;animation:gl-pulse 1.4s ease-out infinite}.gl-ring-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#e0f2fe;animation:gl-spin 1.4s linear infinite}.gl-title{margin:4px 0 2px;font-size:.98rem;font-weight:600;letter-spacing:.02em}.gl-sub{margin:0 0 10px;font-size:.82rem;color:#cbd5f5;opacity:.95}.gl-progress{position:relative;width:100%;height:6px;border-radius:999px;background:var(--secondary-color);overflow:hidden}.gl-progress-bar{position:absolute;inset:0;width:45%;background-image:linear-gradient(90deg,#38bdf8,var(--primary-color),#38bdf8);background-size:200% 100%;border-radius:inherit;animation:gl-progress-move 1.6s ease-in-out infinite}@keyframes gl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gl-pulse{0%{transform:scale(.9);opacity:.7}70%{transform:scale(1.05);opacity:0}to{transform:scale(.9);opacity:0}}@keyframes gl-progress-move{0%{transform:translate(-100%);background-position:0% 50%}50%{transform:translate(15%);background-position:100% 50%}to{transform:translate(120%);background-position:0% 50%}}@media(max-width:576px){.gl-panel{margin:0 16px}}.lang-switcher{font-size:.85rem;color:#e5e7eb;opacity:.95}.lang-switcher i{font-size:.95rem;margin-right:.35rem;opacity:.9}.lang-chip-group{display:inline-flex;align-items:center;gap:2px;padding:2px;border-radius:999px;border:1px solid rgba(191,219,254,.65);background:transparent;transition:border-color .25s ease,background .25s ease}.lang-chip{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:2px 10px;border-radius:999px;font-size:.8rem;text-decoration:none;color:#e5e7eb;border:1px solid transparent;transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease,color .18s ease,transform .12s ease}.lang-chip:hover{text-decoration:none;color:#fff;background:#0f172a33;border-color:#bfdbfecc}.lang-chip:active{transform:scale(.95) translateY(1px)}.lang-chip.active{background:#bfdbfe2e;border-color:#bfdbfef2;color:#fff;font-weight:600;box-shadow:0 0 10px #bfdbfe8c}@media(max-width:576px){.lang-chip{padding:1px 8px;min-width:28px}}.modal-content{color:var(--secondary-color)}
