.ta-page-actions{
  position:fixed;z-index:60;
  right:max(16px,env(safe-area-inset-right));
  bottom:max(16px,env(safe-area-inset-bottom),var(--ta-actions-boundary-offset,0px));
  display:flex;flex-direction:column;align-items:center;gap:8px;
  max-width:calc(100% - 32px);font-family:inherit;font-size:12px;line-height:1.2;
  isolation:isolate;
}
.ta-page-actions button,.ta-page-actions a{
  box-sizing:border-box;appearance:none;display:inline-flex;flex-direction:column;
  align-items:center;justify-content:center;gap:4px;flex:none;
  width:80px;height:64px;min-width:48px;min-height:48px;
  margin:0;padding:6px 4px;border:1px solid #d4d7d2;border-radius:12px;
  background:#fff;color:#161916;box-shadow:0 3px 12px #00000012;
  font:inherit;font-weight:650;text-decoration:none;white-space:nowrap;
  cursor:pointer;touch-action:manipulation;
}
.ta-page-actions svg{width:22px;height:22px;flex:none}
.ta-page-actions button[hidden]{display:none}
.ta-page-actions button:hover,.ta-page-actions a:hover{background:#f1f3ef;text-decoration:none}
.ta-page-actions .ta-play-launch{background:#161916;color:#fff;border-color:#161916}
.ta-page-actions .ta-play-launch:hover{background:#343a34}
.ta-page-actions :focus-visible{outline:3px solid #19815d;outline-offset:3px}
.ta-page-actions button:disabled{cursor:wait;opacity:.65}
.ta-play-launch[data-resume]{box-shadow:0 0 0 2px #fff,0 0 0 4px #19815d}
.ta-play-launch-status{
  position:absolute;bottom:calc(100% + 10px);right:0;box-sizing:border-box;
  width:max-content;max-width:min(280px,calc(100vw - 32px));padding:10px 12px;
  border:1px solid #d4d7d2;border-radius:10px;background:#fff;color:#343a34;
  font-size:12px;line-height:1.5;box-shadow:0 3px 12px #00000012;
}
.ta-play-launch-status:empty{display:none}
[data-ta-play-open] .ta-page-actions{visibility:hidden}
.ta-page-actions[data-focus-clear]:not(:focus-within){opacity:0;pointer-events:none}
/* Narrow viewports have no desktop gutter. Use compact targets, not a wide
   labelled overlay or a second-tap menu. Keep names available to assistive tech. */
@media(max-width:1399px),(max-height:500px),(pointer:coarse){
  .ta-page-actions{
    gap:8px;right:max(12px,env(safe-area-inset-right));
    bottom:max(12px,env(safe-area-inset-bottom),var(--ta-actions-boundary-offset,0px));
    max-width:calc(100% - 24px);
  }
  .ta-page-actions button,.ta-page-actions a{width:48px;height:48px;padding:0}
  .ta-page-actions button>span,.ta-page-actions a>span{
    position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;
    overflow:hidden;clip-path:inset(50%);white-space:nowrap;
  }
}
@media print{.ta-page-actions{display:none}}
/* Visibility controls focus availability; this utility subtree never transitions.
   Pin the property, so global reduced-motion durations cannot introduce a fade. */
.ta-page-actions,.ta-page-actions *{transition-property:none}
