/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-400:oklch(70.4% .191 22.216);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-600:oklch(59.6% .145 163.225);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-widest:.1em;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-brand-600:#1d4ed8;--color-brand-700:#1e40af;--color-brand-900:#0f172a}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.prose p{margin-top:.75em;margin-bottom:.75em;line-height:1.625}.prose strong{font-weight:600}.prose-slate{color:#334155}.termos-clausula{letter-spacing:.04em;text-transform:uppercase;color:#0f172a;border-bottom:2px solid #1d4ed8;margin-top:1.75rem;padding-bottom:.4rem;font-size:.8125rem;font-weight:700;line-height:1.4}.termos-sub{color:#334155;margin-top:.9rem;margin-bottom:0;line-height:1.65}.termos-sub .marca{color:#1d4ed8;margin-right:.35rem;font-weight:700}.termos-lista{margin:.5rem 0 0;padding:0;list-style:none}.termos-lista li{gap:.65rem;margin-top:.5rem;line-height:1.65;display:flex}.termos-lista .romano{color:#1e40af;flex:0 0 1.75rem;font-weight:700}}@layer utilities{.absolute{position:absolute}.static{position:static}.-left-\[9999px\]{left:-9999px}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-1{margin-bottom:var(--spacing)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.block{display:block}.flex{display:flex}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-0{height:0}.h-4{height:calc(var(--spacing) * 4)}.h-14{height:calc(var(--spacing) * 14)}.min-h-screen{min-height:100vh}.w-0{width:0}.w-4{width:calc(var(--spacing) * 4)}.w-14{width:calc(var(--spacing) * 14)}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-red-200{border-color:var(--color-red-200)}.border-red-400{border-color:var(--color-red-400)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.bg-brand-600{background-color:var(--color-brand-600)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-red-50{background-color:var(--color-red-50)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-white{background-color:var(--color-white)}.p-8{padding:calc(var(--spacing) * 8)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-10{padding-block:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.4em\]{--tw-tracking:.4em;letter-spacing:.4em}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-all{word-break:break-all}.text-brand-600{color:var(--color-brand-600)}.text-brand-900{color:var(--color-brand-900)}.text-emerald-600{color:var(--color-emerald-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-slate-200\/70{--tw-shadow-color:#e2e8f0b3}@supports (color:color-mix(in lab, red, red)){.shadow-slate-200\/70{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-brand-600{--tw-ring-color:var(--color-brand-600)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\:bg-brand-700:hover{background-color:var(--color-brand-700)}.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}.hover\:text-brand-700:hover{color:var(--color-brand-700)}}.focus\:border-brand-600:focus{border-color:var(--color-brand-600)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-brand-600:focus{--tw-ring-color:var(--color-brand-600)}@media (hover:hover){.enabled\:hover\:bg-brand-700:enabled:hover{background-color:var(--color-brand-700)}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}

/* Engecorps portal theme (captive-safe: sem Google Fonts) */
:root {
  --primary-gradient: linear-gradient(135deg, #c01525, #e01a2b);
  --primary-hover-gradient: linear-gradient(135deg, #a0111e, #c01525);
  --accent-color: #c01525;
  --bg-glow-1: rgba(192, 21, 37, 0.08);
  --bg-glow-2: rgba(224, 26, 43, 0.05);
}

body {
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  background: radial-gradient(circle at 100% 0%, var(--bg-glow-1) 0%, transparent 40%),
              radial-gradient(circle at 0% 100%, var(--bg-glow-2) 0%, transparent 40%),
              #f8fafc !important;
  position: relative;
  min-height: 100vh;
  overflow-x: hidden;
}

.rounded-2xl {
  background: rgba(255, 255, 255, 0.96) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 1px solid rgba(192, 21, 37, 0.15) !important;
  box-shadow: 0 20px 40px -15px rgba(192, 21, 37, 0.12),
              0 0 35px 2px rgba(192, 21, 37, 0.08),
              inset 0 1px 1px rgba(255, 255, 255, 0.9) !important;
  transform: translateY(15px);
  opacity: 0;
  animation: slideUpFade 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes slideUpFade {
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.text-brand-600 {
  color: #c01525 !important;
  letter-spacing: 0.15em !important;
  font-weight: 700 !important;
}

.text-brand-900 {
  color: #0f172a !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
}

input[type="email"], input[type="text"] {
  font-family: inherit;
  border: 1px solid #cbd5e1 !important;
  background: rgba(255, 255, 255, 0.7) !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-shadow: inset 0 2px 4px rgba(15, 23, 42, 0.01) !important;
  font-size: 0.95rem !important;
}

input[type="email"]:focus, input[type="text"]:focus {
  border-color: #c01525 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(192, 21, 37, 0.12),
              0 4px 10px rgba(192, 21, 37, 0.05) !important;
  transform: translateY(-1px);
  outline: none !important;
}

input[type="checkbox"],
.aceite-check {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  border-radius: 7px !important;
  border: 1.5px solid #cbd5e1 !important;
  transition: all 0.2s ease !important;
  cursor: pointer;
  accent-color: #c01525 !important;
}

input[type="checkbox"]:focus,
.aceite-check:focus {
  box-shadow: 0 0 0 4px rgba(192, 21, 37, 0.15) !important;
  outline: none !important;
}

.aceite-box {
  gap: 0.85rem !important;
  padding: 1rem !important;
}

.aceite-texto {
  font-size: 1rem !important;
  line-height: 1.55 !important;
}

@media (max-width: 480px) {
  .aceite-check {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
  }

  .aceite-texto {
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
  }
}

.bg-brand-600 {
  background: var(--primary-gradient) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 14px 20px !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  box-shadow: 0 4px 12px rgba(192, 21, 37, 0.2),
              inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer;
  text-decoration: none !important;
}

.bg-brand-600:hover,
a.bg-brand-600:hover {
  background: var(--primary-hover-gradient) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: 0 6px 20px rgba(192, 21, 37, 0.3),
              inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
  transform: translateY(-1.5px);
}

.bg-brand-600:active {
  transform: translateY(0.5px);
  box-shadow: 0 2px 6px rgba(192, 21, 37, 0.15) !important;
}

button:disabled,
button:disabled.bg-brand-600,
#form-solicitar:not(:has(#aceite-termos:checked)) #btn-enviar {
  background: #cbd5e1 !important;
  color: #94a3b8 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  transform: none !important;
  pointer-events: none;
}

button.border-slate-300 {
  background: transparent !important;
  color: #c01525 !important;
  border: 1.5px solid #c01525 !important;
  border-radius: 12px !important;
  padding: 14px 20px !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer;
}

button.border-slate-300:hover {
  background: rgba(192, 21, 37, 0.04) !important;
  border-color: #a0111e !important;
  color: #a0111e !important;
  transform: translateY(-1.5px);
}

button.border-slate-300:active {
  transform: translateY(0.5px);
}

.text-red-700, .text-red-800 {
  border-radius: 12px !important;
  font-weight: 500 !important;
  animation: shake 0.4s ease-in-out;
}

@keyframes shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-4px); }
  75% { transform: translateX(4px); }
}

a:not(.bg-brand-600):not(#btn-voltar) {
  color: #c01525 !important;
  text-decoration: underline !important;
  font-weight: 600 !important;
  transition: color 0.2s ease !important;
}

a:not(.bg-brand-600):not(#btn-voltar):hover {
  color: #a0111e !important;
}

a.bg-brand-600 {
  color: #ffffff !important;
  text-decoration: none !important;
}

#btn-voltar {
  color: #334155 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

#btn-voltar:hover {
  color: #0f172a !important;
  background: #f8fafc !important;
}

.bg-emerald-50 {
  background: linear-gradient(135deg, #10b981, #059669) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 25px rgba(16, 185, 129, 0.3) !important;
  animation: scaleIn 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes scaleIn {
  from { transform: scale(0); }
  to { transform: scale(1); }
}

.prose {
  max-height: 400px;
  overflow-y: auto;
  padding-right: 12px;
}

.prose::-webkit-scrollbar { width: 6px; }
.prose::-webkit-scrollbar-track { background: #f1f5f9; border-radius: 4px; }
.prose::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
.prose::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

.termos-clausula {
  border-bottom: 2px solid #c01525 !important;
  padding-bottom: 6px;
  margin-top: 24px !important;
  font-weight: 700 !important;
  color: #0f172a !important;
}

.termos-lista .romano {
  color: #c01525 !important;
  font-weight: 700 !important;
}

.termos-sub .marca {
  color: #c01525 !important;
}

/* Loading overlay (enviar / reenviar / validar token)
   Sem overflow:hidden no html/body: no iOS isso quebra position:fixed. */
html.portal-busy body > :not(.portal-loading) {
  pointer-events: none;
}

form.is-submitting {
  pointer-events: none;
  opacity: 0.85;
}

button.is-loading,
button.is-loading:disabled,
button.is-loading.bg-brand-600,
button.is-loading.bg-brand-600:disabled,
button.is-loading.border-slate-300,
button.is-loading.border-slate-300:disabled,
#form-solicitar:not(:has(#aceite-termos:checked)) #btn-enviar.is-loading {
  pointer-events: none !important;
  transform: none !important;
  cursor: wait !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.65rem !important;
  background: var(--primary-gradient) !important;
  color: #ffffff !important;
  opacity: 1 !important;
  box-shadow: 0 4px 12px rgba(192, 21, 37, 0.2) !important;
}

button.is-loading.border-slate-300 {
  background: #fff !important;
  color: #c01525 !important;
  box-shadow: none !important;
}

.portal-btn-spinner,
.portal-loading-spinner {
  box-sizing: border-box;
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  border: 2px solid rgba(255, 255, 255, 0.35);
  border-top-color: #ffffff;
  border-radius: 50%;
  -webkit-animation: portalSpin 0.7s linear infinite;
  animation: portalSpin 0.7s linear infinite;
}

button.is-loading.border-slate-300 .portal-btn-spinner {
  border-color: rgba(192, 21, 37, 0.25);
  border-top-color: #c01525;
}

.portal-loading {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2147483646;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: rgba(15, 23, 42, 0.55);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.portal-loading-card {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
  gap: 0.9rem;
  padding: 1.45rem 1.9rem;
  border-radius: 1rem;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.28);
}

.portal-loading-spinner {
  width: 2.35rem;
  height: 2.35rem;
  border-width: 3px;
  border-color: rgba(192, 21, 37, 0.2);
  border-top-color: #c01525;
}

.portal-loading-texto {
  margin: 0;
  color: #334155;
  font-size: 0.95rem;
  font-weight: 600;
}

@-webkit-keyframes portalSpin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes portalSpin {
  to {
    transform: rotate(360deg);
  }
}
