:root{color-scheme:dark;--bg:#0b0b10;--panel:#121218;--text:#f5f2fa;--muted:#8b8997;--purple:#bc9cff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,sans-serif;font-size:14px}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #bfabff;outline-offset:3px}[hidden]{display:none!important}.glow{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 65% 10%,#21163244,transparent 48%)}.brand{font-weight:650;font-size:21px;letter-spacing:-1px;display:flex;align-items:center;gap:8px}.mark{font-size:27px;color:#d1beff}.brand-ai{font-size:10px;letter-spacing:.1em;color:#b5a2d5;border:1px solid #493e58;border-radius:4px;padding:3px 4px}.login{min-height:100vh;padding:38px 5%;position:relative;display:flex;flex-direction:column;overflow:hidden}.login-body{width:min(490px,48%);margin:auto 0 auto 5%;position:relative;z-index:2}.eyebrow,.side-label,small{font-size:10px;font-weight:700;letter-spacing:.17em;color:#ab98c9}.eyebrow span,.status span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#b79bff;box-shadow:0 0 12px #af8bff;margin-right:6px}h1,h2{letter-spacing:-.065em;line-height:1.05;font-weight:500}h1{font-size:clamp(48px,5vw,78px);margin:26px 0}h1 em,h2 em{font-style:normal;color:#c0a8ef}.login-body>p,.content-page>p,.chat-top p{color:var(--muted);line-height:1.7;max-width:420px}.login-form{margin-top:35px}.login-form label{font-size:10px;color:#a9a3b1;letter-spacing:.15em}.key-wrap{display:flex;border:1px solid #36323e;background:#15141b;border-radius:12px;margin:10px 0 12px}.key-wrap input{background:none;color:white;border:0;outline:none;padding:17px;width:100%}.key-wrap button{background:none;border:0;color:#a59bb5;padding:0 18px}.primary{width:100%;border:0;border-radius:12px;background:#c1a5f3;color:#18121f;padding:17px;font-weight:700;text-align:left}.primary span{float:right}.login-note,.hint{font-size:12px;color:#777381;margin-top:26px;line-height:1.6}.error{color:#ff969f!important;min-height:18px;font-size:12px}.login footer{font-size:10px;letter-spacing:.13em;color:#777280}.login footer span{margin-left:35px;color:#56515e}.art{position:absolute;right:4%;top:5%;bottom:5%;width:48%;background:radial-gradient(circle at 55% 45%,#6c4c8e 0,#281c36 26%,#15121b 55%,#101015 75%);border:1px solid #ffffff0d;border-radius:24px;overflow:hidden}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb1{width:55%;aspect-ratio:1;left:22%;top:20%;background:radial-gradient(circle at 32% 23%,#f0d8ff,#b591d5 12%,#664c7e 32%,#241a35 58%,#0e0b13 73%);box-shadow:0 0 100px #ae7ce744}.orb2{width:65%;height:16%;left:18%;top:41%;border:1px solid #e3d0ff99;transform:rotate(-27deg);box-shadow:0 0 35px #b380e244}.art-label{position:absolute;top:35px;left:35px;font-size:10px;letter-spacing:.16em;line-height:1.8}.art-label span{color:#94819e}.art-caption{position:absolute;bottom:38px;left:36px;font-size:30px;letter-spacing:-.04em;line-height:1.15}.art-caption i{color:#c2a6e9}.app{min-height:100vh;display:flex;position:relative}.app aside{width:250px;background:#101015;border-right:1px solid #ffffff0d;display:flex;flex-direction:column;padding:27px 18px;position:fixed;inset:0 auto 0 0}.app aside .brand{padding:0 8px}.new-chat{margin:42px 0 32px;border:1px solid #433951;background:#282033;border-radius:11px;padding:14px;text-align:left}.new-chat span{float:right;color:#ae92d8}.side-label{padding:0 10px;margin-bottom:12px;color:#686373}nav{display:grid;gap:4px}.nav{background:none;border:0;text-align:left;padding:13px;border-radius:9px;color:#a09ba9}.nav.active{background:#27212f;color:#e2d3ff}.history-title{margin-top:36px}.history{overflow:auto;display:grid;gap:4px}.history button{background:none;border:0;color:#908a98;text-align:left;padding:10px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.history button.selected{color:#e6d9ff;background:#211c29;border-radius:8px}.side-bottom{margin-top:auto;border-top:1px solid #ffffff0d;padding:22px 10px 0}.status{color:#bcb5c7;font-size:12px}.status span{background:#8cceaa;box-shadow:none}.side-bottom button{background:none;border:0;color:#77727f;padding:18px 0 0;font-size:12px}.main{margin-left:250px;width:calc(100% - 250px);min-height:100vh}header{height:76px;border-bottom:1px solid #ffffff0d;display:flex;align-items:center;justify-content:space-between;padding:0 5%;font-size:12px}.crumb{color:#777181;letter-spacing:.12em;font-size:10px}.slash{color:#4f4955;margin:0 12px}.header-right{display:flex;align-items:center;gap:22px;color:#aaa3b1}.avatar{display:grid;place-items:center;border:1px solid #51435e;background:#2c2335;color:#d1b9fa;border-radius:50%;width:36px;height:36px;font-size:20px}#menu{display:none}.page{max-width:1050px;margin:auto;padding:55px 5%}.chat-page{height:calc(100vh - 76px);display:flex;flex-direction:column}.chat-top{display:flex;justify-content:space-between;align-items:end}.chat-top h2,.content-page h2{font-size:clamp(38px,4vw,56px);margin:16px 0 10px}.chat-top p{margin:0}.model-label{font-size:10px;letter-spacing:.13em;color:#8c8297;display:grid;gap:8px}select{background:#1b1820;border:1px solid #3b3342;border-radius:9px;color:#e5ddeb;padding:11px;max-width:220px}.messages{overflow:auto;display:flex;flex-direction:column;gap:20px;flex:1;padding:24px 0;white-space:pre-wrap;line-height:1.65}.messages:empty{flex:0}.message{max-width:84%;padding:15px 18px;border-radius:15px;overflow-wrap:anywhere}.message.user{align-self:flex-end;background:#30253e}.message.assistant{align-self:flex-start;background:#19181f;border:1px solid #ffffff0b}.message.error-message{border-color:#a75464;color:#ffc1ca}.welcome{flex:1;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.welcome-orb{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,#c6a8f3,#594070 45%,#23192d 72%);box-shadow:0 0 55px #a47adc33;font-size:36px;color:white}.welcome h3{font-size:21px;font-weight:500;letter-spacing:-.03em;margin:24px 0 8px}.welcome p{color:#817b89;line-height:1.6;margin:0}.suggestions{display:flex;gap:10px;margin-top:28px}.suggestions button{background:#17151c;border:1px solid #ffffff12;border-radius:10px;padding:13px;color:#bcb5c5;font-size:12px}.suggestions span{color:#776c81;margin-left:12px}.composer{background:#19171f;border:1px solid #39313f;border-radius:16px;padding:16px 17px 11px}.composer textarea{width:100%;resize:none;background:none;border:0;outline:none;color:white;min-height:36px;max-height:180px}.composer-bottom{display:flex;align-items:center;justify-content:space-between;color:#6f6976;font-size:10px}.composer-bottom button{width:36px;height:36px;border:0;border-radius:10px;background:#c4a7f0;color:#1c1424;font-size:20px}.disclaimer{text-align:center;color:#66616d;font-size:10px;padding-top:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:40px 0 24px}.card,.connect-card{background:#17151d;border:1px solid #ffffff10;border-radius:17px;padding:24px;display:flex;flex-direction:column;gap:12px}.card.featured{background:linear-gradient(135deg,#382b49,#1a1720)}.card strong{font-size:36px;letter-spacing:-.04em}.card span{color:#898190;font-size:12px}.secondary{background:#25212b;border:1px solid #49404e;border-radius:9px;padding:12px 16px}.connect-card{margin-top:40px;flex-direction:row;justify-content:space-between;align-items:center}.connect-card div{display:grid;gap:12px}.connect-card code{font-size:15px;overflow-wrap:anywhere}.hint{max-width:560px}.nav,.new-chat,.primary,.secondary,.suggestions button{transition:background 150ms ease,border-color 150ms ease}@media(hover:hover){button:hover{filter:brightness(1.13)}}@media(max-width:760px){.art{display:none}.login-body{width:100%;margin:auto 0}.login{padding:25px}.login footer span{display:none}.app aside{z-index:5;transform:translateX(-100%);transition:transform 200ms cubic-bezier(.23,1,.32,1);box-shadow:0 0 50px #0008}.app aside.open{transform:none}.main{width:100%;margin:0}#menu{display:block;background:none;border:0;margin-right:14px}header{justify-content:start}.header-right{margin-left:auto}.header-right #balance-top{display:none}.page{padding:32px 20px}.chat-top{display:block}.model-label{margin-top:20px}.suggestions{flex-direction:column;width:100%;max-width:300px}.chat-page{height:calc(100dvh - 76px)}.cards{grid-template-columns:1fr}.connect-card{align-items:start;gap:20px;flex-direction:column}.composer-bottom span{font-size:9px}.welcome h3{font-size:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Login: orbital motion and translucent material. */
.login{padding:0;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:clamp(36px,6vw,110px);padding:clamp(20px,3vw,48px);background:radial-gradient(ellipse at 75% 38%,#241a303d,transparent 50%),#0b0b10}
.login>.brand{grid-column:2;grid-row:1;position:relative;z-index:3;align-self:start;padding:5px 0;letter-spacing:-.035em;font-size:21px;line-height:1;gap:9px;min-height:32px}
.login .brand-ai{display:inline-grid;place-items:center;font-size:10px;line-height:1;letter-spacing:.06em;padding:4px 5px;min-width:23px;min-height:20px}
.login-body{grid-column:2;grid-row:2;width:min(100%,540px);margin:auto 0;z-index:2;padding:45px 0}
.login-body .eyebrow{line-height:1.5;letter-spacing:.13em;color:#c1afd6}
.login-body h1{font-size:clamp(38px,3.45vw,66px);letter-spacing:-.045em;line-height:1.12;margin:23px 0 22px;text-wrap:balance}
.login-body h1 span{display:block;white-space:nowrap}
.login-body>p{font-size:15px;color:#aaa4b3;max-width:450px}
.login-form{margin-top:36px}.login-form label{color:#c8bfcd}.key-wrap{background:linear-gradient(130deg,#ffffff10,#ffffff04);border-color:#d5c2e82b;box-shadow:inset 0 1px #ffffff0c,0 18px 50px #00000022;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.key-wrap:focus-within{border-color:#ccb5ef99;box-shadow:0 0 0 3px #ba98f61c,inset 0 1px #ffffff1f}.key-wrap input::placeholder{color:#a49aab}.primary{background:linear-gradient(110deg,#d2b8fa,#b89be8);box-shadow:inset 0 1px #ffffff80,0 12px 32px #9972d62b;transition:transform 160ms ease,filter 160ms ease}.primary:active{transform:scale(.99)}.primary:disabled{opacity:.6;cursor:wait}.login-note{color:#9e96a7}
.login footer{grid-column:2;grid-row:3;z-index:2;line-height:1.7;color:#a098a9}.login footer span{color:#817888}
.art{grid-column:1;grid-row:1 / 4;position:relative;inset:auto;width:100%;min-height:min(850px,calc(100svh - 2 * clamp(20px,3vw,48px)));border:1px solid #ffffff1c;border-radius:26px;background:radial-gradient(ellipse at 48% 40%,#3e2b51 0,#1c1625 43%,#111016 82%);box-shadow:inset 0 1px #ffffff14,0 25px 80px #0005;isolation:isolate}
.art:before,.art:after{content:"";position:absolute;inset:0;pointer-events:none}.art:before{background:linear-gradient(132deg,#ffffff0d,transparent 28%,transparent 75%,#cfacff08)}.art:after{border-radius:inherit;box-shadow:inset 0 0 70px #0005}.art-haze{position:absolute;inset:15%;background:radial-gradient(circle,#ba8cf945,transparent 65%);filter:blur(35px);animation:haze 8s ease-in-out infinite alternate}.stars{position:absolute;inset:0;opacity:.65;background-image:radial-gradient(circle at 18% 28%,#f2ddff 1px,transparent 2px),radial-gradient(circle at 80% 19%,#e8d7ff 1px,transparent 2px),radial-gradient(circle at 72% 65%,#e8d7ff 1px,transparent 2px),radial-gradient(circle at 21% 70%,#e8d7ff 1px,transparent 2px),radial-gradient(circle at 87% 46%,#e8d7ff 1px,transparent 2px);animation:twinkle 6s ease-in-out infinite alternate}.stars-two{transform:rotate(35deg) scale(.8);opacity:.32;animation-delay:-3s}
.orb1{width:min(65%,500px);left:50%;top:45%;transform:translate(-50%,-50%);background:radial-gradient(circle at 32% 24%,#f5e5ff 0,#bb9ad5 8%,#8466a1 25%,#463459 48%,#18121f 75%);box-shadow:inset -28px -35px 65px #050409a8,inset 5px 5px 30px #ead6ff45,0 28px 100px #9b69d145;animation:planet 10s ease-in-out infinite alternate}
.orb2,.orb-ring{width:75%;height:20%;left:12%;top:35%;border:1px solid #eedcff9c;transform:rotate(-25deg);box-shadow:0 0 20px #c092fa55,inset 0 0 12px #dfc8ff33;animation:ring 12s ease-in-out infinite alternate}.orb-ring{position:absolute;border-radius:50%}.orb-ring-two{width:68%;height:16%;left:16%;top:37%;border-color:#c3a3ef55;transform:rotate(17deg);animation:ring-reverse 15s ease-in-out infinite alternate}
.art-label{z-index:2;top:32px;left:32px;letter-spacing:.17em}.art-caption{z-index:2;bottom:34px;left:32px;font-size:clamp(23px,2vw,32px)}.glass-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:12px;color:#e5d6f1;font-size:9px;letter-spacing:.15em;border:1px solid #e7d7ff38;background:linear-gradient(125deg,#ffffff24,#ffffff08);box-shadow:inset 0 1px #ffffff30,0 16px 40px #0005;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:16px;padding:13px 15px;animation:float 7s ease-in-out infinite alternate}.glass-chip-one{right:8%;top:25%}.glass-chip-two{left:8%;bottom:27%;animation-delay:-3s;line-height:1.6}.glass-chip b{color:#fff;font-size:11px;letter-spacing:.2em}.chip-dot{width:7px;height:7px;border-radius:50%;background:#c6aaff;box-shadow:0 0 10px #d9c5ff}.chip-shine,.chip-icon{font-size:18px;color:#e9d7ff}
@keyframes planet{from{transform:translate(-50%,-50%) translateY(-8px)}to{transform:translate(-50%,-50%) translateY(10px)}}@keyframes ring{from{transform:rotate(-27deg) scale(.98)}to{transform:rotate(-23deg) scale(1.02)}}@keyframes ring-reverse{from{transform:rotate(15deg)}to{transform:rotate(20deg)}}@keyframes float{from{transform:translateY(-5px)}to{transform:translateY(7px)}}@keyframes haze{from{opacity:.55}to{opacity:1}}@keyframes twinkle{from{opacity:.25}to{opacity:.75}}
@media (max-width:1050px) and (min-width:761px){.login{column-gap:35px}.login-body h1{font-size:clamp(32px,3.8vw,42px)}.art-caption{font-size:25px}.glass-chip{padding:10px}}
@media(max-width:760px){.login{display:flex;flex-direction:column;min-height:100svh;padding:20px;gap:0}.login>.brand{order:0;padding:4px 0 18px;min-height:48px}.art{display:block;order:1;min-height:250px;height:31svh;max-height:330px;width:100%;border-radius:19px;flex:none}.orb1{height:auto;width:min(51%,235px);top:48%}.orb2{width:62%;left:19%;top:35%;height:23%}.orb-ring-two{width:60%;left:20%;top:38%}.art-label{top:18px;left:18px;font-size:8px}.art-caption{font-size:18px;left:19px;bottom:17px}.glass-chip{font-size:8px;padding:9px;gap:6px;border-radius:12px}.glass-chip-one{right:5%;top:19%}.glass-chip-two{left:6%;bottom:32%}.login-body{order:2;width:100%;padding:34px 0 22px;margin:0}.login-body h1{font-size:clamp(32px,8vw,49px);margin:16px 0}.login-body>p{font-size:14px}.login-form{margin-top:24px}.login-note{margin-top:16px}.login footer{order:3;margin-top:auto}.login footer span{display:none}}
@media(max-width:360px){.login-body h1{font-size:29px}.art{min-height:220px}.login{padding:16px}}
@media(prefers-reduced-motion:reduce){.art-haze,.stars,.orb1,.orb2,.orb-ring,.glass-chip{animation:none!important}.primary{transition:none}}
/* Anymodel: an illuminated glass sign-in surface. */
.login{isolation:isolate}.login>.brand{font-weight:700;font-size:22px;letter-spacing:-.055em}.login .brand-ai{font-size:9px;text-transform:uppercase;letter-spacing:.12em;min-width:44px;border-color:#cbb4eb38;background:#d1b7ed0a;color:#d9c6ec;border-radius:6px}.login-body{width:min(100%,570px)}.login-body h1{letter-spacing:-.045em}.cursor-light{position:fixed;left:0;top:0;width:480px;height:480px;border-radius:50%;pointer-events:none;z-index:0;opacity:0;background:radial-gradient(circle,#ad71ec2b 0,#8050af15 30%,transparent 70%);transform:translate3d(-1000px,-1000px,0);transition:opacity 300ms ease;will-change:transform}.cursor-light.is-visible{opacity:1}
.login-form{position:relative;overflow:hidden;margin-top:30px;padding:25px;border:1px solid #e9d5ff26;border-radius:22px;background:linear-gradient(135deg,#ffffff10 0%,#ffffff05 47%,#c9a4ff09 100%);box-shadow:inset 0 1px #ffffff24,0 24px 65px #0004;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.login-form:before{content:"";position:absolute;inset:-1px -1px auto;height:1px;background:linear-gradient(90deg,transparent,#e9d3ff9c,transparent);pointer-events:none}.form-heading{display:flex;align-items:center;gap:13px;margin-bottom:24px}.form-heading>span:nth-child(2){display:grid;gap:5px}.form-heading strong{font-size:14px;font-weight:600;color:#f4edf9}.form-heading small{font-size:9px;letter-spacing:.12em;color:#b2a6bd}.form-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,#e7caff32,#a77de215);border:1px solid #e9d1ff38;color:#ead8ff;font-size:23px;box-shadow:inset 0 1px #fff3}.form-spark{margin-left:auto;color:#ddc2ff;font-size:25px}.login-form label{display:block;font-weight:600;letter-spacing:.13em}.key-wrap{margin:10px 0 12px;border-radius:13px;background:#0d0b12a3;transition:border-color 180ms ease,box-shadow 180ms ease}.key-wrap input{min-width:0}.key-wrap input:focus-visible{outline:none}.key-wrap button:focus-visible{outline:2px solid #bfabff;outline-offset:-4px}.login-form .primary{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;isolation:isolate;overflow:hidden;min-height:64px;padding:13px 14px 13px 18px;border:1px solid #e6d5ff99;border-radius:13px;background:linear-gradient(110deg,#dfc7ff,#b695ed 65%,#d5b7fa);box-shadow:inset 0 1px #ffffffad,0 10px 28px #9e6bd63b;color:#21162f;transition:transform 180ms cubic-bezier(.23,1,.32,1),box-shadow 180ms ease,filter 180ms ease}.primary:before{content:"";position:absolute;z-index:-1;inset:-100% auto -100% -55%;width:40%;transform:rotate(25deg) translateX(-120%);background:#ffffff70;filter:blur(14px);transition:transform 650ms cubic-bezier(.23,1,.32,1)}.button-copy{display:grid;gap:4px;float:none!important;font-size:14px}.button-copy small{color:#544369;font-size:8px;letter-spacing:.12em}.button-arrow{float:none!important;display:grid;place-items:center;width:37px;height:37px;flex:none;border-radius:11px;background:#3423461a;border:1px solid #ffffff5e;font-size:18px;transition:transform 220ms cubic-bezier(.23,1,.32,1),background 180ms ease}.login-form .error{margin:10px 0 0;min-height:0}.login-form .error:empty{display:none}.login-note{margin-top:20px}.login footer{font-size:10px}
@media(hover:hover) and (pointer:fine){.login-form .primary:hover{filter:brightness(1.08);transform:translateY(-2px);box-shadow:inset 0 1px #fff,0 15px 38px #a477ec5c}.primary:hover:before{transform:rotate(25deg) translateX(480%)}.primary:hover .button-arrow{transform:translate(3px,-3px);background:#ffffff55}}
@media(max-width:760px){.cursor-light{display:none}.login-form{padding:19px;margin-top:22px}.form-heading{margin-bottom:19px}.login-body{padding-top:28px}.login-form .primary{min-height:60px}.login .brand-ai{font-size:8px}}
@media(prefers-reduced-motion:reduce){.cursor-light{display:none!important}.primary:before,.primary .button-arrow{transition:none!important}.login-form .primary:hover{transform:none}}
body:has(#login[hidden]) .cursor-light{opacity:0}
/* Fine orbital details around the planet */
.login .brand-ai{text-transform:none;letter-spacing:.06em;min-width:52px}.orbit-path{position:absolute;left:12%;top:35%;width:75%;height:20%;border-radius:50%;pointer-events:none;transform:rotate(-25deg)}.orbit-path-two{left:16%;top:37%;width:68%;height:16%;transform:rotate(17deg)}.orbit-path i{position:absolute;left:0;top:50%;width:7px;height:7px;border-radius:50%;background:#f4e6ff;box-shadow:0 0 8px 3px #d5a8ff99,0 0 22px #ba88ff;offset-path:ellipse(50% 50% at 50% 50%);offset-distance:0%;animation:orbit-travel 14s linear infinite}.orbit-path-two i{width:5px;height:5px;animation-duration:19s;animation-direction:reverse;animation-delay:-6s}.satellite{position:absolute;border-radius:50%;pointer-events:none;box-shadow:inset -6px -6px 10px #1f1531a8,0 8px 24px #0005;background:radial-gradient(circle at 30% 25%,#e4cbfc,#a27cbd 32%,#483654 70%);animation:satellite-float 8s ease-in-out infinite alternate}.satellite-one{width:24px;height:24px;right:17%;top:17%}.satellite-two{width:13px;height:13px;left:15%;top:57%;animation-delay:-4s}.cosmic-cross{position:absolute;color:#e9d7ffb5;pointer-events:none;animation:cross-twinkle 4s ease-in-out infinite alternate}.cross-one{left:18%;top:22%;font-size:16px}.cross-two{right:15%;bottom:26%;font-size:25px;animation-delay:-2s}.constellation{position:absolute;right:10%;bottom:13%;width:74px;height:40px;opacity:.65;pointer-events:none;background:linear-gradient(155deg,transparent 48%,#e0c3ff55 49%,#e0c3ff55 50%,transparent 51%) 4px 3px/43px 29px no-repeat,linear-gradient(32deg,transparent 48%,#e0c3ff55 49%,#e0c3ff55 50%,transparent 51%) 34px 10px/34px 24px no-repeat}.constellation span{position:absolute;width:4px;height:4px;border-radius:50%;background:#ead9ff;box-shadow:0 0 8px #ddb8ff}.constellation span:nth-child(1){left:4px;top:27px}.constellation span:nth-child(2){left:41px;top:9px}.constellation span:nth-child(3){right:5px;bottom:6px}@keyframes orbit-travel{to{offset-distance:100%}}@keyframes satellite-float{to{transform:translate3d(0,-12px,0)}}@keyframes cross-twinkle{from{opacity:.35;transform:scale(.8)}to{opacity:.9;transform:scale(1.08)}}@media(max-width:760px){.satellite-one{width:15px;height:15px}.satellite-two{width:9px;height:9px}.constellation{right:5%;bottom:8%;transform:scale(.7)}.cross-one{font-size:11px}.cross-two{font-size:16px}}@media(prefers-reduced-motion:reduce){.orbit-path i,.satellite,.cosmic-cross{animation:none!important}}
/* A restrained, luminous glass treatment for the sign-in headline. */
.login-body h1{color:#f4f2f7;letter-spacing:-.05em;font-weight:600;text-shadow:0 2px 24px #eeeaff12}
.login-body h1 em{font-style:normal;color:#eceaf0;background:linear-gradient(135deg,#fff 4%,#f3f1f5 24%,#b9b5c2 48%,#faf9fb 68%,#aaa5b4 100%);background-size:220% 220%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 8px #ffffff20);animation:glass-letter-light 12s ease-in-out infinite alternate}
.login-body .eyebrow{color:#c9c5d0}.login-body .eyebrow span{background:#e7e3ed;box-shadow:0 0 12px #f7f3ff8a}.login-body>p{color:#b9b5c0}
@keyframes glass-letter-light{from{background-position:0% 50%}to{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){.login-body h1 em{animation:none}}
/* Violet light through glass and a soft aurora behind the planet. */
.login-body h1 em{color:#c8a8f2;background-image:linear-gradient(130deg,#f4e8ff 2%,#d6bdf8 22%,#a57ed6 44%,#eee0ff 65%,#bb95ec 86%,#f1e4ff 100%);filter:drop-shadow(0 2px 12px #bc91ed32)}
.login-body .eyebrow{color:#d4c0e9}.login-body .eyebrow span{background:#d4b7ff;box-shadow:0 0 12px #bb92f79c}
.aurora-band{position:absolute;z-index:0;width:110%;height:34%;left:-5%;top:27%;border-radius:50%;transform:rotate(-26deg);background:linear-gradient(180deg,transparent 9%,#bf8cff0b 31%,#e1bdff38 48%,#a66ee51c 55%,transparent 77%);filter:blur(13px);pointer-events:none;animation:aurora-breathe 9s ease-in-out infinite alternate}.orbit-halo{position:absolute;inset:14% 10% 23%;border-radius:50%;border:1px solid #d5b6ff26;transform:rotate(20deg) scaleX(.72);box-shadow:0 0 28px #bd8dff13,inset 0 0 25px #caa5ff0d;pointer-events:none;animation:halo-turn 28s linear infinite}.orb1,.orb2,.orb-ring,.orbit-path,.satellite,.cosmic-cross,.stars,.constellation{z-index:1}.glass-chip{z-index:2}@keyframes aurora-breathe{from{opacity:.45;transform:rotate(-28deg) scale(.96)}to{opacity:.9;transform:rotate(-24deg) scale(1.04)}}@keyframes halo-turn{from{transform:rotate(20deg) scaleX(.72)}to{transform:rotate(380deg) scaleX(.72)}}@media(prefers-reduced-motion:reduce){.aurora-band,.orbit-halo{animation:none!important}}
/* A small constellation balances the open corner; supporting copy reflects the headline. */
.corner-constellation{position:absolute;z-index:2;top:6%;left:6%;width:140px;height:90px;pointer-events:none;opacity:.78;background:linear-gradient(28deg,transparent 48.8%,#dcbcff68 49.5%,#dcbcff68 50.5%,transparent 51.2%) 5px 31px/48px 32px no-repeat,linear-gradient(-24deg,transparent 48.8%,#dcbcff68 49.5%,#dcbcff68 50.5%,transparent 51.2%) 47px 19px/49px 31px no-repeat,linear-gradient(36deg,transparent 48.8%,#dcbcff68 49.5%,#dcbcff68 50.5%,transparent 51.2%) 92px 15px/36px 30px no-repeat;animation:constellation-pulse 6s ease-in-out infinite alternate}.corner-constellation i{position:absolute;width:5px;height:5px;border-radius:50%;background:#f1e2ff;box-shadow:0 0 12px #d2a4ff}.corner-constellation i:nth-child(1){left:5px;top:58px}.corner-constellation i:nth-child(2){left:50px;top:32px}.corner-constellation i:nth-child(3){left:94px;top:46px}.corner-constellation i:nth-child(4){left:125px;top:22px}.corner-constellation span{position:absolute;left:45px;top:1px;color:#e6d0ff;font-size:15px}.login-body>p{color:#d9c6ec;background:linear-gradient(115deg,#f0e8f8 0%,#cbb1ea 45%,#eee3f8 75%,#bfa3e0 100%);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:glass-letter-light 15s ease-in-out infinite alternate}@keyframes constellation-pulse{from{opacity:.48}to{opacity:.95}}@media(max-width:760px){.corner-constellation{transform:scale(.7);transform-origin:top left}}@media(prefers-reduced-motion:reduce){.corner-constellation,.login-body>p{animation:none!important}}
/* Individual stars breathe in sequence; a glint travels between them. */
.corner-constellation{animation:constellation-drift 7s ease-in-out infinite alternate}
.corner-constellation i{animation:constellation-star 2.8s ease-in-out infinite;transform-origin:center}.corner-constellation i:nth-child(2){animation-delay:-.7s}.corner-constellation i:nth-child(3){animation-delay:-1.4s}.corner-constellation i:nth-child(4){animation-delay:-2.1s}.corner-constellation span{animation:constellation-sparkle 3.8s ease-in-out infinite}
.corner-constellation:after{content:"";position:absolute;left:0;top:0;width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 8px 2px #ead2ff,0 0 19px 4px #b681f2;offset-path:path("M 7 60 L 52 34 L 96 48 L 127 24");animation:constellation-glint 5s ease-in-out infinite}
@keyframes constellation-star{0%,100%{opacity:.45;transform:scale(.75)}50%{opacity:1;transform:scale(1.6);box-shadow:0 0 13px 3px #d9b4ff}}
@keyframes constellation-sparkle{0%,100%{opacity:.45;transform:scale(.8) rotate(0deg)}50%{opacity:1;transform:scale(1.25) rotate(25deg)}}
@keyframes constellation-glint{0%{offset-distance:0%;opacity:0}8%{opacity:1}82%{opacity:1}100%{offset-distance:100%;opacity:0}}
@keyframes constellation-drift{from{opacity:.65;transform:translateY(-3px)}to{opacity:1;transform:translateY(4px)}}
@media(max-width:760px){@keyframes constellation-drift{from{opacity:.65;transform:scale(.7) translateY(-3px)}to{opacity:1;transform:scale(.7) translateY(4px)}}}
@media(prefers-reduced-motion:reduce){.corner-constellation,.corner-constellation i,.corner-constellation span,.corner-constellation:after{animation:none!important}.corner-constellation:after{display:none}}
/* Monochrome caption and an access panel inspired by orbital glass. */
.art-caption{color:#f3f1f6}.art-caption i{color:#d8d5df;font-style:normal;background:linear-gradient(120deg,#fff,#aaa6b5 48%,#f8f7fa 75%,#bdb9c7);background-size:200% 200%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:glass-letter-light 12s ease-in-out infinite alternate}
.login-form{padding:28px;border-radius:24px;background:radial-gradient(ellipse at 90% 5%,#bd98f026,transparent 43%),linear-gradient(145deg,#ffffff12,#ffffff04 65%,#b18fe009);border-color:#e6d7ff2b;box-shadow:inset 0 1px #ffffff22,0 24px 65px #0005}.login-form:after{content:"";position:absolute;right:-50px;top:-90px;width:220px;height:220px;border:1px solid #e6d0ff1c;border-radius:50%;pointer-events:none}.form-heading{position:relative;z-index:1;align-items:center;margin-bottom:2px}.form-heading>span:first-child{display:grid;gap:9px}.form-heading small{font-size:9px;letter-spacing:.16em;color:#c7b8d5}.form-heading strong{font-size:27px;letter-spacing:-.045em;font-weight:550}.form-orbit{margin-left:auto;width:54px;height:54px;display:grid;place-items:center;position:relative;border-radius:50%;border:1px solid #e2c7ff4a;background:radial-gradient(circle at 30% 25%,#ead3ff51,#9670c31c 55%,#160f20);box-shadow:inset 0 1px #ffffff30,0 8px 24px #0004}.form-orbit:before{content:"";position:absolute;inset:9px -9px;border:1px solid #ddc2ff8a;border-radius:50%;transform:rotate(-29deg)}.form-orbit b{font-weight:400;font-size:22px;color:#e7d4ff}.form-orbit i{position:absolute;width:5px;height:5px;left:1px;top:16px;background:#f5eaff;border-radius:50%;box-shadow:0 0 9px #dfbaff;animation:form-orbit-glow 2.8s ease-in-out infinite alternate}.form-intro{margin:8px 0 25px;color:#bcb3c7;font-size:12px;line-height:1.5}.login-form label{color:#d4c6df;font-size:10px}.key-wrap{margin:10px 0 14px;background:#0b0a10b8;min-height:57px}.login-form .primary{min-height:62px;background:linear-gradient(110deg,#e7d3ff,#b997e9 65%,#d8bbf9)}@keyframes form-orbit-glow{from{opacity:.5;box-shadow:0 0 5px #dfbaff}to{opacity:1;box-shadow:0 0 14px 3px #dfbaff}}@media(max-width:760px){.login-form{padding:20px}.form-heading strong{font-size:23px}.form-orbit{width:46px;height:46px}.form-intro{margin-bottom:19px}}@media(prefers-reduced-motion:reduce){.art-caption i,.form-orbit i{animation:none!important}}
/* Access: a flowing light trace replaces the decorative miniature planet. */
.login-form{padding:26px;border-radius:20px;background:linear-gradient(155deg,#282230 0%,#15131c 43%,#110f16 100%);border:1px solid #d9c5ef2c;box-shadow:inset 0 1px #ffffff21,0 26px 70px #0005}.login-form:after{display:none}.login-form:before{height:2px;inset:0;background:linear-gradient(90deg,transparent 0%,#e8d3ff00 28%,#dfc5ffdd 50%,#e8d3ff00 72%,transparent 100%);background-size:200% 100%;animation:access-trace 5s ease-in-out infinite}.access-head{display:flex;align-items:center;gap:14px;position:relative;z-index:1}.access-symbol{width:52px;height:52px;flex:none;display:grid;place-items:center;position:relative;border-radius:16px;border:1px solid #e5d0ff36;background:linear-gradient(145deg,#dcc0ff2b,#8e6ac414);box-shadow:inset 0 1px #fff3;overflow:hidden}.access-symbol span{position:absolute;width:27px;height:27px;border:1px solid #e5d1ff91;border-radius:9px;transform:rotate(45deg);animation:access-bloom 4.5s ease-in-out infinite}.access-symbol span:nth-child(2){width:21px;height:21px;animation-delay:-1.5s}.access-symbol span:nth-child(3){width:14px;height:14px;animation-delay:-3s}.access-symbol b{position:relative;font-size:13px;color:#f5ebff;font-weight:400}.access-title{display:grid;gap:6px}.access-title small{font-size:9px;letter-spacing:.14em;color:#c0b0d0}.access-title strong{font-size:18px;letter-spacing:-.025em;font-weight:600}.access-indicator{margin-left:auto;align-self:flex-start;border:1px solid #d9c5ec27;border-radius:20px;background:#ffffff09;padding:7px 9px;color:#bcaeca;font-size:8px;letter-spacing:.11em;white-space:nowrap}.access-indicator i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#dac0ff;margin-right:4px;box-shadow:0 0 7px #d7b9ff}.access-description{font-size:12px;color:#bdb3c8;line-height:1.5;margin:18px 0 22px}.login-form label{font-size:9px;letter-spacing:.14em}.key-wrap{position:relative;overflow:hidden;background:#0c0a11b8;border:1px solid #dfc9f32b;transition:border-color 180ms ease,box-shadow 180ms ease}.key-wrap:focus-within{border-color:#c8a6ec99;box-shadow:0 0 0 3px #b98de721,inset 0 1px #ffffff1f}.login-form .primary{min-height:60px;box-shadow:inset 0 1px #ffffffaf,0 8px 25px #9e6bd62b}.login-form .primary:focus-visible{outline:2px solid #e9d7ff;outline-offset:3px}@keyframes access-trace{0%,100%{background-position:100% 0}50%{background-position:0 0}}@keyframes access-bloom{0%,100%{opacity:.4;transform:rotate(45deg) scale(.8)}50%{opacity:.95;transform:rotate(90deg) scale(1.04)}}@media(max-width:760px){.login-form{padding:20px}.access-symbol{width:46px;height:46px}.access-indicator{font-size:7px}.access-description{margin:15px 0 19px}}@media(prefers-reduced-motion:reduce){.login-form:before,.access-symbol span{animation:none!important}}
/* Moving highlight follows the full rounded border without covering form controls. */
@property --access-border-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
.login-form:before{content:"";position:absolute;inset:0;height:auto;border-radius:inherit;padding:2px;pointer-events:none;z-index:2;background:conic-gradient(from var(--access-border-angle),transparent 0deg,transparent 305deg,#c39af51a 320deg,#f5e9ffed 345deg,#c39af53d 358deg,transparent 360deg);background-size:auto;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:access-border-orbit 5s linear infinite}
@keyframes access-border-orbit{to{--access-border-angle:360deg}}
@media(prefers-reduced-motion:reduce){.login-form:before{animation:none}}
/* The key is the centre of the experience: no badges or decorative card header. */
.login-form{position:relative;overflow:hidden;margin-top:34px;padding:29px 0 0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:0;border-top:1px solid #ddd0ee32;border-radius:0;box-shadow:none}.login-form:before{inset:-1px auto auto 0;width:30%;height:1px;padding:0;border-radius:0;background:linear-gradient(90deg,transparent,#e0c9ff,transparent);mask:none;-webkit-mask:none;animation:entry-line 5s ease-in-out infinite alternate}.login-form:after{display:none}.access-kicker{display:flex;align-items:center;gap:8px;color:#bbaeca;font-size:9px;letter-spacing:.14em;font-weight:650}.access-kicker-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:#d2b4f5;box-shadow:0 0 10px #c59af9}.login-form label{display:block;margin-top:22px;color:#f7f3fa;font-size:clamp(25px,2vw,31px);font-weight:550;line-height:1.2;letter-spacing:-.04em}.login-form label span{color:#c6a2f2}.access-description{color:#b5acbd;font-size:13px;margin:9px 0 21px;line-height:1.5}.key-wrap{position:relative;display:flex;align-items:center;margin:0 0 13px;min-height:64px;border-radius:14px;border:1px solid #e2d0f436;background:linear-gradient(115deg,#ffffff0c,#ffffff05);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:inset 0 1px #ffffff0d;transition:border-color 200ms ease,box-shadow 200ms ease}.key-wrap:focus-within{border-color:#d9baffb3;box-shadow:0 0 0 3px #b98de721,inset 0 1px #ffffff1f}.key-icon{width:20px;height:20px;margin-left:18px;flex:none;color:#bca8cc}.key-icon svg,#show-key svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.key-wrap input{padding:19px 14px;min-width:0;font-size:14px}.key-wrap input::placeholder{color:#a69bab}#show-key{display:grid;place-items:center;width:52px;height:52px;padding:16px;color:#afa4b8}#show-key:hover{color:#f0e2ff}.login-form .primary{width:100%;min-height:62px;padding:11px 12px 11px 19px;border-radius:14px;background:linear-gradient(105deg,#dbc7f4,#c4a3eb 58%,#e3cef8);border:1px solid #f1dcffad;box-shadow:inset 0 1px #fff8,0 12px 32px #8b65be27;color:#20162b}.button-copy{font-size:14px;font-weight:700}.button-arrow{border-radius:10px;background:#543a791f}.access-foot{display:flex;align-items:center;gap:12px;margin-top:23px;color:#978ba2;font-size:9px;letter-spacing:.12em}.access-foot-line{height:1px;flex:1;background:linear-gradient(90deg,#d0bce344,#d0bce30d)}@keyframes entry-line{from{transform:translateX(0)}to{transform:translateX(230%)}}@media(max-width:760px){.login-form{padding:22px 0 0;margin-top:25px}.login-form label{margin-top:17px}.key-wrap{min-height:58px}.login-form .primary{min-height:58px}.access-foot{font-size:8px}}@media(prefers-reduced-motion:reduce){.login-form:before{animation:none!important}}
/* Keep the button highlight contained within its own shape. */
.login-form .primary,.login-form .primary:hover{box-shadow:inset 0 1px #fff8}
/* A short entrance introduces the scene before ambient movement draws attention. */
@media(prefers-reduced-motion:no-preference){.login .art{animation:scene-enter 850ms cubic-bezier(.23,1,.32,1) both}.login>.brand{animation:brand-enter 650ms cubic-bezier(.23,1,.32,1) both}.login-body{animation:content-enter 750ms cubic-bezier(.23,1,.32,1) 90ms both}.login footer{animation:brand-enter 650ms ease-out 220ms both}@keyframes scene-enter{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes content-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes brand-enter{from{opacity:0}to{opacity:1}}}
