@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:500 700;font-display:swap;src:url(/assets/fontes/bricolage-grotesque-latin.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fontes/instrument-sans-latin.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fontes/jetbrains-mono-latin.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fontes/inter-latin.woff2) format('woff2')}
:root{
  color-scheme:dark;
  --canvas:#0E0D10;--panel:#17161B;--panel-3:#232127;
  --line:#2A272F;--line-strong:#3B3741;
  --accent:#FF009E;--accent-pale:#FF9FD8;
  --neg:#FF6B79;--ok:#2FBF8F;--ok-bright:#4FD6A2;--on-ok:#0E0D10;--warn:#F4A261;
  --text-primary:#F6F2F5;--text-secondary:#B1AAB4;--text-tertiary:#8A848E;--text-hi:#fff;
  --font-display:'Bricolage Grotesque',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-body:'Instrument Sans',system-ui,sans-serif;
  --font-ui:'Inter',system-ui,sans-serif;
  --font-num:'JetBrains Mono',ui-monospace,Menlo,Consolas,monospace;
  --ease:cubic-bezier(.22,.61,.36,1);--ease-out:cubic-bezier(.16,1,.3,1);--ease-mola:cubic-bezier(.34,1.4,.5,1);
  --gutter:20px;--r:12px;
  --mg:255,0,158;--w:255,255,255;--k:0,0,0;--ks:0,0,0;--pnc:23,22,27;--okc:47,191,143;--ngc:255,107,121;--wnc:244,162,97;
  --vidro:rgba(var(--pnc),.55);
  --vidro-borda:rgba(var(--w),.09);
  --campo-bg:rgba(var(--k),.30);
  --campo-borda:rgba(var(--w),.13);
  --btn-a:#DD0089;--btn-b:#C70073;--btn-a-h:#CF007D;--btn-b-h:#B8006A;--btn-txt:#fff;
  --grao:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  --grao-op:.045;
}
:root[data-theme="light"]{
  color-scheme:light;
  --canvas:#F6F4F7;--panel:#FFFFFF;--panel-3:#F1EDF3;
  --line:#E7E2EA;--line-strong:#D5CED9;
  --accent:#C8007A;--accent-pale:#C8007A;
  --neg:#B42335;--ok:#0F7A55;--ok-bright:#0F7A55;--on-ok:#fff;--warn:#9A5208;
  --text-primary:#17141B;--text-secondary:#5D5663;--text-tertiary:#6F6875;--text-hi:#17141B;
  --mg:200,0,122;--w:23,20,27;--k:23,20,27;--ks:60,20,70;--pnc:255,255,255;--okc:15,122,85;--ngc:180,35,53;--wnc:154,82,8;
  --vidro:rgba(var(--pnc),.66);
  --campo-bg:rgba(var(--pnc),.82);
  --campo-borda:rgba(var(--w),.17);
  --btn-a:#CF007D;--btn-b:#A80067;--btn-a-h:#BE0072;--btn-b-h:#98005E;
  --grao:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  --grao-op:.05;
}
:root[data-theme="light"] img[src$="hurg-logo.svg"]{content:url(/assets/hurg-logo-claro.svg)}
*{box-sizing:border-box}
html{height:100%;-webkit-text-size-adjust:100%;background:var(--canvas)}
body{margin:0;min-height:100%;background:var(--canvas);color:var(--text-primary);font:400 16px/1.5 var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
[hidden]{display:none!important}
img,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ui{font-family:var(--font-ui);font-variant-numeric:tabular-nums}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.fundo{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.fundo .grao{position:absolute;inset:0;background-image:var(--grao);opacity:var(--grao-op)}
.fundo .luz-a,.fundo .luz-b{position:absolute;left:50%;border-radius:50%;pointer-events:none}
.fundo .luz-a{bottom:-46vmax;width:110vmax;height:80vmax;margin-left:-55vmax;background:radial-gradient(closest-side,rgba(var(--mg),.36),rgba(var(--mg),.10) 55%,rgba(var(--mg),0));animation:respira 16s ease-in-out infinite alternate}
.fundo .luz-b{top:-40vmax;width:90vmax;height:70vmax;margin-left:-45vmax;background:radial-gradient(closest-side,rgba(var(--w),.07),rgba(var(--w),0))}
:root[data-theme="light"] .fundo .luz-a{background:radial-gradient(closest-side,rgba(var(--mg),.22),rgba(var(--mg),.06) 55%,rgba(var(--mg),0))}
@keyframes respira{from{transform:scale(1) translateY(0);opacity:.85}to{transform:scale(1.07) translateY(-2%);opacity:1}}
.pagina{position:relative;z-index:1;min-height:100vh;min-height:100svh;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);padding:0 var(--gutter);padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right))}
.topo{display:flex;align-items:center;justify-content:space-between;height:76px;padding-top:env(safe-area-inset-top)}
.marca{display:inline-flex;align-items:center;padding:6px 2px;border-radius:8px}
.marca img{height:28px;width:auto}
.tema{width:42px;height:42px;border-radius:50%;border:1px solid var(--vidro-borda);background:var(--vidro);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .25s,border-color .25s,transform .35s var(--ease-mola)}
.tema svg{width:18px;height:18px}
.tema:hover{color:var(--text-primary);border-color:var(--line-strong)}
.tema:active{transform:scale(.92)}
.tema .ic-sol{display:none}
:root[data-theme="light"] .tema .ic-sol{display:block}
:root[data-theme="light"] .tema .ic-lua{display:none}
.palco{display:grid;align-content:center;justify-items:center;gap:26px;padding:4px 0 36px;min-width:0}
.rodape{display:flex;flex-wrap:wrap;gap:4px 20px;justify-content:center;align-items:center;padding:16px 0 calc(22px + env(safe-area-inset-bottom));font-size:13px;color:var(--text-tertiary);text-align:center}
.rodape a{color:var(--text-secondary);text-decoration-color:var(--line-strong);text-underline-offset:3px;padding:8px 0;transition:color .2s,text-decoration-color .2s}
.rodape a:hover{color:var(--text-primary);text-decoration-color:var(--accent)}
.rodape .canais{flex-basis:100%;font-size:12.5px;letter-spacing:.02em;color:var(--text-tertiary);margin-bottom:6px}
.fala{text-align:center;max-width:30rem;display:grid;gap:12px;justify-items:center}
.kicker{margin:0;font:600 11.5px/1.2 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-pale)}
:root[data-theme="light"] .kicker{color:var(--accent)}
.fala-t{margin:0;font:700 clamp(32px,8.6vw,46px)/1.02 var(--font-display);letter-spacing:-.038em;color:var(--text-hi);text-wrap:balance}
.fala-t .ponto{color:var(--accent)}
.cartao{--rim:.34;position:relative;width:min(100%,424px);display:grid;gap:22px;padding:34px 30px 30px;border-radius:26px;min-width:0;
  background:linear-gradient(180deg,rgba(var(--w),.075),rgba(var(--w),.02) 46%),var(--vidro);
  -webkit-backdrop-filter:blur(30px) saturate(1.4);backdrop-filter:blur(30px) saturate(1.4);
  box-shadow:0 1px 0 rgba(255,255,255,.07) inset,0 0 0 1px rgba(var(--k),.25),0 2px 4px rgba(var(--ks),.25),0 50px 90px -34px rgba(var(--ks),.7);
  transition:box-shadow .6s var(--ease)}
:root[data-theme="light"] .cartao{--rim:.14;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 0 0 1px rgba(var(--k),.04),0 2px 4px rgba(var(--ks),.06),0 50px 90px -40px rgba(var(--ks),.35)}
.cartao::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(160deg,rgba(var(--w),var(--rim)),rgba(var(--w),.05) 40%,rgba(var(--w),.02) 62%,rgba(var(--mg),.55));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.cartao:focus-within{box-shadow:0 1px 0 rgba(255,255,255,.07) inset,0 0 0 1px rgba(var(--k),.25),0 2px 4px rgba(var(--ks),.25),0 50px 100px -30px rgba(var(--mg),.42)}
:root[data-theme="light"] .cartao:focus-within{box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 0 0 1px rgba(var(--k),.04),0 50px 100px -36px rgba(var(--mg),.4)}
.cartao-cab{display:grid;gap:8px}
.cartao-t{margin:0;font:700 30px/1.08 var(--font-display);letter-spacing:-.028em;color:var(--text-hi)}
.cartao-sub{margin:0;font-size:15px;line-height:1.5;color:var(--text-secondary)}
.cartao-sub b{font-weight:600;color:var(--text-primary);overflow-wrap:anywhere}
.cartao-form{display:grid;gap:18px;min-width:0}
.cartao-ajuda{margin:0;text-align:center;font-size:14px;line-height:1.5;color:var(--text-secondary)}
.cartao-legal{margin:0;font-size:13px;line-height:1.5;text-align:center;color:var(--text-secondary)}
.cartao-bloco{display:grid;gap:22px;min-width:0}
.campo{display:grid;gap:9px;min-width:0;align-content:start}
.campo label:not(.check),.campo .rot{font:600 13.5px/1.2 var(--font-body);color:var(--text-secondary);transition:color .25s var(--ease)}
.campo:focus-within label:not(.check){color:var(--text-primary)}
.campo-cab{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.campo input:not([type=checkbox]){width:100%;min-height:54px;padding:0 16px;border-radius:14px;border:1px solid var(--campo-borda);background:var(--campo-bg);color:var(--text-primary);font:400 16px var(--font-body);appearance:none;-webkit-appearance:none;outline:none;box-shadow:inset 0 1px 3px rgba(var(--ks),.28);transition:border-color .25s,box-shadow .35s var(--ease),background .25s}
:root[data-theme="light"] .campo input:not([type=checkbox]){box-shadow:inset 0 1px 2px rgba(var(--ks),.08)}
.campo input::placeholder{color:var(--text-tertiary)}
.campo input:not([type=checkbox]):hover{border-color:rgba(var(--w),.24)}
.campo input:not([type=checkbox]):focus{border-color:var(--accent);background:rgba(var(--k),.4);box-shadow:inset 0 1px 3px rgba(var(--ks),.2),0 0 0 4px rgba(var(--mg),.16),0 10px 34px -10px rgba(var(--mg),.55)}
:root[data-theme="light"] .campo input:not([type=checkbox]):focus{background:#fff}
.campo input[aria-invalid="true"]:not([type=checkbox]){border-color:var(--neg)}
.campo input[aria-invalid="true"]:not([type=checkbox]):focus{box-shadow:0 0 0 4px rgba(var(--ngc),.18),0 10px 30px -10px rgba(var(--ngc),.4)}
.campo input:disabled{opacity:.6;cursor:not-allowed}
.campo input:-webkit-autofill{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 1000px var(--panel) inset;transition:background-color 9999s}
.campo .dica{margin:0;font-size:13.5px;line-height:1.45;color:var(--text-secondary)}
.senha{position:relative;display:block}
.campo .senha input{padding-right:98px}
.senha button{position:absolute;right:6px;top:50%;transform:translateY(-50%);min-height:42px;padding:0 12px;border-radius:10px;border:0;background:transparent;color:var(--text-secondary);font:500 13.5px var(--font-body);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s,background .2s}
.senha button:hover{color:var(--text-primary);background:rgba(var(--w),.07)}
.forca{display:flex;gap:4px;margin-top:2px}
.forca i{flex:1;height:3px;border-radius:3px;background:var(--line-strong);transition:background .3s}
.forca.n1 i:nth-child(1){background:var(--warn)}
.forca.n2 i:nth-child(-n+2){background:var(--warn)}
.forca.n3 i:nth-child(-n+3){background:var(--ok)}
.forca.n4 i{background:var(--ok)}
.check{display:flex;align-items:flex-start;gap:12px;font:400 14.5px/1.4 var(--font-body);color:var(--text-secondary);cursor:pointer}
.check input{appearance:none;-webkit-appearance:none;width:22px;height:22px;margin:0;flex:none;border-radius:7px;border:1px solid var(--campo-borda);background:var(--campo-bg);display:grid;place-items:center;cursor:pointer;transition:background .2s,border-color .2s}
.check input:checked{background:var(--accent);border-color:var(--accent)}
.check input:checked::after{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg)}
.check input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.link{background:none;border:0;padding:0;color:var(--text-secondary);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:4px;cursor:pointer;font:inherit;font-size:13.5px;font-weight:500;transition:color .2s,text-decoration-color .2s}
.link:hover{color:var(--text-primary);text-decoration-color:var(--accent)}
.cartao-ajuda .link,.cartao-legal .link{font-size:inherit}
.erro-txt{margin:0;font-size:13.5px;line-height:1.45;color:var(--neg);display:flex;gap:9px;align-items:flex-start;animation:erro-entra .4s var(--ease-out) both}
.erro-txt::before{content:"!";flex:none;width:16px;height:16px;margin-top:1px;border-radius:50%;background:rgba(var(--ngc),.16);color:var(--neg);font:700 10.5px/16px var(--font-ui);text-align:center}
@keyframes erro-entra{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.aviso{display:flex;gap:10px;align-items:flex-start;margin:0;padding:13px 15px;border-radius:14px;border:1px solid rgba(var(--wnc),.3);background:rgba(var(--wnc),.08);font-size:14.5px;line-height:1.5;color:var(--text-primary)}
.aviso.ok{border-color:rgba(var(--okc),.35);background:rgba(var(--okc),.10)}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;margin-top:2px;padding:0 22px;border-radius:14px;border:1px solid rgba(255,255,255,.14);font:600 16px/1 var(--font-body);letter-spacing:.005em;text-decoration:none;background:linear-gradient(180deg,var(--btn-a),var(--btn-b));color:var(--btn-txt);cursor:pointer;overflow:hidden;isolation:isolate;
  box-shadow:0 1px 0 rgba(255,255,255,.28) inset,0 -1px 0 rgba(0,0,0,.18) inset,0 14px 34px -12px rgba(var(--mg),.75),0 2px 6px rgba(var(--mg),.25);
  transition:transform .3s var(--ease),background .3s var(--ease),box-shadow .4s var(--ease),opacity .2s;-webkit-tap-highlight-color:transparent}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.24) 50%,transparent 68%);transform:translateX(-130%);transition:transform .8s var(--ease-out)}
.btn:hover{background:linear-gradient(180deg,var(--btn-a-h),var(--btn-b-h));transform:translateY(-1px);box-shadow:0 1px 0 rgba(255,255,255,.3) inset,0 -1px 0 rgba(0,0,0,.2) inset,0 20px 40px -12px rgba(var(--mg),.9),0 2px 8px rgba(var(--mg),.35)}
.btn:hover::after{transform:translateX(130%)}
.btn:active{transform:translateY(0) scale(.985);transition-duration:.12s}
.btn:focus-visible{outline:2px solid var(--text-hi);outline-offset:3px;box-shadow:0 0 0 5px rgba(var(--mg),.45),0 14px 34px -12px rgba(var(--mg),.75)}
.btn:disabled{opacity:.7;cursor:progress;transform:none;box-shadow:none}
.btn:disabled::after{display:none}
.spin{width:17px;height:17px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:gira .8s linear infinite;flex:none}
.spin.escuro{border-color:rgba(var(--w),.12);border-top-color:var(--accent)}
@keyframes gira{to{transform:rotate(360deg)}}
.tela-carregando{min-height:160px;display:grid;place-items:center}
.otp{position:relative}
.otp-caixas{display:none}
.otp.otp-on .otp-caixas{display:flex;gap:9px;justify-content:space-between}
.otp.otp-on .otp-in{position:absolute;inset:0;width:100%;height:100%;min-height:0;opacity:0;padding:0;margin:0;border:0;background:transparent;color:transparent;caret-color:transparent;letter-spacing:2em;box-shadow:none}
.otp-c{flex:1 1 0;min-width:0;height:64px;border-radius:14px;border:1px solid var(--campo-borda);background:var(--campo-bg);display:grid;place-items:center;position:relative;box-shadow:inset 0 1px 3px rgba(var(--ks),.28);transition:border-color .25s,box-shadow .3s,background .3s}
.otp-c i{font:600 27px var(--font-num);font-style:normal;color:var(--text-hi);line-height:1}
.otp-c.cheia{border-color:rgba(var(--mg),.5);background:rgba(var(--mg),.07)}
.otp-c.cheia i{animation:digito .28s var(--ease-mola) both}
@keyframes digito{from{opacity:0;transform:translateY(5px) scale(.9)}to{opacity:1;transform:none}}
.otp-sep{flex:0 0 8px;align-self:center;height:2px;border-radius:1px;background:var(--line-strong)}
.otp.foco .otp-c.ativa{border-color:var(--accent);box-shadow:inset 0 1px 3px rgba(var(--ks),.2),0 0 0 4px rgba(var(--mg),.16),0 10px 30px -10px rgba(var(--mg),.6)}
.otp.foco .otp-c.ativa:not(.cheia)::after{content:"";width:2px;height:28px;background:var(--accent);border-radius:1px;position:absolute;animation:pisca 1.1s steps(2) infinite}
@keyframes pisca{to{opacity:0}}
.otp.erro .otp-c{border-color:var(--neg);animation:treme .45s var(--ease)}
.otp.erro .otp-c.cheia{background:rgba(var(--ngc),.09)}
.otp.off .otp-c{opacity:.55}
@keyframes treme{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(3px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}
@keyframes entra{from{opacity:0;transform:translateY(16px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.anima .fala>*{animation:entra 1s var(--ease-out) both}
.anima .fala .kicker{animation-delay:.04s}.anima .fala .fala-t{animation-delay:.1s}
.anima .cartao{animation:entra 1s var(--ease-out) .16s both}
@media (pointer:coarse){.btn{min-height:56px}.campo input:not([type=checkbox]){min-height:56px}}
@media (min-width:900px){.topo{height:92px;padding-left:24px;padding-right:24px}.cartao{padding:40px 36px 34px}.palco{gap:32px}}
@media (min-width:900px) and (max-height:960px){.topo{height:68px}.cartao{padding:28px 36px 24px;gap:18px}.cartao-form{gap:14px}.palco{gap:18px;padding-bottom:10px}}
@media (max-width:380px){.cartao{padding:28px 20px 24px}.otp.otp-on .otp-caixas{gap:6px}.otp-c{height:58px}}
@media (max-width:899px) and (max-height:640px){.topo{height:56px}.fala-t{font-size:28px}.fala .kicker{display:none}.palco{gap:16px;padding-bottom:12px}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:.001s!important}
  .spin{animation:gira .8s linear infinite!important}
  .btn::after{display:none}
  .btn:hover,.btn:active,.tema:active{transform:none}
}
.campo-esq{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"rot ajuda" "campo campo";align-items:baseline;column-gap:12px}
.campo-esq>label{grid-area:rot}
.campo-esq>.senha{grid-area:campo}
.campo-esq>.link{grid-area:ajuda}
