/* Desire — base visual compartilhada (login e downloads públicos). */
:root{--bg:#050505;--surface:#141519;--surface-2:#1b1d22;--line:#2a2c32;--line-strong:#454850;--text:#f5f5f5;--muted:#a5a8b0;--faint:#747780;--accent:#f5f5f5;--accent-2:#fff;--on-accent:#050505;--danger:#ff8b98;--radius:12px;--font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;overflow-x:clip;background:var(--bg)}body{min-height:100vh;min-height:100dvh;font-family:var(--font);font-size:15px;line-height:1.5;color:var(--text);background:var(--bg);overflow-x:clip;overscroll-behavior-x:none;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select{font:inherit;color:inherit}img,svg{display:block;max-width:100%}:focus-visible{outline:2px solid #f5f5f5;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:48px;padding:0 18px;border-radius:10px;border:1px solid var(--line-strong);background:transparent;color:var(--text);font-size:.9rem;font-weight:700;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .16s,border-color .16s,color .16s,transform .16s,opacity .16s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn:hover{background:var(--surface-2);border-color:#62666f}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 10px 26px rgba(0,0,0,.26)}.btn-primary:hover{background:#fff;border-color:#fff;transform:translateY(-1px)}.btn:disabled{opacity:.72;cursor:wait;transform:none}.btn svg{width:17px;height:17px;flex:none}
/* ---------- Login Desire: assinatura monocromática, sem imagem ---------- */
.auth{position:relative;min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(360px,.88fr) minmax(420px,1.12fr);background:#050505;overflow:hidden}.auth-main{display:flex;align-items:center;justify-content:center;min-width:0;min-height:100vh;min-height:100dvh;padding:clamp(28px,5vw,72px) clamp(24px,6vw,92px);background:transparent;z-index:2}.auth-card{width:min(100%,420px);animation:auth-enter .62s cubic-bezier(.22,.8,.26,1) both}.auth-card-brand{margin-bottom:clamp(42px,7vh,66px)}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font-weight:800;letter-spacing:-.02em}.brand img{width:36px;height:36px;border-radius:10px;object-fit:cover}.auth-card h1{font-size:clamp(2rem,3vw,2.65rem);line-height:1.08;letter-spacing:-.045em;font-weight:800}.auth-card .lead{margin:12px 0 30px;color:var(--muted);font-size:.94rem;max-width:34rem}.alert{margin-bottom:20px;padding:13px 15px;border:1px solid #545862;border-radius:10px;background:#181a1f;color:#e8e9ec;font-size:.86rem;line-height:1.45;animation:auth-alert .28s ease both}.alert-info{border-color:#545862;background:#181a1f;color:#e8e9ec}.alert-error{border-color:#743043;background:#2a1219;color:#ffc2cc}.field{margin-bottom:17px;animation:field-enter .42s ease both}.field:nth-of-type(2){animation-delay:.06s}.field label{display:block;margin-bottom:8px;color:#dfe0e3;font-size:.78rem;font-weight:700}.input-wrap{position:relative}.input{width:100%;height:52px;padding:0 16px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:16px;transition:border-color .16s,background .16s,box-shadow .16s}.input::placeholder{color:var(--faint)}.input:hover{border-color:var(--line-strong)}.input:focus{outline:none;border-color:#c9cbd0;background:#181a1f;box-shadow:0 0 0 3px rgba(245,245,245,.09)}.input.has-toggle{padding-right:52px}.toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:40px;height:40px;display:grid;place-items:center;border:0;background:transparent;color:var(--faint);border-radius:8px;cursor:pointer;transition:color .16s,background .16s}.toggle:hover{color:var(--text);background:#ffffff0b}.toggle svg{width:19px;height:19px}.auth-card .login-submit{width:100%;height:52px;margin-top:7px;font-size:.94rem;animation:field-enter .42s .12s ease both}.login-submit .submit-arrow{transition:transform .16s}.login-submit:hover .submit-arrow{transform:translateX(3px)}.login-submit.is-loading .submit-arrow{animation:login-pulse 1s ease-in-out infinite}.auth-alt{margin-top:23px;text-align:center;color:var(--muted);font-size:.86rem}.auth-alt a{color:#fff;font-weight:750;text-decoration:none}.auth-alt a:hover{text-decoration:underline}.auth-foot{margin-top:clamp(36px,7vh,64px);color:var(--faint);font-size:.75rem;text-align:center}
/* Painel de identidade: movimento técnico discreto, sem ornamentos aleatórios. */
.auth-stage{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:100vh;min-height:100dvh;background:#050505;overflow:hidden;color:#f1f1f1}.stage-grid{position:absolute;inset:-10%;opacity:.34;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px;transform:perspective(520px) rotateX(58deg) translateY(22%);transform-origin:center bottom;animation:grid-drift 16s linear infinite}.stage-grid::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 20%,#050505 76%)}.stage-topline,.stage-bottomline{position:absolute;left:clamp(24px,4vw,68px);right:clamp(24px,4vw,68px);display:flex;justify-content:space-between;align-items:center;color:#858991;font-size:.63rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.stage-topline{top:clamp(26px,5vh,52px)}.stage-bottomline{bottom:clamp(26px,5vh,52px);font-size:.6rem;letter-spacing:.12em}.stage-bottomline span{display:flex;align-items:center;gap:8px}.stage-bottomline i{width:6px;height:6px;border-radius:50%;background:#e7e7e7;box-shadow:0 0 0 4px rgba(255,255,255,.08);animation:status-pulse 2.2s ease-in-out infinite}.stage-center{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;z-index:1}.stage-orbit{position:absolute;width:clamp(230px,25vw,360px);height:clamp(230px,25vw,360px);flex:none;box-sizing:border-box;border:1px solid rgba(255,255,255,.16);border-radius:50%;animation:orbit-spin 18s linear infinite;transform-origin:center center}.stage-orbit::before,.stage-orbit::after{content:"";position:absolute;inset:13%;border:1px solid rgba(255,255,255,.08);border-radius:50%}.stage-orbit::after{inset:27%;border-color:rgba(255,255,255,.12)}.stage-orbit span{position:absolute;top:-3px;left:50%;width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 0 7px rgba(255,255,255,.07)}.stage-mark{position:relative;z-index:1;width:clamp(180px,18vw,270px);height:clamp(180px,18vw,270px);object-fit:contain;filter:grayscale(1) contrast(1.04);animation:mark-breathe 5s ease-in-out infinite}.stage-wordmark{font-size:clamp(.85rem,1.2vw,1.05rem);font-weight:800;letter-spacing:.42em;padding-left:.42em}.stage-wordmark span{color:#7f838b;font-weight:600}.auth-stage::after{display:none}
@keyframes auth-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes field-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes auth-alert{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}@keyframes login-pulse{0%,100%{opacity:.55}50%{opacity:1}}@keyframes grid-drift{from{transform:perspective(520px) rotateX(58deg) translateY(22%)}to{transform:perspective(520px) rotateX(58deg) translateY(29%)}}@keyframes orbit-spin{to{transform:rotate(360deg)}}@keyframes mark-breathe{0%,100%{opacity:.88;transform:scale(1)}50%{opacity:1;transform:scale(1.018)}}@keyframes status-pulse{0%,100%{opacity:.45}50%{opacity:1}}
@media(max-width:900px){.auth{display:block;overflow:visible}.auth-main{min-height:auto;padding:42px 24px 28px;align-items:flex-start}.auth-card{max-width:520px;margin:0 auto}.auth-card-brand{margin-bottom:42px}.auth-stage{min-height:210px;height:210px}.stage-topline{top:22px;left:24px;right:24px}.stage-bottomline{bottom:20px;left:24px;right:24px}.stage-grid{transform:perspective(420px) rotateX(60deg) translateY(28%)}.stage-orbit{width:210px;height:210px}.stage-mark{width:190px;height:190px}.stage-wordmark{font-size:.75rem}}
@media(max-width:520px){.auth-stage{min-height:172px;height:172px}.auth-main{padding:32px 20px calc(26px + env(safe-area-inset-bottom))}.auth-card-brand{margin-bottom:34px}.auth-card h1{font-size:2rem}.auth-card .lead{margin-bottom:24px}.auth-foot{margin-top:34px}.stage-topline{font-size:.56rem}.stage-bottomline{font-size:.53rem}.stage-orbit{width:168px;height:168px}.stage-mark{width:154px;height:154px}.stage-center{gap:12px}.stage-wordmark{font-size:.65rem;letter-spacing:.3em}}
@media(max-height:640px) and (max-width:520px){.auth-stage{min-height:142px;height:142px}.auth-main{padding-top:24px}.auth-card-brand{margin-bottom:24px}.field{margin-bottom:13px}.auth-card .lead{margin-bottom:18px}.auth-foot{margin-top:24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.stage-grid,.stage-orbit,.stage-mark{animation:none!important}}

.desire-pointer-glow{position:fixed;z-index:10001;width:170px;height:170px;margin:-85px 0 0 -85px;border:1px solid rgba(255,255,255,.07);border-radius:50%;pointer-events:none;opacity:0;mix-blend-mode:screen;will-change:transform,opacity;transition:opacity .22s ease}.desire-pointer-glow::after{content:"";position:absolute;inset:25px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.06),rgba(255,255,255,0) 70%)}.desire-pointer-glow.is-visible{opacity:.72}@media(pointer:coarse),prefers-reduced-motion:reduce{.desire-pointer-glow{display:none}}
