@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}.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)}}@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}}
