@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Fira+Code:wght@400&display=swap";:root{--color-primary: #06b6d4;--color-primary-hover: #0891b2;--color-primary-light: #22d3ee;--color-dark: #0a0a0a;--color-dark-accent: #1f2937;--color-light: #f9fafb;--color-text: #d1d5db;--color-text-muted: #9ca3af;--glow-color: rgba(6, 182, 212, .6);--spotlight-color: rgba(6, 182, 212, .1);--mouse-x: 50%;--mouse-y: 50%;--color-secondary: #00A3FF;--card-bg: #191d27;--border-color: rgba(255, 255, 255, .1);--glow-color: rgba(29, 161, 242, .2)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 20px var(--glow-color)}50%{box-shadow:0 0 35px var(--glow-color)}}@keyframes backgroundPan{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes textShimmer{0%{background-position:200% center}to{background-position:-200% center}}@keyframes star-fall{0%{transform:translateY(-10vh) translate(var(--start-x)) scale(var(--scale));opacity:1}to{transform:translateY(110vh) translate(calc(var(--start-x) + 50px)) scale(var(--scale));opacity:1}}@keyframes reveal{0%{transform:translate(-101%)}to{transform:translate(101%)}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes navLinkFade{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes blinkingCursor{0%,to{opacity:1}50%{opacity:0}}@keyframes auroraGlow{0%{--grad-x: 0%;--grad-y: 0%}25%{--grad-x: 100%;--grad-y: 25%}50%{--grad-x: 50%;--grad-y: 100%}75%{--grad-x: 0%;--grad-y: 75%}to{--grad-x: 0%;--grad-y: 0%}}body{margin:0;font-family:Inter,sans-serif;background-color:var(--color-dark);color:var(--color-light);background-image:linear-gradient(135deg,var(--color-dark) 0%,#000000 50%,var(--color-dark-accent) 100%);background-size:200% 200%;animation:backgroundPan 20s ease infinite;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),var(--spotlight-color),transparent 30vw);transition:background .1s ease-out}*{box-sizing:border-box;scroll-behavior:smooth}.container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}.header{position:fixed;top:0;left:0;right:0;z-index:500;background-color:#0a0a0ab3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.1);transition:background-color .3s ease;animation:slideDown .7s .2s cubic-bezier(.25,.46,.45,.94) backwards}.header-content{display:flex;align-items:center;justify-content:space-between;height:5rem}.logo img{height:50px;width:auto;transition:transform .3s ease,filter .3s ease}.logo img:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px var(--glow-color))}.main-nav{display:none}.mobile-menu-button{display:block}.nav-link{color:var(--color-text);font-weight:500;text-decoration:none;margin:0 1.25rem;position:relative;padding:8px 4px;opacity:0;animation:navLinkFade .5s forwards}.nav-link:hover,.nav-link.active{color:var(--color-light);text-shadow:0 0 8px var(--glow-color)}.nav-link:after{content:"";position:absolute;width:0;height:2px;bottom:-2px;left:50%;transform:translate(-50%);background-image:linear-gradient(90deg,var(--color-primary-light),var(--color-primary));transition:width .3s ease-in-out;border-radius:2px;box-shadow:0 0 8px var(--glow-color)}.nav-link:hover:after,.nav-link.active:after{width:100%}.mobile-menu-button button{background:none;border:none;color:var(--color-text-muted);padding:.5rem;cursor:pointer;border-radius:.375rem;z-index:10}.mobile-menu-button button:hover{color:#fff}.mobile-nav{position:absolute;top:5rem;left:0;right:0;background-color:#0a0a0ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem}.mobile-nav-link{display:block;padding:.75rem;color:var(--color-text);text-decoration:none;border-radius:.375rem;font-weight:500;transition:color .3s,background-color .3s}.mobile-nav-link:hover,.mobile-nav-link.active{background-color:var(--color-dark-accent);color:#fff}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;z-index:1}.particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.stars{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.star{position:absolute;background:#fff;border-radius:50%;opacity:0;animation:star-fall infinite linear;animation-duration:calc(4s + var(--duration-offset))}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,#0a0a0a33,#0a0a0ae6);z-index:2}.hero-content{position:relative;z-index:3;padding:0 1rem;transition:transform .3s cubic-bezier(.1,.8,.2,1)}.hero-title-container,.hero-subtitle,.hero-button{opacity:0;animation:fadeInUp .8s forwards cubic-bezier(.19,1,.22,1)}.hero-title-container{position:relative;animation-delay:.2s;opacity:0;margin-bottom:.5rem}.hero-title{font-size:clamp(2.5rem,8vw,5.5rem);font-weight:900;letter-spacing:-.02em;position:relative;background:linear-gradient(90deg,#fff,var(--color-primary-light),#fff);background-size:200% auto;color:transparent;-webkit-background-clip:text;background-clip:text;animation:textShimmer 5s linear infinite;opacity:1}.hero-title-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--color-dark);z-index:1;animation:reveal 1.2s .4s forwards cubic-bezier(.25,1,.5,1)}.hero-title1{font-size:clamp(2.5rem,8vw,5.5rem);font-weight:900;letter-spacing:-.02em;position:relative;background:linear-gradient(90deg,#fff,var(--color-primary-light),#fff);background-size:200% auto;color:transparent;-webkit-background-clip:text;background-clip:text;animation:textShimmer 5s linear infinite;opacity:1}.hero-title1-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--color-dark);z-index:1;animation:reveal 1.2s .4s forwards cubic-bezier(.25,1,.5,1)}.hero-subtitle{font-size:clamp(1rem,3vw,1.25rem);color:var(--color-text);max-width:48rem;margin:0 auto 2.5rem;animation-delay:1s;font-family:Fira Code,monospace;min-height:56px}.typing-cursor{display:inline-block;width:10px;height:1.25rem;background-color:var(--color-primary-light);margin-left:8px;animation:blinkingCursor 1s infinite;box-shadow:0 0 10px var(--glow-color);border-radius:1px}.hero-button{animation-delay:4.5s}.button{display:inline-block;padding:.85rem 2rem;font-weight:700;text-decoration:none;border-radius:9999px;transition:all .3s ease;border:none;cursor:pointer}.button-primary{background-image:linear-gradient(45deg,var(--color-primary-light) 0%,var(--color-primary) 50%,var(--color-primary-light) 100%);background-size:250% 250%;color:var(--color-dark);animation:pulseGlow 3s infinite alternate;font-family:Fira Code,monospace;transition:background-position .5s ease,transform .3s ease}.button-primary:hover{transform:scale(1.1) translateY(-3px)!important;box-shadow:0 8px 25px #0006,0 0 40px var(--glow-color);background-position:100% 0}.footer{padding:4rem 1.5rem 2rem;position:relative;text-align:center;overflow:hidden;z-index:10}.footer:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:80%;max-width:600px;height:1px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);box-shadow:0 0 15px var(--glow-color)}.footer:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at var(--grad-x) var(--grad-y),rgba(6,182,212,.15),transparent 40%);z-index:-1;animation:auroraGlow 15s linear infinite alternate}.footer-content{display:flex;flex-direction:column;align-items:center;gap:2.5rem}.footer-socials{display:flex;gap:2rem}.social-link{color:var(--color-text-muted);text-decoration:none;border-radius:50%;padding:.8rem;display:flex;align-items:center;justify-content:center;background:#1f293766;border:1px solid rgba(255,255,255,.1);transition:all .3s cubic-bezier(.25,.1,.25,1)}.social-link:hover{color:var(--color-light);background:var(--color-primary);transform:translateY(-5px) scale(1.1);box-shadow:0 0 20px var(--glow-color)}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2rem}.footer-links a{color:var(--color-text);text-decoration:none;font-weight:500;transition:color .3s ease,text-shadow .3s ease}.footer-links a:hover{color:var(--color-light);text-shadow:0 0 8px var(--glow-color)}.footer-bottom p{color:var(--color-text-muted);font-size:.9rem;margin:0}@media(min-width:768px){.main-nav{display:flex}.mobile-menu-button{display:none}}.about-section{padding:6rem 0;background-color:var(--color-dark);position:relative;opacity:0;transform:translateY(40px);transition:opacity .8s ease-out,transform .8s ease-out}.about-section.visible{opacity:1;transform:translateY(0)}.section-header{text-align:center;margin-bottom:4rem}.section-title{font-size:clamp(2.2rem,5vw,3rem);font-weight:800;margin-bottom:1rem;background:linear-gradient(90deg,var(--color-primary-light),#fff);color:transparent;-webkit-background-clip:text;background-clip:text;animation:textShimmer 4s linear infinite;background-size:200% auto}.section-subtitle{font-size:clamp(1rem,2.5vw,1.15rem);color:var(--color-text-muted);max-width:45rem;margin:0 auto;line-height:1.6}.about-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center;margin-bottom:5rem}.about-text p{font-size:1.1rem;color:var(--color-text);line-height:1.7;margin-bottom:1rem}.about-image{display:flex;justify-content:center;align-items:center}.about-image svg{max-width:400px;width:100%;height:auto;filter:drop-shadow(0 0 25px var(--glow-color))}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-top:5rem;margin-bottom:5rem}.detail-card{background:#1f293766;border-radius:1rem;padding:2rem;display:flex;align-items:flex-start;gap:1.5rem;border:1px solid rgba(255,255,255,.1);transition:transform .4s ease,box-shadow .4s ease,border-color .3s ease;opacity:0;transform:translateY(30px)}.about-section.visible .detail-card{opacity:1;transform:translateY(0)}.detail-card:hover{transform:translateY(-8px);box-shadow:0 0 25px var(--glow-color);border-color:var(--color-primary)}.detail-card-icon{color:var(--color-primary-light);flex-shrink:0;background:#06b6d41a;padding:.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.detail-card-content h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--color-light)}.detail-card-content p{color:var(--color-text-muted);line-height:1.6;margin:0;font-size:.95rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:5rem;padding:3rem 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.stat-card{background:#1f293799;border-radius:1rem;padding:2rem;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:1.5rem;opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease,background .3s ease,border-color .3s ease}.stat-card:hover{background:#1f2937e6;border-color:var(--color-primary)}.about-section.visible .stat-card{opacity:1;transform:translateY(0)}.stat-value{font-size:clamp(2.5rem,6vw,3.5rem);font-weight:800;color:var(--color-primary-light);line-height:1}.stat-label{font-size:1.1rem;color:var(--color-text);font-weight:500;letter-spacing:.5px;line-height:1.2}.contact-prompt{text-align:center;opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease;padding:2.5rem;background-color:var(--color-dark-accent);border-radius:1rem}.contact-prompt{display:flex;flex-direction:column;gap:1.5rem;text-align:center;align-items:center;justify-content:space-between;opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease;padding:2.5rem;background-color:var(--color-dark-accent);border-radius:1rem;border:1px solid rgba(255,255,255,.1);margin-top:5rem}.about-section.visible .contact-prompt{opacity:1;transform:translateY(0);transition-delay:.3s}.contact-prompt-content h3{font-size:clamp(1.5rem,4vw,1.75rem);font-weight:700;margin:0 0 .75rem;color:var(--color-light)}.contact-prompt-content p{color:var(--color-text-muted);margin:0;max-width:50ch}.contact-prompt-action .button-primary{padding:1rem 2.5rem;font-size:1rem}@media(min-width:768px){.contact-prompt{flex-direction:row;text-align:left}}@media(min-width:992px){.about-grid{grid-template-columns:2fr 1fr;gap:5rem;text-align:left}.details-grid{grid-template-columns:repeat(3,1fr)}}.projects-section{padding:6rem 0;background-color:var(--color-dark-accent);opacity:0;transform:translateY(40px);transition:opacity .8s ease-out,transform .8s ease-out}.projects-section.visible{opacity:1;transform:translateY(0)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem}.project-card{background-color:var(--color-dark);border-radius:1rem;overflow:hidden;display:flex;flex-direction:column;border:1px solid transparent;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,border-color .3s;opacity:0;transform:translateY(20px)}.projects-section.visible .project-card{opacity:1;transform:translateY(0)}.project-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #0006,0 0 40px var(--glow-color);border-color:var(--color-primary)}.project-image-link{position:relative;display:block}.project-image{width:100%;height:220px;object-fit:cover;transition:transform .4s ease}.project-card:hover .project-image{transform:scale(1.05)}.project-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#06b6d4b3;display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .4s ease}.project-card:hover .project-image-overlay{opacity:1}.project-content{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}.project-content h3{font-size:1.3rem;font-weight:600;margin-bottom:.75rem;color:var(--color-light)}.project-content p{color:var(--color-text-muted);line-height:1.6;margin-bottom:1.5rem;flex-grow:1}.project-link{color:var(--color-primary-light);font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:.25rem;transition:color .3s ease,gap .3s ease;align-self:flex-start}.project-link:hover{color:#fff;text-shadow:0 0 8px var(--glow-color);gap:.5rem}.events-section{padding:6rem 0;background:transparent;position:relative;opacity:0;transform:translateY(40px);transition:opacity .8s ease-out,transform .8s ease-out}.events-section.visible{opacity:1;transform:translateY(0)}.events-timeline{position:relative;max-width:900px;margin:0 auto}.events-timeline:after{content:"";position:absolute;width:4px;background-image:linear-gradient(to bottom,var(--color-primary),transparent);box-shadow:0 0 15px var(--glow-color);top:0;bottom:0;left:50%;margin-left:-2px;opacity:0;transform:scaleY(0);transform-origin:top;transition:all 1s cubic-bezier(.25,1,.5,1);z-index:1}.events-section.visible .events-timeline:after{opacity:1;transform:scaleY(1)}.timeline-year-group{position:relative;margin-bottom:3rem;z-index:2}.timeline-marker{position:relative;z-index:10}.timeline-year{font-size:2.5rem;font-weight:800;color:var(--color-primary-light);text-align:center;margin:2rem 0 4rem;background-color:var(--color-dark-accent);padding:.75rem 2rem;border-radius:999px;border:1px solid var(--color-primary);box-shadow:0 0 20px var(--glow-color);opacity:0;transform:scale(.8);transition:opacity .6s ease,transform .6s ease}.events-section.visible .timeline-year{opacity:1;transform:scale(1)}.timeline-item{padding:10px 40px;position:relative;width:50%;z-index:2}.timeline-item.left{left:0}.timeline-item.right{left:50%}.timeline-item:before{content:"";position:absolute;width:25px;height:2px;background-color:var(--color-primary);top:50%;transform:translateY(-50%);z-index:1;opacity:0;transition:width .4s .2s ease}.timeline-item.left:before{right:20px}.timeline-item.right:before{left:20px}.events-section.visible .timeline-item:before{opacity:1;width:25px}.timeline-item:after{content:"";position:absolute;width:20px;height:20px;right:-10px;background-color:var(--color-dark);border:4px solid var(--color-primary);top:50%;transform:translateY(-50%);border-radius:50%;z-index:1;transition:all .4s ease}.timeline-item.right:after{left:-10px}.timeline-item:hover:after{background-color:var(--color-primary-light);box-shadow:0 0 20px var(--glow-color);transform:translateY(-50%) scale(1.2)}.timeline-item-content{opacity:0;transform:perspective(1000px) rotateY(-20deg) translate(-20px);transition:all .6s cubic-bezier(.175,.885,.32,1.275)}.timeline-item-content{opacity:0;text-decoration:none}.timeline-item-content:hover,.timeline-item-content:active{text-decoration:none}.timeline-item.right .timeline-item-content{transform:perspective(1000px) rotateY(20deg) translate(20px)}.events-section.visible .timeline-item.left .timeline-item-content,.events-section.visible .timeline-item.right .timeline-item-content{opacity:1;transform:perspective(1000px) rotateY(0) translate(0)}.event-card{background:#1f293799;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:1rem;padding:1.5rem 2rem;border:1px solid rgba(255,255,255,.1);transition:all .4s ease}.event-card:hover{transform:translateY(-10px);border-color:var(--color-primary);box-shadow:0 10px 30px #00000080,0 0 25px var(--glow-color)}.event-category{font-size:.85rem;font-weight:600;color:var(--color-primary-light);background-color:#06b6d41a;padding:.4rem .8rem;border-radius:999px;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1rem}.event-content{flex-grow:1}.event-title{font-size:1.2rem;font-weight:600;margin:0 0 .5rem;color:var(--color-light)}.event-date{font-size:.9rem;color:var(--color-text-muted);margin:0 0 1rem}.event-link-icon{color:var(--color-primary-light);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.5rem;transition:color .3s ease,gap .3s ease;cursor:pointer}.event-link-icon:hover,.event-link-icon:focus-visible{color:#fff;text-decoration:none;gap:.75rem}@media(max-width:768px){.events-timeline:after{left:20px}.timeline-item{width:100%;padding-left:50px;padding-right:15px}.timeline-item.left,.timeline-item.right{left:0}.timeline-item:after{left:10px}.timeline-item:before{display:none}.timeline-item-content,.timeline-item.right .timeline-item-content{transform:perspective(1000px) rotateY(0) translate(20px)}.events-section.visible .timeline-item .timeline-item-content{transform:translate(0)}}.team-section{padding:6rem 0;background:transparent;position:relative;opacity:0;transform:translateY(40px);transition:opacity .8s ease-out,transform .8s ease-out}.team-section.visible{opacity:1;transform:translateY(0)}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2.5rem;perspective:1000px}.team-member-card{background:var(--color-dark-accent);border-radius:1rem;overflow:hidden;text-align:center;border:1px solid rgba(255,255,255,.1);transition:transform .5s cubic-bezier(.25,.46,.45,.94),box-shadow .5s ease;opacity:0;transform:translateY(30px)}.team-section.visible .team-member-card{opacity:1;transform:translateY(0)}.team-member-card:hover{transform:translateY(-10px) rotateX(8deg) scale(1.05);box-shadow:0 20px 40px #0006,0 0 40px var(--glow-color)}.member-image-wrapper{position:relative}.member-image{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover;object-position:center;transition:transform .5s ease}.member-image-wrapper:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,rgba(10,10,10,.9) 0%,transparent 50%);opacity:0;transition:opacity .4s ease}.team-member-card:hover .member-image-wrapper:after{opacity:1}.team-member-card:hover .member-image{transform:scale(1.1)}.member-socials{position:absolute;top:50%;left:50%;transform:translate(-50%,-60%);display:flex;gap:1.5rem;opacity:0;transition:opacity .4s ease,transform .4s ease;z-index:2}.team-member-card:hover .member-socials{opacity:1;transform:translate(-50%,-60%) scale(1.1)}.member-socials a{color:var(--color-light);transition:color .3s ease,transform .3s ease}.member-socials a:hover{color:var(--color-primary-light);transform:scale(1.2)}.member-info{padding:1.5rem;position:relative;z-index:1}.member-name{font-size:1.25rem;font-weight:600;color:var(--color-light);margin:0 0 .5rem}.member-role{color:var(--color-primary-light);font-weight:500;margin:0;font-size:.95rem}.contact-section{padding:6rem 0;opacity:0;transform:translateY(40px);transition:opacity .8s ease-out,transform .8s ease-out}.contact-section.visible{opacity:1;transform:translateY(0)}.contact-info-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:4rem}@media(min-width:768px){.contact-info-grid{grid-template-columns:repeat(3,1fr)}}.info-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:1rem;padding:2rem;text-align:center;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.info-card:before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at center,var(--color-primary) 0%,transparent 70%);opacity:0;transition:opacity .4s ease}.info-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000004d}.info-card:hover:before{opacity:.1}.info-card-content{position:relative;z-index:1}.info-card-image{width:80px;height:80px;border-radius:50%;border:3px solid var(--color-primary);margin-bottom:1rem;object-fit:cover}.info-card-icon{width:80px;height:80px;margin:0 auto 1rem;border-radius:50%;background-color:#1da1f21a;color:var(--color-primary);display:flex;align-items:center;justify-content:center}.info-card-title{color:var(--color-light);font-size:1.25rem;margin:0 0 .5rem}.info-card-subtitle{color:var(--color-text-muted);font-size:.9rem;margin-bottom:1.5rem;min-height:40px}.info-card-link{color:var(--color-primary-light);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.5rem;transition:color .3s ease}.info-card-link:hover{color:#fff}.contact-form-wrapper{max-width:800px;margin:0 auto;background:var(--card-bg);padding:2.5rem 3rem;border-radius:1rem;border:1px solid var(--border-color)}.form-header{text-align:center;margin-bottom:2.5rem}.form-header h3{font-size:1.75rem;color:var(--color-primary-light);margin-bottom:.5rem}.form-header p{color:var(--color-text-muted)}.form-row{display:flex;flex-direction:column;gap:1.5rem}@media(min-width:768px){.form-row{flex-direction:row}.form-row .form-group{width:50%}}.form-group{position:relative;margin-bottom:1.5rem}.form-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);transition:color .3s ease}.contact-form input:focus~.form-icon,.contact-form textarea:focus~.form-icon{color:var(--color-primary)}.contact-form input,.contact-form textarea{width:100%;padding:1rem 1rem 1rem 3rem;background-color:var(--color-dark);border:1px solid var(--border-color);border-radius:.5rem;color:var(--color-light);font-size:1rem;transition:border-color .3s,box-shadow .3s}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 15px var(--glow-color)}.form-submit-button{width:100%;padding:1rem;font-size:1.1rem;gap:.75rem}.map-wrapper{height:350px;margin-top:4rem;border-radius:1rem;overflow:hidden;border:1px solid var(--border-color)}.button-secondary{padding:.6rem 1.2rem;background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary-light);font-size:.9rem;font-family:Fira Code,monospace;display:inline-flex;align-items:center;gap:.5rem;transition:all .3s ease}.button-secondary:hover{background-color:var(--color-primary);color:var(--color-dark);box-shadow:0 0 15px var(--glow-color)}.header-login-button{margin-left:1.5rem}@media(min-width:768px){.main-nav{align-items:center}}.login-page-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--color-dark);padding:1rem}.login-form-wrapper{background:var(--color-dark-accent);padding:3rem;border-radius:1rem;border:1px solid rgba(255,255,255,.1);width:100%;max-width:400px;box-shadow:0 10px 30px #00000080}.login-header{text-align:center;margin-bottom:2rem}.login-icon{color:var(--color-primary-light);margin-bottom:1rem}.login-title{font-size:1.75rem;font-weight:700;color:var(--color-light);margin:0 0 .5rem}.login-subtitle{color:var(--color-text-muted);margin:0}.form-group-admin{margin-bottom:1.5rem}.form-group-admin label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text)}.form-group-admin input{width:100%;padding:.75rem 1rem;background-color:var(--color-dark);border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:var(--color-light);font-size:1rem}.login-error-message{color:#f87171;background-color:#ef44441a;text-align:center;margin-bottom:1.5rem;padding:.75rem;border-radius:.5rem;border:1px solid #ef4444}.button-primary.login-button{width:100%;padding:.8rem;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem}@media(max-width:480px){.login-form-wrapper{padding:2rem;border:none;background:transparent;box-shadow:none}.login-page-container{padding:0}}.stat-loading,.stat-error,.stat-empty{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:var(--color-text-muted);font-size:1.1rem;gap:1rem;text-align:center}.stat-loading svg{color:var(--color-primary)}.stat-error svg{color:#ef4444}.form-validation-error{color:#f87171;font-size:.8rem;margin-top:.25rem}.form-success-message{color:var(--color-text);padding:2rem}.form-success-message h3{color:var(--color-light);margin-bottom:.5rem}:root{--color-primary: #06b6d4;--color-primary-hover: #0891b2;--color-primary-light: #22d3ee;--color-primary-transparent: rgba(0, 166, 147, .4);--color-border: #33424A;--color-text-primary: #E0E7ED;--color-text-secondary: #9AA5B1;--color-background-dark: #121A20;--color-background-card: #1E2933;--color-background-input: #121A20;--color-hover-light: #2C3A45;--border-radius-md: 6px}.admin-layout{display:flex;min-height:100vh;background-color:var(--color-dark)}.admin-layout .sidebar{width:250px;background-color:var(--color-dark-accent);padding:1.5rem;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.1);flex-shrink:0}.admin-layout .sidebar-header{display:flex;align-items:center;gap:1rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.admin-layout .sidebar-logo{height:40px}.admin-layout .sidebar-title h3{margin:0;font-size:1.2rem;color:var(--color-light)}.admin-layout .sidebar-title p{margin:0;font-size:.85rem;color:var(--color-text-muted)}.admin-layout .sidebar-nav{display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.admin-layout .nav-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:.5rem;color:var(--color-text-muted);text-decoration:none;font-weight:500;transition:background-color .3s ease,color .3s ease}.admin-layout .nav-item:hover,.admin-layout .nav-item.active{background-color:var(--color-primary);color:var(--color-dark)}.admin-layout .sidebar-footer{margin-top:auto}.admin-layout .logout-button{width:100%;justify-content:flex-start;background:none;border:none;cursor:pointer}.admin-layout .main-content{flex-grow:1;padding:2.5rem;overflow-y:auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;flex-wrap:wrap;gap:1rem}.page-title{font-size:2.5rem;font-weight:800;color:var(--color-light);margin:0}.page-subtitle{color:var(--color-text-muted);margin:.5rem 0 0;font-size:1.1rem;max-width:65ch}.page-actions .button-primary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem}.dashboard-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.stat-card{background-color:var(--color-dark-accent);padding:1.5rem;border-radius:1rem;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:1.5rem;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;opacity:0;animation:fadeInUp .5s ease-out forwards}.stat-card:hover{transform:translateY(-5px);border-color:var(--color-primary);box-shadow:0 0 20px var(--glow-color)}.stat-card-icon{color:var(--color-primary-light);background-color:#06b6d41a;padding:1rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.stat-card-info h4{margin:0 0 .25rem;font-size:1rem;font-weight:500;color:var(--color-text-muted)}.stat-card-info p{margin:0;font-size:2.25rem;font-weight:700;color:var(--color-light)}.events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.event-card{background-color:var(--color-dark-accent);border-radius:1rem;border:1px solid rgba(255,255,255,.1);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:all .3s ease;opacity:0;animation:fadeInUp .5s ease-out forwards}.event-card:hover{transform:translateY(-5px);border-color:var(--color-primary);box-shadow:0 0 20px var(--glow-color)}.event-card-header{display:flex;align-items:center;gap:1rem}.events-timeline .timeline-item-content,.events-timeline .timeline-item-content:hover,.events-timeline .timeline-item-content:focus{text-decoration:none!important}.event-icon{flex-shrink:0;background-color:#06b6d41a;color:var(--color-primary-light);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}.event-date{font-weight:600;color:var(--color-text)}.event-title{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.event-description{color:var(--color-text-muted);font-size:.95rem;line-height:1.6;margin:0}.table-container{background:var(--color-dark-accent);border-radius:1rem;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:1rem 1.5rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.data-table thead{background-color:#ffffff0d}.data-table th{font-weight:600;color:var(--color-text);font-size:.9rem}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background-color:#06b6d41a}.table-actions{display:flex;gap:.75rem}.table-actions button{background:none;border:none;cursor:pointer;color:var(--color-text-muted);transition:color .3s ease}.table-actions button:hover{color:var(--color-primary-light)}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1.5rem}.file-item{background-color:var(--color-dark-accent);border-radius:.75rem;padding:1rem;text-align:center;transition:all .3s ease;cursor:pointer}.file-item:hover{background-color:#06b6d41a;transform:translateY(-5px)}.file-icon{font-size:3rem;margin-bottom:.75rem;color:var(--color-primary)}.file-name{font-weight:500;font-size:.9rem;word-break:break-all}@media(max-width:1024px){.admin-layout{display:block}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background-color:var(--color-dark-accent);border-bottom:1px solid rgba(255,255,255,.1);position:fixed;top:0;left:0;right:0;z-index:1001;height:65px}.mobile-logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;font-size:1.1rem;font-weight:600;color:var(--color-light)}.mobile-logo-link .sidebar-logo{height:35px}.mobile-menu-toggle{background:none;border:none;color:var(--color-light);cursor:pointer;padding:.5rem}.admin-layout .sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;height:100vh;z-index:1002;transform:translate(-100%);transition:transform .3s ease-in-out;border-right:1px solid rgba(255,255,255,.1)}.admin-layout.sidebar-open .sidebar{transform:translate(0);box-shadow:10px 0 30px #00000080}.admin-layout .sidebar-header{display:none}.mobile-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.admin-layout .main-content{padding:1.5rem;padding-top:calc(65px + 1.5rem);transition:filter .3s ease}.admin-layout.sidebar-open .main-content{filter:brightness(.4);pointer-events:none;-webkit-user-select:none;user-select:none}.sidebar-overlay{position:fixed;inset:0;z-index:1001;background-color:#00000080;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.admin-layout.sidebar-open .sidebar-overlay{opacity:1;visibility:visible}.page-title{font-size:2rem}.page-subtitle{font-size:1rem}.table-container{overflow-x:auto}}.data-table th,.data-table td{white-space:nowrap;padding:.75rem 1rem}.data-table td.actions-cell{min-width:120px;white-space:nowrap}.data-table td:nth-child(1),.data-table td:nth-child(2){white-space:normal}.data-table th{padding:.75rem 1rem}@media(max-width:480px){.stat-card{flex-direction:column;align-items:flex-start;gap:1rem}.stat-card-info p{font-size:2rem}}.event-link-icon{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-primary);font-weight:600;text-decoration:none;transition:color .3s ease}.event-link-icon:hover{color:var(--color-primary-light);text-decoration:underline}.timeline-item-content.link-disabled{cursor:default}.report-form{padding:20px}.input-grid{display:grid;gap:24px;margin-bottom:25px}.input-grid.two-col{grid-template-columns:1fr 1fr}.input-grid.three-col{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.input-grid .full-width{grid-column:1 / -1}.field-container{display:flex;flex-direction:column;position:relative}.field-container input[type=text],.field-container textarea{padding:12px 15px;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-background-input);font-size:1rem;color:var(--color-text-primary);transition:border-color .3s ease,box-shadow .3s ease;width:100%}.field-container textarea{resize:vertical;min-height:120px}.field-container input[type=text]:focus+label,.field-container textarea:focus+label{color:var(--color-primary)}.button-primary{transition:background-color .3s ease,transform .1s ease}.button-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-1px)}.page-actions .button-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background-color:var(--color-background-card);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--border-radius-md);transition:background-color .3s ease,border-color .3s ease,color .3s ease,transform .1s ease}.page-actions .button-secondary:hover{background-color:var(--color-hover-light);border-color:var(--color-primary);color:var(--color-primary);transform:translate(3px)}.page-actions .button-secondary svg{transition:transform .3s ease}.page-actions .button-secondary:hover .lucide-chevron-right{transform:translate(2px)}.field-container input[type=text],.field-container textarea{border:1px solid var(--color-border);background-color:var(--color-background-input);color:var(--color-text-primary);padding:12px 15px;border-radius:var(--border-radius-md);font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.field-container textarea{min-height:120px;resize:vertical}.field-container label{font-size:.9rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px;transition:color .3s ease}.field-container input[type=text]:focus,.field-container textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-transparent);outline:none}.data-table td.actions-cell{text-align:right;display:flex;justify-content:flex-end;align-items:center;gap:.75rem;min-width:100px}.table-scroll-wrapper{overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch}.data-table td.actions-cell a.button-icon,.data-table td.actions-cell button.button-icon{display:inline-flex;align-items:center;justify-content:center;background-color:#ffffff0d;border:1px solid var(--border-color);color:var(--color-text-muted);padding:.6rem;border-radius:50%;cursor:pointer;transition:all .2s ease;text-decoration:none;width:auto;height:auto;line-height:1;box-sizing:border-box;aspect-ratio:1 / 1}.data-table td.actions-cell .button-icon svg{color:var(--color-text-muted);transition:color .2s ease}.data-table td.actions-cell a.button-icon:hover,.data-table td.actions-cell button.button-icon:hover{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.data-table td.actions-cell a.button-icon:hover svg,.data-table td.actions-cell button.button-icon:hover svg{color:#fff}.data-table td.actions-cell button.button-icon.button-danger:hover{background-color:#ef4444;color:#fff;border-color:#ef4444}.data-table td.actions-cell button.button-icon.button-danger:hover svg{color:#fff}.data-table td{color:var(--color-text)}.button-icon{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:5px;border-radius:var(--border-radius-sm);transition:color .2s ease,background-color .2s ease;display:inline-flex;align-items:center;justify-content:center}.button-icon:hover{color:var(--color-primary);background-color:var(--color-background-hover)}.button-icon.button-danger{color:var(--color-danger)}.button-icon.button-danger:hover{background-color:var(--color-danger-light)}.file-list-container{padding:0;overflow-x:auto}.data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem}.profile-card{background-color:var(--color-background-card);padding:2rem 1.5rem;border-radius:1rem;border:1px solid var(--color-border);text-align:center;display:flex;flex-direction:column;align-items:center;position:relative;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;opacity:0;animation:fadeInUp .5s ease-out forwards}.profile-card:hover{transform:translateY(-5px);border-color:var(--color-primary-light);box-shadow:0 0 15px #06b6d433}.profile-card__options{position:absolute;top:10px;right:10px;display:flex;gap:5px}.profile-card__avatar{width:100px;height:100px;border-radius:50%;object-fit:cover;margin-bottom:1rem;border:3px solid var(--color-primary)}.profile-card__name{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;color:var(--color-text-primary)}.profile-card__role{color:var(--color-text-secondary);font-size:.95rem;margin-bottom:1.5rem}.social-links{display:flex;gap:1rem;margin-top:auto}.social-links__icon{color:var(--color-text-secondary);transition:color .2s ease;display:flex}.social-links__icon:hover{color:var(--color-primary)}.modal-content{background-color:var(--color-background-card);padding:1.5rem;border-radius:var(--border-radius-md)}.member-form .input-grid{margin-bottom:20px}.report-image-select{width:100%;padding:.75rem 3rem .75rem 1rem;background-color:var(--color-dark);border:1px solid var(--border-color);border-radius:.5rem;color:var(--color-light);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m5%207.5%205%205%205-5%22%20stroke%3D%22%236b7280%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 1rem center;background-size:1em}.report-image-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light-transparent)}.report-image-select:disabled{background-color:#0e0e14;color:var(--color-text-muted);cursor:not-allowed;opacity:.7}.report-image-select option{background-color:var(--color-dark-accent);color:var(--color-light)}.content-panel{background-color:var(--color-dark-accent);border:1px solid var(--border-color);border-radius:.75rem;padding:2rem;box-shadow:0 4px 12px #0003}.content-panel h3{margin:-.5rem 0 1.5rem;color:var(--color-light);font-size:1.25rem;border-bottom:1px solid var(--border-color);padding-bottom:1rem}.data-table{width:100%;border-collapse:collapse;color:var(--color-text)}.data-table th,.data-table td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:middle}.data-table thead{background-color:#ffffff08}.data-table th{font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.data-table tbody tr:hover{background-color:#ffffff0d}.data-table td{font-size:.95rem;color:var(--color-text);display:table-cell}.actions-cell{text-align:right;display:flex;justify-content:flex-end;align-items:center;gap:.75rem}.button-icon{display:inline-flex;align-items:center;justify-content:center;background-color:#ffffff0d;border:1px solid var(--border-color);color:var(--color-text-muted);padding:.6rem;border-radius:50%;cursor:pointer;transition:all .2s ease;text-decoration:none}.button-icon:hover{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.button-icon.button-danger:hover{background-color:#ef4444;color:#fff;border-color:#ef4444}.error-message{color:#ef4444;background-color:#ef44441a;border:1px solid #ef4444;padding:1rem;border-radius:.5rem}.loading-message,.empty-state{text-align:center;padding:3rem 1rem;color:var(--color-text-muted);font-size:1.1rem}.faculty-layout{display:flex;min-height:100vh;background-color:var(--color-dark)}.faculty-layout .sidebar{width:260px;background-color:var(--color-dark-accent);padding:1.5rem;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.1);flex-shrink:0}.faculty-layout .sidebar-header{display:flex;align-items:center;gap:1rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.faculty-layout .sidebar-logo{height:40px;filter:drop-shadow(0 0 10px var(--glow-color))}.faculty-layout .sidebar-title h3{margin:0;font-size:1.2rem;color:var(--color-light)}.faculty-layout .sidebar-title p{margin:0;font-size:.85rem;color:var(--color-text-muted)}.faculty-layout .sidebar-nav{flex-grow:1}.faculty-layout .nav-item{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:.5rem;color:var(--color-text-muted);text-decoration:none;font-weight:500;margin-bottom:.5rem;transition:background-color .3s,color .3s,transform .3s,box-shadow .3s}.faculty-layout .nav-item:hover{background-color:#ffffff0d;color:var(--color-light);transform:translate(5px)}.faculty-layout .nav-item.active{background:var(--color-primary);color:var(--color-dark);box-shadow:0 0 20px var(--glow-color);font-weight:600}.faculty-layout .sidebar-footer{margin-top:auto}.faculty-layout .logout-button{width:100%;justify-content:flex-start;background:none;border:none;cursor:pointer}.faculty-layout .main-content{flex-grow:1;padding:2.5rem 4rem;overflow-y:auto}.reports-dashboard .dashboard-header{padding-bottom:1.5rem;margin-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.reports-dashboard .dashboard-header h1{font-size:2.25rem;font-weight:700;margin:0 0 .5rem;color:var(--color-light)}.reports-dashboard .dashboard-header p{color:var(--color-text-muted);margin:0;font-size:1.1rem;max-width:60ch}.reports-table-container{background:var(--color-dark-accent);border-radius:1rem;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 30px #0000004d}.reports-table{width:100%;border-collapse:collapse}.reports-table th,.reports-table td{padding:1.25rem 1.5rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}.reports-table thead{background-color:#ffffff0d}.reports-table th{font-weight:600;color:var(--color-text);font-size:.9rem}.reports-table tbody tr:last-child td{border-bottom:none}.reports-table tbody tr:hover{background-color:#06b6d41a}.download-button{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}.mobile-header,.sidebar-overlay,.mobile-sidebar-header{display:none}@media(max-width:1024px){.faculty-layout{display:block}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background-color:var(--color-dark-accent);border-bottom:1px solid rgba(255,255,255,.1);position:fixed;top:0;left:0;right:0;z-index:1001;height:65px}.mobile-logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;font-size:1.1rem;font-weight:600;color:var(--color-light)}.mobile-logo-link .sidebar-logo{height:35px}.mobile-menu-toggle{background:none;border:none;color:var(--color-light);cursor:pointer;padding:.5rem}.faculty-layout .sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;height:100vh;z-index:1002;transform:translate(-100%);transition:transform .3s ease-in-out;border-right:1px solid rgba(255,255,255,.1)}.faculty-layout.sidebar-open .sidebar{transform:translate(0);box-shadow:10px 0 30px #00000080}.faculty-layout .sidebar-header{display:none}.mobile-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.faculty-layout .main-content{padding:1.5rem;padding-top:calc(65px + 1.5rem);transition:filter .3s ease}.faculty-layout.sidebar-open .main-content{filter:brightness(.4);pointer-events:none;-webkit-user-select:none;user-select:none}.sidebar-overlay{position:fixed;inset:0;z-index:1001;background-color:#00000080;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.faculty-layout.sidebar-open .sidebar-overlay{opacity:1;visibility:visible}.reports-dashboard .dashboard-header h1{font-size:2rem}.reports-dashboard .dashboard-header p{font-size:1rem}.reports-table-container{overflow-x:auto}.reports-table th,.reports-table td{padding:1rem}.demand-form-container .dashboard-header h1{font-size:2rem}.demand-form-container .dashboard-header p{font-size:1rem}.demand-card-form{padding:1.5rem 1.25rem}.demand-form-actions{justify-content:stretch}.demand-form-actions .button{width:100%;justify-content:center}}.demand-form-container{max-width:800px;margin:0 auto}.demand-form-container .dashboard-header{padding-bottom:1.5rem;margin-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.demand-form-container .dashboard-header h1{font-size:2.25rem;font-weight:700;margin:0 0 .5rem;color:var(--color-light)}.demand-form-container .dashboard-header p{color:var(--color-text-muted);margin:0;font-size:1.1rem;max-width:60ch}.demand-card-form{background-color:var(--color-dark-accent);border-radius:8px;border:1px solid #000000;padding:1.5rem 2rem;box-shadow:0 4px 12px #0003}.demand-form-group{margin-bottom:1.25rem;display:flex;flex-direction:column}.demand-form-group label{font-size:.9rem;font-weight:600;color:#c5c5e0;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.demand-form-group input[type=text],.demand-form-group textarea{width:100%;padding:.75rem 1rem;background-color:#000;border:1px solid #000000;border-radius:6px;color:#f0f0f0;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.demand-form-group input[type=text]:focus,.demand-form-group textarea:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #00000040}.demand-form-group input[type=text]::placeholder,.demand-form-group textarea::placeholder{color:#fff}.demand-form-group textarea{resize:vertical;min-height:120px;font-family:inherit}.demand-form-actions{margin-top:1.5rem;display:flex;justify-content:flex-end}.button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease,transform .1s ease}.button:hover{transform:translateY(-1px)}.button-primary{background-color:var(--color-primary, #7a60d0);color:#fff}.button-primary:hover{background-color:var(--color-primary-hover, #8a70d6)}.button:disabled{background-color:#4a4a7a;color:#8a8a9a;cursor:not-allowed;transform:none}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.demand-form-message{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:6px;margin-top:1.5rem;font-weight:500}.demand-form-message.success{background-color:#2dd36f1a;border:1px solid #2dd36f;color:#2dd36f}.demand-form-message.error{background-color:#eb445a1a;border:1px solid #eb445a;color:#eb445a}.faculty-projects-container{max-width:900px;margin:0 auto}.faculty-list-loading,.faculty-list-empty{text-align:center;padding:4rem 2rem;color:var(--color-text-muted);display:flex;flex-direction:column;align-items:center;gap:1rem;background-color:var(--color-dark-accent);border:1px dashed var(--border-color);border-radius:.75rem;margin-top:2rem}.faculty-list-loading svg{color:var(--color-primary)}.project-list{list-style:none;padding:0;margin-top:2rem;display:flex;flex-direction:column;gap:1rem}.project-list-item{background-color:var(--color-dark-accent);border:1px solid var(--border-color);border-radius:.75rem;padding:1.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;transition:all .2s ease}.project-list-item:hover{border-color:var(--color-primary);transform:translateY(-4px);box-shadow:0 8px 20px #0000004d}.project-list-info h3{font-size:1.25rem;font-weight:600;color:var(--color-light);margin:0 0 .5rem}.project-list-info p{font-size:.9rem;color:var(--color-text-muted);margin:.25rem 0;line-height:1.6}.project-list-info p strong{color:var(--color-text);font-weight:500}.project-list-status{flex-shrink:0;margin-left:1rem}.status-badge{padding:.35rem .85rem;border-radius:9999px;font-size:.8rem;font-weight:600;text-transform:capitalize;white-space:nowrap}.status-badge.status-completed{background-color:#10b9811a;color:#10b981}.status-badge.status-in-progress{background-color:#eab3081a;color:#eab308}.status-badge.status-pending-approval,.status-badge.status-pending-student,.status-badge.status-planned,.status-badge.status-unknown{background-color:#6b72801a;color:#6b7280}.status-badge.status-rejected{background-color:#ef44441a;color:#ef4444}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.page-title{margin:0 0 .5rem}.page-subtitle{margin:0;color:var(--color-text-secondary, #a0aec0)}.dialog-backdrop{position:fixed;inset:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease}.dialog-window{background-color:var(--color-dark-accent, #1a202c);border-radius:1rem;border:1px solid rgba(255,255,255,.1);width:90%;max-width:600px;box-shadow:0 10px 30px #00000080;max-height:90vh;display:flex;flex-direction:column;animation:slideIn .3s ease-out}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.dialog-header h2{margin:0;font-size:1.5rem}.dialog-body{padding:1.5rem;overflow-y:auto}.dialog-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid rgba(255,255,255,.1);background-color:#ffffff08;flex-shrink:0}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.field-container.full-width{grid-column:1 / -1}.field-container label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text, #cbd5e0)}.field-container input{width:100%;padding:.75rem 1rem;background-color:var(--color-dark, #2d3748);border:1px solid rgba(255,255,255,.2);border-radius:.5rem;color:var(--color-light, #e2e8f0);font-size:1rem;transition:border-color .2s,box-shadow .2s}.field-container input:focus{outline:none;border-color:var(--color-primary, #6366f1);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb, 99, 102, 241),.3)}.error-message{background-color:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.3);border-radius:.5rem;padding:.75rem 1rem;margin:0 0 1.5rem;text-align:center}.alert-body{padding:2rem 1.5rem;text-align:center}.alert-icon{color:var(--color-warning, #f59e0b);margin-bottom:1rem}.alert-body p{margin:0;font-size:1.1rem;color:var(--color-text, #cbd5e0);line-height:1.6}.profile-card{position:relative;padding:1.5rem;background-color:var(--color-dark-accent, #1a202c);border-radius:.75rem;border:1px solid rgba(255,255,255,.1);text-align:center}.profile-card__avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;margin:0 auto 1rem;border:3px solid rgba(255,255,255,.1)}.profile-card__name{margin:0;font-size:1.25rem}.profile-card__role{margin:.25rem 0 0;color:var(--color-text-secondary, #a0aec0)}.profile-card__options{position:absolute;top:1rem;right:1rem;display:flex;gap:.5rem;opacity:0;transition:opacity .2s ease-in-out}.profile-card:hover .profile-card__options{opacity:1}.social-links{display:flex;justify-content:center;gap:1.25rem;margin-top:1rem}.social-links__icon{color:#a0aec0;transition:color .2s ease-in-out}.social-links__icon:hover{color:var(--color-primary, #6366f1)}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-top:2rem}.metric-card{background-color:var(--color-dark-accent, #1a202c);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:1.5rem;display:flex;align-items:center}.metric-card__icon-container{flex-shrink:0;margin-right:1.25rem;padding:.75rem;border-radius:50%;background-color:rgba(var(--color-primary-rgb, 99, 102, 241),.1);color:var(--color-primary, #6366f1);display:flex;align-items:center;justify-content:center}.metric-card__title{margin:0;font-size:.9rem;font-weight:500;color:var(--color-text-secondary, #a0aec0);text-transform:uppercase;letter-spacing:.5px}.metric-card__value{margin:.25rem 0 0;font-size:2rem;font-weight:700;color:var(--color-text, #e2e8f0)}@media(max-width:640px){.input-grid{grid-template-columns:1fr}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page-container{padding:2rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;border-bottom:1px solid var(--border-color);padding-bottom:1.5rem}.page-title{font-size:1.75rem;font-weight:700;color:var(--color-light);margin:0 0 .5rem}.page-subtitle{color:var(--color-text-muted);margin:0}.page-actions .button-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;transition:all .3s ease}.data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.project-card1{background-color:var(--color-dark-accent);border:1px solid var(--border-color);border-radius:.75rem;display:flex;flex-direction:column;position:relative;opacity:0;animation:fadeInUp .5s ease-out forwards;transition:all .3s cubic-bezier(.25,.8,.25,1)}.project-card1:hover{transform:translateY(-8px) scale(1.02);border-color:var(--color-primary);box-shadow:0 15px 30px #0006,0 0 25px var(--glow-color)}.project-card-image-container{width:100%;height:200px;overflow:hidden;border-radius:.75rem .75rem 0 0}.project-card-image{width:100%;height:100%;object-fit:cover;transition:transform .4s ease-in-out}.project-card1:hover .project-card-image{transform:scale(1.05)}.project-content{padding:1.5rem;flex-grow:1}.project-title{font-size:1.2rem;font-weight:600;margin-bottom:.75rem;color:var(--color-light)}.project-description{color:var(--color-text-muted);line-height:1.6;font-size:.9rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-footer{padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;margin-top:auto}.footer-left-content{display:flex;align-items:center;gap:.75rem}.project-link{color:var(--color-text-muted);transition:color .3s ease}.project-link:hover{color:var(--color-primary-light)}.empty-state{grid-column:1 / -1;text-align:center;padding:4rem 2rem;background-color:#1f293766;border:1px dashed var(--border-color);border-radius:.75rem;color:var(--color-text-muted);opacity:0;animation:fadeInUp .6s .2s ease-out forwards}.empty-state p{font-size:1.1rem;margin:0}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-completed{background-color:#10b9811a;color:#10b981}.status-in-progress{background-color:#eab3081a;color:#eab308}.status-planned,.status-unknown{background-color:#6b72801a;color:#6b7280}.card-actions{position:absolute;top:.75rem;right:.75rem;display:flex;gap:.5rem;z-index:10}.button-icon{background-color:#ffffff0d;border:1px solid var(--border-color);color:var(--color-text-muted);padding:.5rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.button-icon:hover{background-color:var(--color-primary);color:#fff}.button-icon.button-danger:hover{background-color:#ef4444;color:#fff}.project-link.disabled-link{cursor:default;opacity:.5;pointer-events:auto}.project-link.disabled-link:hover{color:var(--color-text-muted)}.field-container.checkbox-container{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding:.75rem 0;border-top:1px solid var(--border-color)}.field-container.checkbox-container input[type=checkbox]{width:20px;height:20px;cursor:pointer}.field-container.checkbox-container .checkbox-label{margin:0;font-weight:600;color:var(--color-light)}.visibility-icon{display:flex;align-items:center;justify-content:center;padding:.5rem;border-radius:50%;transition:all .3s ease}.visibility-icon.visible-true{color:#10b981;background-color:#10b9811a}.visibility-icon.visible-false{color:#ef4444;background-color:#ef44441a}.project-detail-overlay .project-detail-card h4{margin:0 0 15px;font-size:1.1rem;color:var(--color-primary);padding-bottom:10px}.project-detail-overlay .project-detail-card p{margin:5px 0;font-size:1rem}.project-detail-overlay.active{opacity:1;visibility:visible}.project-detail-overlay.active .project-detail-card{transform:scale(1)}@media(max-width:480px){.project-detail-overlay .project-detail-card{min-width:90vw}}.status-filter-select{background-color:var(--color-dark-accent, #2a2a3a);color:var(--color-light, #ffffff);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:.5rem .75rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:border-color .2s;height:40px}.status-filter-select:focus{outline:none;border-color:var(--color-primary, #7a60d0)}.faculty-badge{display:inline-flex;align-items:center;justify-content:center;background-color:#06b6d41a;color:#06b6d4;padding:.25rem .35rem;border-radius:4px;line-height:1}.faculty-badge svg{display:block}
