/* GOLD CITY v4.1 — instant touch feedback, pending states, safe reduced motion. */
#gold-city-2d button,
#gold-city-2d [role="button"]{
  transition:filter .10s ease,box-shadow .10s ease,background-color .10s ease;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
#gold-city-2d button:active:not(:disabled),
#gold-city-2d button[data-ge-pressed]:not(:disabled){
  filter:brightness(1.18) saturate(1.14);
  box-shadow:inset 0 0 0 1px #f6d6a58a;
}
#gold-city-2d .city41-pending,
#gold-city-2d button[aria-busy="true"]{
  position:relative;
  opacity:.88;
  cursor:progress;
}
#gold-city-2d .city41-pending::after{
  content:"";display:inline-block;vertical-align:middle;
  width:13px;height:13px;margin-left:7px;
  border-radius:50%;
  border:2px solid currentColor;border-right-color:transparent;
  animation:city41-spin .65s linear infinite;
}
#gold-city-2d .city2d-main{-webkit-overflow-scrolling:touch}
#gold-city-2d .city40-empire button,
#gold-city-2d .city31-sheet button{min-height:40px}
#gold-city-2d .city40-empire [data-city-scroll-key],
#gold-city-2d .city2d-zone[data-city-scroll-key]{scroll-margin-block:16px}
@keyframes city41-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){
  #gold-city-2d button{transition:none}
  #gold-city-2d .city41-pending::after{animation:none;border-right-color:currentColor}
}
/* App-wide press acknowledgement; never changes navigation, APIs or money. */
button[data-ge-pressed]:not(:disabled),
a[href][data-ge-pressed],
[role="button"][data-ge-pressed]{
  filter:brightness(1.14);
}
