@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=Sora:wght@500;600;700&display=swap";:root{--font-ui:"Outfit", "Segoe UI", sans-serif;--font-display:"Sora", "Segoe UI", sans-serif;font-family:var(--font-ui);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{color:#d3e0fa;background:#030914;min-height:100svh;margin:0}#root{min-height:100svh}.login-page{background:radial-gradient(58rem 30rem at 6% 5%,#1a4cb247,#0000 70%),radial-gradient(42rem 28rem at 96% 87%,#0b2d7e3d,#0000 72%),linear-gradient(132deg,#050a1a 8%,#040f2a 55%,#061635 100%);grid-template-rows:auto 1fr auto;min-height:100svh;display:grid;position:relative;overflow:hidden}.atmosphere{opacity:.45;pointer-events:none;z-index:0;background:repeating-linear-gradient(90deg,#0000,#0000 88px,#7ea9ff0a 88px 89px),linear-gradient(#0206101f,#02061052);position:absolute;inset:0}.top-nav,.login-main,.bottom-strip{z-index:1;position:relative}.top-nav{color:#d3def3;justify-content:space-between;align-items:center;width:min(1160px,100% - 3.2rem);margin:1.25rem auto 0;display:flex}.brand{font-family:var(--font-display);letter-spacing:.01em;align-items:center;gap:.72rem;font-size:1.25rem;font-weight:600;display:inline-flex}.brand-mark{background:linear-gradient(160deg,#2669ff,#1c4bc0);border-radius:.42rem;justify-content:center;align-items:center;width:1.45rem;height:1.45rem;display:inline-flex;box-shadow:0 12px 18px -10px #124cd3b3}.brand-mark svg{fill:#e7f0ff;width:.9rem;height:.9rem}.top-nav nav{align-items:center;gap:1.7rem;font-size:.95rem;display:inline-flex}.top-nav a,.top-nav button{color:#b8c5dd;text-decoration:none;transition:color .18s}.top-nav a:hover,.top-nav button:hover{color:#eff4ff}.top-nav button{font:inherit;cursor:pointer;background:#748fbe33;border:1px solid #adc3e747;border-radius:.7rem;padding:.56rem .95rem}.logout-btn{color:#ffb3b3!important;border-color:#ef898959!important}.logout-btn:hover{background:#bd303040!important;border-color:#ffa3a399!important}.login-main{place-items:center;padding:2.8rem 1.6rem 3.4rem;display:grid}.login-card{text-align:center;color:#c0cde5;background:linear-gradient(165deg,#07112ae0,#040c1fd1);border:1px solid #78a0ee33;border-radius:1.05rem;width:min(460px,100%);padding:2.35rem 2.25rem 1.8rem;animation:.55s cubic-bezier(.19,1,.22,1) card-enter;box-shadow:0 32px 80px -42px #020818f2,inset 0 1px #aac4ff3d}.cap-icon{background:radial-gradient(circle at 30% 30%,#235fe8,#12388e);border-radius:999px;place-items:center;width:3rem;height:3rem;margin:0 auto 1.2rem;display:grid}.cap-icon svg{fill:#ecf3ff;width:1.2rem;height:1.2rem}.login-card h1{font-family:var(--font-display);color:#f7fbff;letter-spacing:.01em;margin:0;font-size:clamp(1.6rem,3.2vw,2rem);font-weight:600}.login-card>p{color:#9eb0d2;max-width:34ch;margin:.85rem auto 1.7rem;font-size:.97rem;line-height:1.45}.login-form{text-align:left;gap:.55rem;display:grid}.login-form label{letter-spacing:.08em;text-transform:uppercase;color:#7f94be;margin-top:.4rem;font-size:.8rem}.login-form input{box-sizing:border-box;color:#eef3ff;width:100%;font:inherit;background:#061027cc;border:1px solid #8eaae154;border-radius:.68rem;padding:.74rem .8rem;transition:border-color .16s,box-shadow .16s}.login-form input::placeholder{color:#6075a1}.login-form input:focus-visible{border-color:#72a3ff;outline:none;box-shadow:0 0 0 3px #72a3ff38}.login-form button{font:600 1rem var(--font-ui);color:#08122c;cursor:pointer;background:linear-gradient(#f8fbff,#dce8ff);border:none;border-radius:.72rem;margin-top:.85rem;padding:.8rem 1rem;transition:transform .18s,box-shadow .18s}.login-form button:hover{transform:translateY(-1px);box-shadow:0 12px 26px -14px #d3e3ffe6}.login-error{color:#ffd4d4;background:#bd303033;border:1px solid #ff898973;border-radius:.55rem;margin:.75rem 0 0;padding:.6rem .7rem;font-size:.87rem}.access-note{border-top:1px solid #859fcc3d;margin-top:1.5rem;padding-top:1rem}.access-note span{letter-spacing:.12em;text-transform:uppercase;color:#7489b3;font-size:.67rem;display:block}.access-note p{color:#8da2c8;margin-top:.6rem;font-size:.9rem;line-height:1.5}.demo-credentials{color:#7f95bf;margin-top:.7rem;font-size:.78rem}.welcome-panel{text-align:center;background:linear-gradient(160deg,#071431e6,#050d21e0);border:1px solid #83adf538;border-radius:1.1rem;width:min(560px,100%);padding:2.5rem 2.2rem;animation:.5s cubic-bezier(.19,1,.22,1) card-enter;box-shadow:0 38px 90px -55px #030b21f2,inset 0 1px #a4c2f83d}.welcome-badge{letter-spacing:.09em;text-transform:uppercase;color:#0b5a3a;background:#b3f3d8;border-radius:999px;margin-bottom:.9rem;padding:.3rem .68rem;font-size:.72rem;display:inline-block}.welcome-panel h1{color:#f5f9ff;font-family:var(--font-display);margin:0;font-size:clamp(1.8rem,4vw,2.3rem)}.welcome-panel p{color:#a2b7dd;max-width:40ch;margin:1rem auto 0;line-height:1.55}.welcome-panel strong{color:#e1ecff}.welcome-panel button{color:#d9e6ff;font:500 .96rem var(--font-ui);cursor:pointer;background:#6180bf2e;border:1px solid #a4bff075;border-radius:.7rem;margin-top:1.4rem;padding:.68rem 1rem;transition:border-color .16s,background-color .16s}.welcome-panel button:hover{background:#6180bf4d;border-color:#c3d6f9a6}.login-card footer{color:#7289b5;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:1.7rem;font-size:.8rem;display:flex}.login-card footer a{color:inherit;text-decoration:none}.login-card footer a:hover{color:#bacbf0}.login-card footer span{align-items:center;gap:.44rem;display:inline-flex}.login-card footer i{background:#2ee58f;border-radius:999px;width:.5rem;height:.5rem;box-shadow:0 0 10px #2ee58fb3}.bottom-strip{background:linear-gradient(90deg,#071027b3,#03091833);border-top:1px solid #7393cd33;align-items:center;gap:.9rem;padding:1.2rem 1.6rem;display:flex}.strip-icon{background:#5f82c729;border:1px solid #7f9ed461;border-radius:.7rem;place-items:center;width:2.3rem;height:2.3rem;display:grid}.strip-icon svg{fill:#95acd6;width:1.05rem;height:1.05rem}.bottom-strip h2{color:#dce7fb;margin:0;font-size:1rem;font-weight:600}.bottom-strip p{color:#89a0ca;margin:.1rem 0 0;font-size:.88rem}@keyframes card-enter{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.home-layout{grid-template-columns:260px 1fr;gap:2rem;width:100%;max-width:1200px;margin:0 auto;padding:0 1rem 3rem;animation:.5s cubic-bezier(.19,1,.22,1) card-enter;display:grid}.sidebar{flex-direction:column;gap:2rem;padding-top:1.5rem;display:flex}.filter-section{background:linear-gradient(160deg,#07112ab3,#040c1fa6);border:1px solid #78a0ee2e;border-radius:1rem;padding:1.4rem 1.2rem;box-shadow:0 8px 32px -12px #02081899}.filter-title{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:#8da4d0;margin:0 0 1rem;font-size:.85rem;font-weight:600}.filter-list{flex-direction:column;gap:.6rem;display:flex}.filter-option{cursor:pointer;align-items:center;gap:.7rem;padding:.4rem 0;transition:color .16s;display:flex}.filter-option:hover .option-label{color:#e0eaff}.filter-option input{opacity:0;pointer-events:none;position:absolute}.checkbox-custom{background:#06102799;border:1.5px solid #8eaae166;border-radius:.28rem;width:1.1rem;height:1.1rem;transition:border-color .16s,background-color .16s,box-shadow .16s;position:relative}.filter-option input:checked+.checkbox-custom{background:linear-gradient(160deg,#2669ff,#1c4bc0);border-color:#2669ff;box-shadow:0 4px 12px -4px #2669ff80}.filter-option input:checked+.checkbox-custom:after{content:"";border:2px solid #e7f0ff;border-width:0 2px 2px 0;width:.35rem;height:.6rem;position:absolute;top:.12rem;left:.3rem;transform:rotate(45deg)}.option-label{color:#a2b7dd;font-size:.92rem;transition:color .16s}.home-main{flex-direction:column;gap:1.8rem;padding-top:1.5rem;display:flex}.search-container{text-align:center}.search-title{font-family:var(--font-display);color:#f7fbff;letter-spacing:.01em;margin:0 0 1.2rem;font-size:clamp(1.4rem,3vw,1.8rem);font-weight:600}.search-box{max-width:560px;margin:0 auto;position:relative}.search-icon{fill:#6075a1;pointer-events:none;width:1.2rem;height:1.2rem;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-input{box-sizing:border-box;color:#eef3ff;width:100%;font:inherit;background:linear-gradient(160deg,#07112ad9,#040c1fc7);border:1px solid #8eaae147;border-radius:.8rem;padding:.9rem 1rem .9rem 2.8rem;font-size:1rem;transition:border-color .16s,box-shadow .16s;box-shadow:0 4px 20px -8px #02081880}.search-input::placeholder{color:#6075a1}.search-input:focus-visible{border-color:#72a3ff;outline:none;box-shadow:0 0 0 3px #72a3ff2e,0 4px 20px -8px #02081880}.resources-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.4rem;display:grid}.resource-card{background:linear-gradient(165deg,#07112ae0,#040c1fd1);border:1px solid #78a0ee33;border-radius:1rem;flex-direction:column;gap:.8rem;padding:1.5rem;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;box-shadow:0 12px 40px -18px #020818b3}.resource-card:hover{border-color:#78a0ee59;transform:translateY(-3px);box-shadow:0 20px 50px -25px #020818cc}.card-header{justify-content:space-between;align-items:center;display:flex}.card-category{border:1px solid var(--cat-color,#2669ff);background:#061027b3;border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .75rem;display:inline-flex}.cat-icon{justify-content:center;align-items:center;width:1rem;height:1rem;display:flex}.cat-icon svg{width:100%;height:100%;fill:var(--cat-color,#2669ff)}.cat-label{letter-spacing:.04em;color:var(--cat-color,#2669ff);font-size:.75rem;font-weight:600}.card-title{font-family:var(--font-display);color:#f0f5ff;margin:0;font-size:1.15rem;font-weight:600;line-height:1.3}.card-description{color:#9eb0d2;flex-grow:1;margin:0;font-size:.88rem;line-height:1.55}.card-areas{flex-wrap:wrap;gap:.5rem;display:flex}.area-tag{color:#8da4d0;background:#748fbe26;border:1px solid #8eaae133;border-radius:.4rem;padding:.25rem .65rem;font-size:.72rem;font-weight:500}.download-btn{color:#d9e6ff;font:500 .92rem var(--font-ui);cursor:pointer;background:#6180bf2e;border:1px solid #a4bff059;border-radius:.65rem;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:.65rem 1rem;transition:border-color .16s,background-color .16s,transform .16s;display:inline-flex}.download-btn:hover{background:#6180bf4d;border-color:#c3d6f98c;transform:translateY(-1px)}.download-icon{fill:currentColor;width:1rem;height:1rem}.no-results{text-align:center;flex-direction:column;grid-column:1/-1;align-items:center;gap:.8rem;padding:4rem 2rem;display:flex}.no-results-icon{fill:#6075a1;opacity:.6;width:3.5rem;height:3.5rem}.no-results p{font-family:var(--font-display);color:#9eb0d2;margin:0;font-size:1.2rem;font-weight:600}.no-results span{color:#6075a1;font-size:.9rem}@media (width<=900px){.home-layout{grid-template-columns:1fr;gap:1.5rem}.sidebar{flex-flow:wrap;gap:1rem}.filter-section{flex:1;min-width:200px}}@media (width<=740px){.top-nav{width:min(1160px,100% - 1.4rem);margin-top:.95rem}.top-nav nav{gap:.9rem;font-size:.84rem}.top-nav button{border-radius:.58rem;padding:.42rem .62rem}.login-main{padding:1.8rem .8rem 2.6rem}.login-card{padding:1.85rem 1.15rem 1.35rem}.bottom-strip{padding:1rem .9rem}}.nav-btn{color:#b8c5dd;font:inherit;cursor:pointer;background:0 0;border:none;padding:.4rem .8rem;transition:color .18s}.nav-btn:hover{color:#eff4ff}.nav-btn.active{color:#f7fbff;background:#748fbe33;border-radius:.6rem}.info-page{width:100%;max-width:800px;animation:.5s cubic-bezier(.19,1,.22,1) card-enter}.info-card{background:linear-gradient(165deg,#07112ae0,#040c1fd1);border:1px solid #78a0ee33;border-radius:1.1rem;padding:2.2rem;box-shadow:0 32px 80px -42px #020818f2}.info-card h1{font-family:var(--font-display);color:#f7fbff;letter-spacing:.01em;text-align:center;margin:0 0 2rem;font-size:clamp(1.6rem,3vw,2rem);font-weight:600}.info-section{margin-bottom:1.8rem}.info-section h2{font-family:var(--font-display);color:#dce7fb;margin:0 0 .8rem;font-size:1.15rem;font-weight:600}.info-section p{color:#a2b7dd;margin:0;font-size:.95rem;line-height:1.6}.info-section ul,.info-section ol{margin:.8rem 0;padding-left:1.4rem}.info-section li{color:#a2b7dd;margin-bottom:.5rem;font-size:.95rem;line-height:1.5}.info-section strong{color:#e1ecff}.org-item{background:#06102799;border-radius:.7rem;flex-direction:column;gap:.2rem;margin-bottom:.8rem;padding:.8rem;display:flex}.org-item strong{color:#dce7fb;font-size:1rem}.org-item span{color:#89a0ca;font-size:.9rem}.tech-tags,.area-tags{flex-wrap:wrap;gap:.5rem;margin-top:.8rem;display:flex}.tech-tag,.area-tag{color:#8bb4ff;background:#2669ff26;border:1px solid #2669ff4d;border-radius:999px;padding:.35rem .75rem;font-size:.8rem;font-weight:500}.feature-list,.benefit-list{margin:.8rem 0;padding:0;list-style:none}.feature-list li,.benefit-list li{border-bottom:1px solid #78a0ee1a;padding:.6rem 0}.feature-list li:last-child,.benefit-list li:last-child{border-bottom:none}.steps-list{counter-reset:step;margin:.8rem 0;padding:0;list-style:none}.steps-list li{counter-increment:step;align-items:flex-start;gap:.8rem;padding:.8rem 0;display:flex}.steps-list li:before{content:counter(step);color:#fff;background:linear-gradient(160deg,#2669ff,#1c4bc0);border-radius:999px;justify-content:center;align-items:center;min-width:1.8rem;height:1.8rem;font-size:.85rem;font-weight:600;display:flex}.back-btn{color:#b8c5dd;font:inherit;cursor:pointer;background:#748fbe26;border:1px solid #adc3e747;border-radius:.6rem;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem;font-size:.9rem;transition:border-color .16s,background-color .16s,color .16s;display:inline-flex}.back-btn:hover{color:#eff4ff;background:#748fbe40;border-color:#c3d6f980}.back-btn svg{fill:currentColor;width:1.1rem;height:1.1rem}.project-objectives{margin:.8rem 0;padding:0;list-style:none}.project-objectives li{border-bottom:1px solid #78a0ee1a;padding:.6rem 0 .6rem 1.8rem;position:relative}.project-objectives li:before{content:"";background:linear-gradient(160deg,#2669ff,#1c4bc0);border-radius:999px;width:.5rem;height:.5rem;position:absolute;top:1rem;left:0}.org-card{background:#06102799;border:1px solid #78a0ee33;border-radius:1rem;padding:1.5rem}.org-header{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.org-badge{letter-spacing:.05em;text-transform:uppercase;color:#2ee58f;background:#2ee58f26;border:1px solid #2ee58f4d;border-radius:999px;padding:.25rem .6rem;font-size:.7rem;font-weight:600}.org-header h3{font-family:var(--font-display);color:#f7fbff;margin:0;font-size:1.4rem;font-weight:600}.org-card>p{color:#a2b7dd;margin:0 0 1rem;font-size:.95rem;line-height:1.6}.org-details{color:#89a0ca;gap:1.5rem;font-size:.85rem;display:flex}.team-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:.8rem;display:grid}.team-card{text-align:center;background:#06102799;border:1px solid #78a0ee26;border-radius:.8rem;padding:1rem}.team-role{letter-spacing:.06em;text-transform:uppercase;color:#8bb4ff;margin-bottom:.5rem;font-size:.7rem;font-weight:600}.team-name{font-family:var(--font-display);color:#f7fbff;margin-bottom:.3rem;font-size:1rem;font-weight:600}.team-info{color:#89a0ca;font-size:.8rem}.tech-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin-top:.8rem;display:grid}.tech-item{background:#06102780;border:1px solid #78a0ee26;border-radius:.7rem;flex-direction:column;gap:.3rem;padding:.8rem;display:flex}.tech-name{letter-spacing:.05em;text-transform:uppercase;color:#8bb4ff;font-size:.7rem;font-weight:600}.tech-detail{color:#dce7fb;font-size:.85rem}
