:root{
  --municipal-button-primary:#003e70;
  --municipal-button-primary-hover:#07578f;
  --municipal-button-primary-active:#002f57;
  --municipal-button-focus:rgba(8,122,199,.24);
  --municipal-button-secondary-hover:#f2f7fa;
  --municipal-button-secondary-border:#b8cbd8;
}

/* Shared official-primary actions. Sizing, radius, and typography remain local. */
:root:root:root:root :is(
  .home-standard-button,
  .updates-view-all,
  .services-all,
  .account-link-callout>a,
  .citizen-care-action,
  .updates-button,
  .official-update-search button[type="submit"],
  .contact-button,
  .tourism-button,
  .service-primary-link,
  .service-form-card button[type="submit"],
  .toolbar-primary,
  .citizen-auth-button:not(.citizen-google-button),
  .lgu-portal-link,
  .portal-button
){
  border-color:var(--municipal-button-primary)!important;
  background-color:var(--municipal-button-primary)!important;
  background-image:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
  transition:
    background-color 160ms ease-out,
    border-color 160ms ease-out,
    color 160ms ease-out,
    box-shadow 160ms ease-out!important;
}

/* Site-wide interaction cleanup: preserve geometry and remove colored rings. */
html body :is(button,[type="button"],[type="submit"],[type="reset"],a):is(:hover,:focus,:focus-visible,:active){
  outline:0!important;
  outline-offset:0!important;
  box-shadow:none!important;
}
html body :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea):is(:hover,:focus,:focus-visible,:active){
  border-color:#cbd5df!important;
  outline:0!important;
  outline-offset:0!important;
  box-shadow:none!important;
}
:root:root:root:root :is(
  .home-standard-button,
  .updates-view-all,
  .services-all,
  .account-link-callout>a,
  .citizen-care-action,
  .updates-button,
  .official-update-search button[type="submit"],
  .contact-button,
  .tourism-button,
  .service-primary-link,
  .service-form-card button[type="submit"],
  .toolbar-primary,
  .citizen-auth-button:not(.citizen-google-button),
  .lgu-portal-link,
  .portal-button
):hover{
  border-color:var(--municipal-button-primary-hover)!important;
  background-color:var(--municipal-button-primary-hover)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
:root:root:root:root :is(
  .home-standard-button,
  .updates-view-all,
  .services-all,
  .account-link-callout>a,
  .citizen-care-action,
  .updates-button,
  .official-update-search button[type="submit"],
  .contact-button,
  .tourism-button,
  .service-primary-link,
  .service-form-card button[type="submit"],
  .toolbar-primary,
  .citizen-auth-button:not(.citizen-google-button),
  .lgu-portal-link,
  .portal-button
):active{
  border-color:var(--municipal-button-primary-active)!important;
  background-color:var(--municipal-button-primary-active)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
:root:root:root:root :is(
  .home-standard-button,
  .updates-view-all,
  .services-all,
  .account-link-callout>a,
  .citizen-care-action,
  .updates-button,
  .official-update-search button[type="submit"],
  .contact-button,
  .tourism-button,
  .service-primary-link,
  .service-form-card button[type="submit"],
  .toolbar-primary,
  .citizen-auth-button:not(.citizen-google-button),
  .lgu-portal-link,
  .portal-button
):focus-visible{
  border-color:var(--municipal-button-primary-hover)!important;
  background-color:var(--municipal-button-primary)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  outline:2px solid #fff!important;
  outline-offset:2px!important;
  box-shadow:0 0 0 4px var(--municipal-button-focus)!important;
  transform:none!important;
}
:root:root:root:root :is(
  .home-standard-button,
  .updates-view-all,
  .services-all,
  .account-link-callout>a,
  .citizen-care-action,
  .updates-button,
  .official-update-search button[type="submit"],
  .contact-button,
  .tourism-button,
  .service-primary-link,
  .service-form-card button[type="submit"],
  .toolbar-primary,
  .citizen-auth-button:not(.citizen-google-button),
  .lgu-portal-link,
  .portal-button
):is(:disabled,[disabled],[aria-disabled="true"]){
  opacity:.58!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
  transform:none!important;
}
:root:root:root:root :is(
  .home-standard-button,
  .updates-view-all,
  .services-all,
  .account-link-callout>a,
  .citizen-care-action,
  .updates-button,
  .official-update-search button[type="submit"],
  .contact-button,
  .tourism-button,
  .service-primary-link,
  .service-form-card button[type="submit"],
  .toolbar-primary,
  .citizen-auth-button:not(.citizen-google-button),
  .lgu-portal-link,
  .portal-button
) :is(span,strong,small,svg,path,use){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Static layout transform: centers the service CTA without hover movement. */
:root:root:root:root .municipal-homepage .service-dock .services-all,
:root:root:root:root .municipal-homepage .service-dock .services-all:is(:hover,:focus,:focus-visible,:active){
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
}

/* Secondary actions retain their neutral hierarchy. */
:root:root:root:root :is(
  .calendar-full-link,
  .citizen-google-button,
  .toolbar-actions>a:not(.toolbar-primary),
  .tourism-feature-card .tourism-button,
  .tourism-hotlines .tourism-button
){
  background-color:#fff!important;
  background-image:none!important;
  color:var(--municipal-button-primary)!important;
  -webkit-text-fill-color:var(--municipal-button-primary)!important;
  border-color:var(--municipal-button-secondary-border)!important;
  box-shadow:none!important;
  transform:none!important;
  transition:
    background-color 160ms ease-out,
    border-color 160ms ease-out,
    color 160ms ease-out,
    box-shadow 160ms ease-out!important;
}
:root:root:root:root :is(
  .calendar-full-link,
  .citizen-google-button,
  .toolbar-actions>a:not(.toolbar-primary),
  .tourism-feature-card .tourism-button,
  .tourism-hotlines .tourism-button
):hover{
  background-color:var(--municipal-button-secondary-hover)!important;
  color:var(--municipal-button-primary)!important;
  -webkit-text-fill-color:var(--municipal-button-primary)!important;
  border-color:#8fadc1!important;
  box-shadow:none!important;
  transform:none!important;
}
:root:root:root:root :is(
  .calendar-full-link,
  .citizen-google-button,
  .toolbar-actions>a:not(.toolbar-primary),
  .tourism-feature-card .tourism-button,
  .tourism-hotlines .tourism-button
):focus-visible{
  outline:2px solid var(--municipal-button-primary)!important;
  outline-offset:2px!important;
  box-shadow:0 0 0 4px var(--municipal-button-focus)!important;
}

@media(prefers-reduced-motion:reduce){
  :root:root:root:root :is(
    .home-standard-button,
    .services-all,
    .account-link-callout>a,
    .citizen-care-action,
    .updates-button,
    .official-update-search button[type="submit"],
    .contact-button,
    .tourism-button,
    .service-primary-link,
    .service-form-card button[type="submit"],
    .toolbar-primary,
    .citizen-auth-button,
    .lgu-portal-link,
    .portal-button,
    .updates-view-all,
    .calendar-full-link
  ){
    transition:none!important;
  }
}

/* Final interaction override: no colored border glow on pointer or keyboard interaction. */
html body :is(button,[type="button"],[type="submit"],[type="reset"],a):is(:hover,:focus,:focus-visible,:active){outline:0!important;outline-offset:0!important;box-shadow:none!important}
html body :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea):is(:hover,:focus,:focus-visible,:active){border-color:#cbd5df!important;outline:0!important;outline-offset:0!important;box-shadow:none!important}
