[data-ha-widget]{
  --ha-primary:#6a5cff;
  --ha-secondary:#00d1ff;
  --ha-accent:#00ffcc;
  --ha-bg:#0b0b10;
  --ha-surface:#12151c;
  --ha-text:#f5f7fb;
  --ha-muted:#a9afbd;
  --ha-border:#30343d;
  --ha-button-text:#061015;
  --ha-radius:28px;
  --ha-shadow-alpha:.18;
  --ha-font-family:inherit;
  --ha-boxed-max:1180px;
  --ha-vspace:4dvh;
  --ha-vspace-compact:2.7dvh;
  --ha-vspace-micro:1.8dvh;
  --ha-eyebrow-height:3dvh;
  --ha-title-solid:#f5f7fb;
  --ha-title-g1:#6a5cff;
  --ha-title-g2:#00d1ff;
  --ha-title-g3:#00ffcc;
  --ha-title-angle:90deg;
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
  border:1px solid var(--ha-border)!important;
  border-radius:var(--ha-radius)!important;
  background:var(--ha-bg)!important;
  color:var(--ha-text)!important;
  font-family:var(--ha-font-family)!important;
  box-shadow:0 28px 80px rgb(0 0 0 / var(--ha-shadow-alpha))!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:optimizeLegibility!important;
}

[data-ha-widget] *,[data-ha-widget] *::before,[data-ha-widget] *::after{box-sizing:border-box!important}
[data-ha-widget] [hidden]{display:none!important}
[data-ha-widget][data-width="boxed"]{max-width:min(100%,var(--ha-boxed-max))!important}
[data-ha-widget][data-width="full"]{max-width:none!important}

[data-ha-widget] .ha-widget__ambient{
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(560px 260px at 4% 0%,color-mix(in srgb,var(--ha-primary) 28%,transparent),transparent 62%),
    radial-gradient(580px 280px at 96% 100%,color-mix(in srgb,var(--ha-secondary) 22%,transparent),transparent 64%)!important;
  opacity:.95!important;
}

[data-ha-widget] .ha-widget__inner{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  gap:24px!important;
  padding-block:clamp(20px,var(--ha-vspace),44px)!important;
  padding-inline:clamp(20px,6vw,44px)!important;
}

[data-ha-widget] .ha-widget__copy{min-width:0!important}

[data-ha-widget] .ha-widget__brand{
  display:flex!important;
  align-items:center!important;
  min-height:26px!important;
  margin:0 0 16px!important;
}

[data-ha-widget] .ha-widget__brand img{
  display:block!important;
  width:auto!important;
  max-width:min(180px,62%)!important;
  max-height:42px!important;
  object-fit:contain!important;
}

[data-ha-widget] .ha-widget__eyebrow{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:fit-content!important;
  min-height:clamp(22px,var(--ha-eyebrow-height),34px)!important;
  margin:0 0 12px!important;
  padding:clamp(4px,.6dvh,7px) 10px!important;
  border:1px solid color-mix(in srgb,var(--ha-border) 80%,transparent)!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--ha-surface) 72%,transparent)!important;
  color:var(--ha-muted)!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}
[data-ha-widget][data-eyebrow-width="full"] .ha-widget__eyebrow{width:100%!important}
[data-ha-widget][data-eyebrow-width="fit"] .ha-widget__eyebrow{width:fit-content!important;max-width:100%!important}

[data-ha-widget] .ha-widget__signal{
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:var(--ha-secondary)!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--ha-secondary) 10%,transparent),0 0 16px color-mix(in srgb,var(--ha-secondary) 58%,transparent)!important;
}

[data-ha-widget] .ha-widget__title{
  display:block!important;
  margin:0!important;
  max-width:13ch!important;
  color:var(--ha-text)!important;
  font-family:var(--ha-font-family)!important;
  font-size:clamp(30px,9vw,52px)!important;
  font-weight:800!important;
  line-height:1.14!important;
  padding:0 0 .18em!important;
  overflow:visible!important;
  letter-spacing:-.045em!important;
  text-wrap:balance!important;
}

[data-ha-widget] .ha-widget__description{
  margin:14px 0 0!important;
  max-width:56ch!important;
  color:var(--ha-muted)!important;
  font-size:14px!important;
  line-height:1.62!important;
  font-weight:500!important;
}

[data-ha-widget] .ha-widget__meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px 14px!important;
  margin-top:18px!important;
  color:var(--ha-muted)!important;
  opacity:.72!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.11em!important;
}

[data-ha-widget] .ha-widget__meta span{position:relative!important}
[data-ha-widget] .ha-widget__meta span+span::before{
  content:""!important;
  position:absolute!important;
  left:-8px!important;
  top:50%!important;
  width:3px!important;
  height:3px!important;
  border-radius:50%!important;
  background:var(--ha-secondary)!important;
  transform:translateY(-50%)!important;
}

[data-ha-widget] .ha-widget__panel{
  min-width:0!important;
  padding:18px!important;
  border:1px solid var(--ha-border)!important;
  border-radius:max(14px,calc(var(--ha-radius) - 6px))!important;
  background:var(--ha-surface)!important;
}

[data-ha-widget] .ha-widget__form{
  display:grid!important;
  gap:14px!important;
  margin:0!important;
}

[data-ha-widget] .ha-widget__fields{display:grid!important;gap:12px!important}
[data-ha-widget] .ha-field{display:grid!important;gap:7px!important;margin:0!important}

[data-ha-widget] .ha-field__label{
  color:var(--ha-muted)!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

[data-ha-widget] .ha-field__input{
  width:100%!important;
  height:48px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid var(--ha-border)!important;
  border-radius:max(9px,calc(var(--ha-radius) / 2))!important;
  outline:0!important;
  background:var(--ha-bg)!important;
  color:var(--ha-text)!important;
  font-family:var(--ha-font-family)!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1!important;
  box-shadow:none!important;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease!important;
}

[data-ha-widget] .ha-field__input:focus{
  border-color:var(--ha-secondary)!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--ha-secondary) 12%,transparent)!important;
}

[data-ha-widget] .ha-field__input:disabled{opacity:.88!important;-webkit-text-fill-color:var(--ha-text)!important}

[data-ha-widget] .ha-check{
  display:grid!important;
  grid-template-columns:18px 1fr!important;
  gap:10px!important;
  align-items:start!important;
  margin:0!important;
  cursor:pointer!important;
}

[data-ha-widget] .ha-check input{position:absolute!important;opacity:0!important;pointer-events:none!important}
[data-ha-widget] .ha-check__box{
  position:relative!important;
  display:block!important;
  width:18px!important;
  height:18px!important;
  margin-top:1px!important;
  border:1px solid var(--ha-border)!important;
  border-radius:6px!important;
  background:var(--ha-bg)!important;
}

[data-ha-widget] .ha-check input:focus-visible+.ha-check__box{box-shadow:0 0 0 4px color-mix(in srgb,var(--ha-secondary) 14%,transparent)!important}
[data-ha-widget] .ha-check input:checked+.ha-check__box{border-color:var(--ha-secondary)!important;background:linear-gradient(135deg,var(--ha-primary),var(--ha-secondary))!important}
[data-ha-widget] .ha-check input:checked+.ha-check__box::after{content:""!important;position:absolute!important;left:5px!important;top:2px!important;width:5px!important;height:9px!important;border-right:2px solid var(--ha-button-text)!important;border-bottom:2px solid var(--ha-button-text)!important;transform:rotate(45deg)!important}
[data-ha-widget] .ha-check__text{color:var(--ha-muted)!important;font-size:11px!important;line-height:1.45!important}

[data-ha-widget] .ha-widget__submit{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:max(9px,calc(var(--ha-radius) / 2))!important;
  background:linear-gradient(90deg,var(--ha-primary),var(--ha-secondary))!important;
  color:var(--ha-button-text)!important;
  font-family:var(--ha-font-family)!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
  cursor:pointer!important;
  box-shadow:0 14px 30px color-mix(in srgb,var(--ha-secondary) 14%,transparent)!important;
  transition:transform .2s ease,filter .2s ease!important;
}

[data-ha-widget] .ha-widget__submit:hover{transform:translateY(-1px)!important;filter:saturate(1.08)!important}
[data-ha-widget] .ha-widget__submit:focus-visible{outline:2px solid var(--ha-accent)!important;outline-offset:3px!important}
[data-ha-widget] .ha-widget__submit:disabled{cursor:wait!important;opacity:.65!important}
[data-ha-widget] .ha-widget__submit.is-loading .ha-widget__arrow{animation:ha-pulse .8s ease-in-out infinite alternate!important}
@keyframes ha-pulse{to{transform:translateX(5px)}}

[data-ha-widget] .ha-widget__privacy{margin:0!important;color:var(--ha-muted)!important;opacity:.72!important;font-size:9.5px!important;line-height:1.5!important}
[data-ha-widget] .ha-widget__privacy a{color:var(--ha-text)!important;text-decoration:underline!important;text-underline-offset:2px!important}
[data-ha-widget] .ha-widget__trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Result state: hidden by default. It only becomes visible after an explicit JS state transition. */
[data-ha-widget] .ha-widget__status{
  display:none!important;
  grid-template-columns:8px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
  margin-top:2px!important;
  padding:10px 12px!important;
  border:1px solid color-mix(in srgb,var(--ha-border) 78%,transparent)!important;
  border-radius:max(10px,calc(var(--ha-radius) / 2))!important;
  background:color-mix(in srgb,var(--ha-bg) 68%,var(--ha-surface))!important;
  color:var(--ha-text)!important;
}
[data-ha-widget] .ha-widget__status[hidden]{display:none!important}
[data-ha-widget][data-state="pending"] .ha-widget__status,
[data-ha-widget][data-state="active"] .ha-widget__status,
[data-ha-widget][data-state="error"] .ha-widget__status{display:grid!important}
[data-ha-widget][data-state="pending"] .ha-widget__form,
[data-ha-widget][data-state="active"] .ha-widget__form{display:none!important}
[data-ha-widget] .ha-widget__status-mark{
  display:block!important;
  width:7px!important;
  height:7px!important;
  margin-top:5px!important;
  border-radius:50%!important;
  background:var(--ha-secondary)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--ha-secondary) 10%,transparent),0 0 12px color-mix(in srgb,var(--ha-secondary) 34%,transparent)!important;
}
[data-ha-widget][data-state="active"] .ha-widget__status-mark{background:var(--ha-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--ha-accent) 10%,transparent)!important}
[data-ha-widget] .ha-widget__status strong{display:block!important;margin:0 0 2px!important;font-size:12.5px!important;line-height:1.3!important;font-weight:750!important;letter-spacing:-.01em!important}
[data-ha-widget] .ha-widget__status p{margin:0!important;color:var(--ha-muted)!important;font-size:10.5px!important;line-height:1.45!important}
[data-ha-widget][data-state="error"] .ha-widget__status{border-color:color-mix(in srgb,#ff7188 42%,var(--ha-border))!important}
[data-ha-widget][data-state="error"] .ha-widget__status-mark{background:#ff7188!important;box-shadow:0 0 0 3px rgb(255 113 136 / .09)!important}
[data-ha-widget][data-state="error"] .ha-widget__panel{border-color:color-mix(in srgb,#ff7188 58%,var(--ha-border))!important}

/* Title treatment is independent from presets. Every preset can be solid or gradient. */
[data-ha-widget][data-title-fill="solid"] .ha-widget__title{
  color:var(--ha-title-solid)!important;
  background:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-fill-color:currentColor!important;
}
[data-ha-widget][data-title-fill="gradient"] .ha-widget__title{
  color:transparent!important;
  background:linear-gradient(var(--ha-title-angle),var(--ha-title-g1),var(--ha-title-g2),var(--ha-title-g3))!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
}


/* alpha.19 preset title descender guard: every Appearance preset shares the same safe line box. */
[data-ha-widget][data-style="editorial"] .ha-widget__title,
[data-ha-widget][data-style="minimal"] .ha-widget__title,
[data-ha-widget][data-style="glass"] .ha-widget__title,
[data-ha-widget][data-style="soft"] .ha-widget__title,
[data-ha-widget][data-style="bold"] .ha-widget__title,
[data-ha-widget][data-style="compact"] .ha-widget__title,
[data-ha-widget][data-style="micro"] .ha-widget__title,
[data-ha-widget][data-style="custom"] .ha-widget__title{
  min-height:1.28em!important;
  padding-bottom:.18em!important;
  overflow:visible!important;
}

/* Presets describe layout/behavior only. Colors and title treatment stay independent. */

[data-ha-widget][data-style="minimal"]{
  box-shadow:none!important;
}
[data-ha-widget][data-style="minimal"] .ha-widget__ambient{display:none!important}
[data-ha-widget][data-style="minimal"] .ha-widget__panel{background:transparent!important}
[data-ha-widget][data-style="minimal"] .ha-widget__inner{padding-block:clamp(16px,var(--ha-vspace),34px)!important;padding-inline:clamp(18px,5vw,34px)!important}

[data-ha-widget][data-style="glass"] .ha-widget__panel{
  background:color-mix(in srgb,var(--ha-surface) 80%,transparent)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
[data-ha-widget][data-style="glass"] .ha-widget__ambient{opacity:1!important}

[data-ha-widget][data-style="soft"] .ha-widget__panel{box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ha-text) 6%,transparent)!important}
[data-ha-widget][data-style="soft"] .ha-widget__submit{filter:saturate(.85)!important}

[data-ha-widget][data-style="bold"] .ha-widget__title{font-size:clamp(34px,10vw,62px)!important;line-height:1.10!important;padding-bottom:.18em!important;max-width:11ch!important;overflow:visible!important}
[data-ha-widget][data-style="bold"] .ha-widget__submit{min-height:56px!important;font-size:14px!important}

[data-ha-widget][data-style="compact"] .ha-widget__inner{padding-block:clamp(12px,var(--ha-vspace-compact),28px)!important;padding-inline:clamp(16px,4vw,28px)!important;gap:16px!important}
[data-ha-widget][data-style="compact"] .ha-widget__title{font-size:clamp(26px,7vw,40px)!important;line-height:1.14!important;padding-bottom:.18em!important;max-width:16ch!important;overflow:visible!important}
[data-ha-widget][data-style="compact"] .ha-widget__description{margin-top:9px!important;font-size:13px!important}
[data-ha-widget][data-style="compact"] .ha-widget__meta{margin-top:12px!important}
[data-ha-widget][data-style="compact"] .ha-widget__panel{padding:14px!important}

[data-ha-widget][data-style="micro"] .ha-widget__inner{padding-block:clamp(9px,var(--ha-vspace-micro),18px)!important;padding-inline:clamp(12px,3vw,20px)!important;gap:10px!important}
[data-ha-widget][data-style="micro"] .ha-widget__brand{margin-bottom:8px!important;min-height:18px!important}
[data-ha-widget][data-style="micro"] .ha-widget__brand img{max-height:28px!important}
[data-ha-widget][data-style="micro"] .ha-widget__eyebrow{margin-bottom:7px!important;min-height:clamp(20px,var(--ha-eyebrow-height),28px)!important;padding:3px 8px!important;font-size:8px!important}
[data-ha-widget][data-style="micro"] .ha-widget__title{font-size:clamp(21px,6vw,30px)!important;line-height:1.14!important;padding-bottom:.18em!important;max-width:22ch!important;overflow:visible!important}
[data-ha-widget][data-style="micro"] .ha-widget__description{margin-top:6px!important;font-size:11.5px!important;line-height:1.42!important;max-width:62ch!important}
[data-ha-widget][data-style="micro"] .ha-widget__meta{margin-top:7px!important;gap:5px 12px!important;font-size:8px!important}
[data-ha-widget][data-style="micro"] .ha-widget__panel{padding:9px!important;border-radius:max(10px,calc(var(--ha-radius) - 10px))!important}
[data-ha-widget][data-style="micro"] .ha-widget__form{gap:8px!important}
[data-ha-widget][data-style="micro"] .ha-widget__fields{gap:8px!important}
[data-ha-widget][data-style="micro"] .ha-field{gap:4px!important}
[data-ha-widget][data-style="micro"] .ha-field__label{font-size:8px!important}
[data-ha-widget][data-style="micro"] .ha-field__input{height:38px!important;padding:0 11px!important;font-size:12px!important}
[data-ha-widget][data-style="micro"] .ha-widget__submit{min-height:40px!important;padding:0 12px!important;font-size:11px!important}
[data-ha-widget][data-style="micro"] .ha-check__text{font-size:9.5px!important}
[data-ha-widget][data-style="micro"] .ha-widget__privacy{font-size:8px!important;line-height:1.35!important}

@media(min-width:760px){
  [data-ha-widget] .ha-widget__inner{grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr)!important;align-items:center!important;gap:clamp(34px,5vw,72px)!important}
  [data-ha-widget] .ha-widget__fields{grid-template-columns:.8fr 1.2fr!important}
  [data-ha-widget] .ha-widget__panel{padding:22px!important}
  [data-ha-widget] .ha-widget__title{max-width:12ch!important;font-size:clamp(38px,5vw,58px)!important}
  [data-ha-widget][data-style="bold"] .ha-widget__title{font-size:clamp(44px,5.6vw,66px)!important;max-width:11ch!important}
  [data-ha-widget][data-style="compact"] .ha-widget__inner{grid-template-columns:minmax(0,1fr) minmax(360px,1fr)!important;gap:24px!important}
  [data-ha-widget][data-style="compact"] .ha-widget__title{font-size:clamp(28px,3.5vw,42px)!important;max-width:16ch!important}
  [data-ha-widget][data-style="compact"] .ha-widget__panel{padding:14px!important}
  [data-ha-widget][data-style="micro"] .ha-widget__inner{grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr)!important;gap:18px!important}
  [data-ha-widget][data-style="micro"] .ha-widget__title{max-width:24ch!important;font-size:clamp(22px,2.8vw,32px)!important}
  [data-ha-widget][data-style="micro"] .ha-widget__panel{padding:9px!important}
  [data-ha-widget][data-style="micro"] .ha-widget__fields{grid-template-columns:.72fr 1.28fr!important}
}

@media(max-width:420px){
  [data-ha-widget] .ha-widget__inner{padding-inline:14px!important}
  [data-ha-widget][data-style="micro"] .ha-widget__inner{padding-inline:10px!important}
  [data-ha-widget][data-style="micro"] .ha-widget__title{font-size:clamp(19px,6vw,24px)!important}
}


@media(prefers-reduced-motion:reduce){
  [data-ha-widget] *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}

/* CTA controls are renderer-level settings and override preset defaults. */
[data-ha-widget][data-cta-width="auto"] .ha-widget__submit{width:auto!important;max-width:100%!important}
[data-ha-widget][data-cta-width="full"] .ha-widget__submit{width:100%!important;justify-self:stretch!important}
[data-ha-widget][data-cta-align="left"] .ha-widget__submit{justify-self:start!important}
[data-ha-widget][data-cta-align="center"] .ha-widget__submit{justify-self:center!important}
[data-ha-widget][data-cta-align="right"] .ha-widget__submit{justify-self:end!important}
[data-ha-widget][data-cta-width="full"] .ha-widget__submit{justify-self:stretch!important}

[data-ha-widget][data-cta-size="small"] .ha-widget__submit{min-height:42px!important;padding:0 13px!important;font-size:11px!important;gap:20px!important}
[data-ha-widget][data-cta-size="medium"] .ha-widget__submit{min-height:48px!important;padding:0 15px!important;font-size:12.5px!important;gap:28px!important}
[data-ha-widget][data-cta-size="large"] .ha-widget__submit{min-height:56px!important;padding:0 18px!important;font-size:14px!important;gap:34px!important}

@media(max-width:420px){
  [data-ha-widget][data-cta-size="small"] .ha-widget__submit{min-height:44px!important}
  [data-ha-widget][data-cta-width="auto"] .ha-widget__submit{max-width:100%!important}
}
