@font-face{font-family:Inter;src:url('/fonts/InterVariable-4.1.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{color-scheme:dark;font-family:Inter,system-ui,sans-serif;color:#fbf9f6;background:#0d0c09}
*{box-sizing:border-box}
html{min-height:100%;background:#0d0c09}
body{position:relative;isolation:isolate;min-width:320px;min-height:100dvh;margin:0;overflow-x:hidden;background:radial-gradient(ellipse 70% 80% at 50% 40%,#37280c 0%,#13110d 52%,#090807 100%)}
.ambient{position:fixed;z-index:-1;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse 65% 55% at 21% 40%,#895c0773,transparent 72%),radial-gradient(ellipse 62% 64% at 84% 82%,#8d611086,transparent 74%),linear-gradient(135deg,#0c0b09,#1a1712 48%,#090806)}
.ambient::before{content:"";position:absolute;inset:-10%;opacity:.44;background:repeating-radial-gradient(ellipse 36% 56% at 15% 36%,transparent 0 38px,#ffc3531a 40px 42px,transparent 44px 66px);transform:rotate(-16deg);filter:blur(7px)}
.ambient::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b0a0873,transparent 32%,transparent 68%,#09080767),radial-gradient(ellipse 42% 52% at 50% 56%,transparent 42%,#0908068f 100%)}
.ambient-glow{position:absolute;display:block;border-radius:46% 54% 62% 38%;filter:blur(clamp(42px,7vw,110px));will-change:transform}
.glow-one{width:min(74vw,820px);height:min(82dvh,710px);top:-13%;left:-13%;background:radial-gradient(ellipse at 57% 52%,#ffb52bf0 0%,#db9006e0 32%,#aa751268 61%,transparent 75%);transform:rotate(-26deg);animation:float-one 20s ease-in-out infinite alternate}
.glow-two{width:min(78vw,900px);height:min(83dvh,750px);right:-15%;bottom:-31%;background:radial-gradient(ellipse at 42% 35%,#ffb732f0 0%,#bf8518c9 40%,#e0a22e5c 63%,transparent 76%);transform:rotate(28deg);animation:float-two 24s ease-in-out infinite alternate}
.glow-three{width:min(38vw,430px);height:min(66dvh,500px);left:31%;top:8%;background:radial-gradient(ellipse,#ffa6005e,transparent 68%);filter:blur(90px)}
.ambient-orbit{position:absolute;display:block;border:1px solid #ffc96529;border-radius:50%;transform:rotate(-24deg);box-shadow:0 0 40px #ffbc4114,inset 0 0 28px #ffd27d0a;filter:blur(1.5px)}
.orbit-one{width:min(95vw,1100px);height:min(39vw,440px);top:11%;left:-28%}
.orbit-two{width:min(98vw,1300px);height:min(41vw,520px);right:-31%;bottom:-12%;border-color:#ffd07820;transform:rotate(26deg)}
.shell{position:relative;display:flex;flex-direction:column;min-height:100dvh;padding:clamp(24px,5dvh,46px) 18px}
.login-stack{width:min(100%,450px);margin:auto;display:flex;flex-direction:column;align-items:center}
.brand-wrap{position:relative;isolation:isolate;display:flex;justify-content:center;width:100%;margin-bottom:16px}
.brand-wrap::before{content:"";position:absolute;z-index:-1;top:46%;left:50%;width:min(90vw,365px);height:158px;pointer-events:none;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse at center,#000 0%,#060605f2 37%,#0b0907c4 61%,#0b0a0800 78%);filter:blur(11px)}
.brand{position:relative;z-index:1;display:block;width:min(100%,248px);height:auto;max-height:93px;object-fit:contain;mix-blend-mode:screen;filter:drop-shadow(0 0 18px #ffae1738);mask-image:radial-gradient(ellipse 78% 85% at center,#000 63%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 78% 85% at center,#000 63%,transparent 100%);transform:translateY(-6px)}
.card{position:relative;isolation:isolate;width:100%;padding:clamp(27px,5vw,40px);overflow:hidden;border:1px solid #ede7db3a;border-radius:26px;background:linear-gradient(143deg,#564017a1 0%,#3a2b109c 28%,#1c1914b5 66%,#232019ba 100%);box-shadow:0 30px 90px #080705cc,0 3px 42px #d9910c38,inset 0 1px 0 #ffffff42,inset 0 -1px 0 #ffd48415;backdrop-filter:blur(34px) saturate(155%);-webkit-backdrop-filter:blur(34px) saturate(155%);container-type:inline-size}
.card::before{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background:radial-gradient(ellipse 80% 54% at 3% 0%,#ffdfa320,transparent 76%),radial-gradient(ellipse 65% 62% at 100% 100%,#ba87282a,transparent 76%);border-radius:inherit}
.card::after{content:"";position:absolute;z-index:0;top:0;left:10%;right:10%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,#f7f4efac 45%,#ffca6788 70%,transparent);filter:blur(.3px)}
.card>*{position:relative;z-index:1}
.eyebrow{display:flex;align-items:center;justify-content:center;gap:9px;margin:0;color:#ffcd70;font-size:10px;font-weight:800;letter-spacing:.17em;line-height:1.4;text-align:center}
.eyebrow-line{display:inline-block;width:18px;height:2px;flex:none;border-radius:10px;background:#ffb731;box-shadow:0 0 12px #ffb121}
h1,h2{margin:15px 0 9px;color:#fcfbfa;font-size:clamp(25px,8cqi,32px);font-weight:800;letter-spacing:-.045em;line-height:1.14;text-align:center;overflow-wrap:anywhere}
.muted{margin:0;color:#d6c6a9;font-size:14px;line-height:1.55;text-align:center}
.intro{max-width:340px;margin-inline:auto}
form{display:flex;flex-direction:column;gap:9px;margin-top:24px}
label{margin-top:9px;color:#efeadf;font-size:12px;font-weight:650;letter-spacing:.01em}
input{width:100%;min-width:0;min-height:48px;padding:12px 15px;border:1px solid #e5c99534;border-radius:13px;outline:0;background:linear-gradient(110deg,#f8f5f00c,#f8cd7c08);box-shadow:inset 0 1px 2px #0004;color:#fcfbf9;font:inherit;font-size:14px;transition:border-color .16s,background .16s,box-shadow .16s}
input::placeholder{color:#beae918c}
input:hover{border-color:#f9dca657}
input:focus-visible{border-color:#ffcd71b0;background:#f1ece310;box-shadow:0 0 0 3px #ffb42822,inset 0 1px 2px #0004}
button,.button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;padding:12px 17px;border:1px solid transparent;border-radius:13px;background:linear-gradient(108deg,#ffb428 0%,#ffae18 49%,#edab31 100%);box-shadow:inset 0 1px 0 #ffffff75,0 9px 25px #ffa90852,0 0 25px #ffad1424;color:#fff;cursor:pointer;text-align:center;text-decoration:none;font:inherit;font-size:14px;font-weight:800;transition:transform .16s,box-shadow .16s,filter .16s}
button:hover,.button:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:inset 0 1px 0 #ffffff8a,0 12px 29px #ffa90867,0 0 32px #ffad1437}
button:disabled{opacity:.65;cursor:wait;transform:none}
button:focus-visible,a:focus-visible{outline:3px solid #ffd27f;outline-offset:3px}
.submit{position:relative;margin-top:7px}
.submit span{position:absolute;right:17px;font-size:20px;font-weight:450;line-height:1}
.password-field{position:relative}
.password-field input{padding-right:52px}
.password-toggle{position:absolute;top:50%;right:6px;width:38px;min-height:38px;padding:8px;transform:translateY(-50%);border:0;border-radius:9px;background:transparent;box-shadow:none;color:#dbc9a8}
.password-toggle:hover{transform:translateY(-50%);background:#e7ddcc18;box-shadow:none;color:#fff;filter:none}
.password-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.error{min-height:18px;margin:0;color:#e8dfcf;font-size:12px;line-height:1.4}
.error:empty{min-height:0}
.card-footer{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:26px;padding-top:18px;border-top:1px solid #f2ede31b;color:#af9f82;font-size:11px;text-align:center}
.secure-mark{color:#ffca68;font-size:17px;line-height:1;text-shadow:0 0 12px #ffb73099}
.privacy{display:inline-block;margin-top:17px;color:#d0c1a5;font-size:11px;text-align:center;text-decoration:none;transition:color .16s}
.privacy:hover{color:#ede7db}
#account{margin-top:22px}
#account-name{overflow-wrap:anywhere;color:#e8d9be;text-align:center;font-size:13px}
.secondary{margin-top:11px;border-color:#fadca535;background:#f6f3ed08;box-shadow:inset 0 1px 0 #ffffff12;color:#f3efe7}
.secondary:hover{background:#f0eae012;box-shadow:inset 0 1px 0 #ffffff21}
dialog{width:min(460px,calc(100% - 28px));max-height:90svh;padding:0;overflow:hidden;border:1px solid #ffe4b255;border-radius:24px;background:linear-gradient(145deg,#553f17eb,#1d1a14ed);box-shadow:0 30px 90px #000b,inset 0 1px #ffffff36;color:#fbf9f6;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
dialog::backdrop{background:#080706bc;backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px)}
.dialog-scroll{max-height:90svh;padding:clamp(24px,6vw,35px);overflow-y:auto;overscroll-behavior:contain;container-type:inline-size}
dialog h2{font-size:clamp(24px,8cqi,30px)}
dialog .eyebrow{justify-content:flex-start}
dialog h2,dialog .muted{text-align:left}
dialog small{color:#ccbc9e;font-size:11px}
#current-wrap{display:flex;flex-direction:column;gap:9px}
[hidden]{display:none!important}
@supports not (backdrop-filter:blur(1px)){.card{background:#1f1c16eF}dialog{background:#242019}}
@media(max-width:480px){.shell{padding:22px 14px}.brand-wrap{margin-bottom:13px}.brand{width:208px}.card{padding:27px 23px;border-radius:22px}.card-footer{margin-top:21px}.glow-one{width:115vw;height:52dvh;left:-65%;top:-10%}.glow-two{width:130vw;height:55dvh;right:-75%;bottom:-14%}}
@media(max-height:650px){.shell{padding-block:15px}.brand-wrap{margin-bottom:7px}.brand{width:185px;max-height:70px}.card{padding-block:24px}.card-footer{margin-top:18px}form{margin-top:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media(prefers-reduced-motion:no-preference){@keyframes float-one{to{transform:translate(9%,7%) rotate(-17deg)}}@keyframes float-two{to{transform:translate(-8%,-7%) rotate(18deg)}}}

.brand{width:260px;max-height:100px;mix-blend-mode:normal;object-fit:contain}.submit,.button{background:linear-gradient(105deg,#e9ad47,#ffd180);color:#21170a;border-color:#f5c66c}.submit:hover,.button:hover{background:linear-gradient(105deg,#f4bd5a,#ffe0a2)}


/* Galáxia Extra: carvão, poeira dourada e movimento orbital suave. */
body{background:#10100f;}
.ambient.galaxy{background:radial-gradient(ellipse at 22% 42%,#332818 0%,#191714 38%,#10100f 74%);}
.ambient.galaxy::before,.ambient.galaxy::after{display:none;}
#galaxy-stars{position:absolute;inset:0;width:100%;height:100%;z-index:1;}
.galaxy-nebula{position:absolute;border-radius:50%;pointer-events:none;filter:blur(34px);opacity:.62;will-change:transform;}
.nebula-one{left:-25%;top:0;width:110vw;height:85vh;background:radial-gradient(ellipse at center,#e1a34316 0%,#c68b3820 26%,transparent 60%);transform:rotate(-25deg);animation:galaxy-drift 28s ease-in-out infinite alternate;}
.nebula-two{right:-35%;bottom:-35%;width:100vw;height:110vh;background:radial-gradient(ellipse at center,#c18a3726 0%,#c18a370d 35%,transparent 65%);animation:galaxy-drift 34s ease-in-out -8s infinite alternate-reverse;}
.galaxy-vignette{position:absolute;z-index:2;inset:0;background:radial-gradient(ellipse at center,transparent 32%,#09090865 100%);}
.brand-wrap{margin-bottom:18px;}
.brand-wrap::before{background:radial-gradient(ellipse,#14120db0,transparent 72%);filter:blur(10px);}
.brand-wrap::after{content:"";position:absolute;left:calc(50% - 91px);top:50%;width:76px;height:29px;margin-top:-17px;border:1px solid #f5bc5733;border-radius:50%;transform:rotate(-31deg);box-shadow:0 0 20px #dda04326;z-index:0;pointer-events:none;animation:symbol-orbit 14s ease-in-out infinite;}
.brand{transform-origin:29% 50%;animation:symbol-float 14s ease-in-out infinite;will-change:transform;}
.card{background:linear-gradient(145deg,#3a3022bb,#211e19db 52%,#1b1a18e8);box-shadow:0 28px 85px #0009,0 0 50px #c28a2414,inset 0 1px 0 #ffffff25;}
.card-footer{font-size:11px;line-height:1.6;color:#c4bba8;align-items:flex-start;}
.secure-mark{padding-top:1px;}
@keyframes galaxy-drift{from{transform:translate(-2%,1%) rotate(-25deg);}to{transform:translate(5%,-3%) rotate(-17deg);}}
@keyframes symbol-float{0%,100%{transform:translate(0,-6px) rotate(-.6deg);filter:drop-shadow(0 0 12px #e9ad4733);}50%{transform:translate(2px,-10px) rotate(.7deg);filter:drop-shadow(0 0 23px #e9ad4770);}}
@keyframes symbol-orbit{0%,100%{transform:rotate(-31deg) scale(1);opacity:.4;}50%{transform:rotate(-23deg) scale(1.12);opacity:.8;}}
@media(prefers-reduced-motion:reduce){.brand,.brand-wrap::after,.galaxy-nebula{animation:none;will-change:auto;}.brand{transform:translateY(-6px);}}

/* Galáxia realista com marca animada em SVG. */
.ambient.galaxy{background:#141310 url('/auth/assets/black-hole-poster.jpg') center/cover no-repeat;}
.galaxy-nebula{display:none;}
.galaxy-vignette{background:linear-gradient(90deg,#0c0b0980,transparent 27%,transparent 76%,#0c0b0970),radial-gradient(ellipse at 50% 51%,#100d0866 0%,#100d0822 48%,#0605047a 100%);}
#galaxy-stars{opacity:.65;}
.brand-wrap::before,.brand-wrap::after{display:none;}
.brand-animated{width:330px;max-height:110px;animation:none;transform:none;mask-image:none;-webkit-mask-image:none;filter:drop-shadow(0 0 16px #c9964260);}
.brand-static{display:none;}
.card{background:linear-gradient(145deg,#241e15d9,#161512e8);border-color:#ead39f44;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
@media(max-width:480px){.brand-animated{width:290px;}.galaxy-vignette{background:#0c0a0755;}}
@media(prefers-reduced-motion:reduce){.brand-animated{display:none;}.brand-static{display:block;}}

/* Enquadramento fixo; distorção orbital limitada à espiral. */
#galaxy-flow{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;}
#galaxy-flow[data-ready="true"]{opacity:.9;}
@media(prefers-reduced-motion:reduce){#galaxy-flow{display:none;}}

/* Black hole: continuous forward/reverse film with fixed poster fallback. */
#galaxy-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;}
#galaxy-film[data-ready="true"]{opacity:.88;}
@media(prefers-reduced-motion:reduce){#galaxy-film{display:none;}}

/* Logo Maker: preserve the official foreground; only its background rotates. */
.brand.logo-maker{display:block;width:185px;max-width:100%;height:auto;max-height:none;animation:none;transform:none;mask-image:none;-webkit-mask-image:none;mix-blend-mode:normal;filter:none;will-change:auto;overflow:visible;}
.brand-wrap{margin-bottom:16px;}
@media(max-width:480px){.brand.logo-maker{width:162px;}}
@media(max-height:650px){.brand.logo-maker{width:148px;}.brand-wrap{margin-bottom:9px;}}
@media(prefers-reduced-motion:reduce){.logo-maker-energy{display:none;}}

/* Static translucent surfaces avoid re-blurring each frame behind the inputs. */
.card{background:linear-gradient(145deg,#241e15eb,#161512f2);backdrop-filter:none;-webkit-backdrop-filter:none;}
dialog{background:linear-gradient(145deg,#352a18f5,#1d1a14fa);backdrop-filter:none;-webkit-backdrop-filter:none;}
dialog::backdrop{background:#080706df;backdrop-filter:none;-webkit-backdrop-filter:none;}
.login-interacting .brand-wrap *{animation-play-state:paused!important;}

.music-toggle{position:fixed;right:12px;bottom:8px;z-index:5;display:grid;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;max-width:44px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#eaf0fa;cursor:pointer;transform:none}.music-toggle svg{display:block;width:20px;height:20px;margin:0}.music-toggle::before,.music-toggle::after{display:none;content:none}.music-toggle[aria-pressed="false"]{opacity:.55}.music-toggle:hover,.music-toggle:focus-visible{border:0;outline:none;background:none;box-shadow:none;transform:none;color:#ffe6a5;opacity:1}.music-toggle:disabled{cursor:default;opacity:.3}@media(max-width:600px){.music-toggle{right:6px;bottom:4px}}
