/* Single floating studio toggle, anchored to the DAO mobile viewport. */
.dao-studio-launcher {
  position:absolute; inset:0; z-index:180; display:none; pointer-events:none;
}
body[data-page="account"] .dao-studio-launcher {display:block}
.dao-studio-layer {
  position:absolute; inset:0; z-index:0; overflow:hidden; pointer-events:auto;
  background:var(--bg,#090f18);
}
.dao-studio-layer[hidden] {display:none!important}
.dao-studio-layer iframe {
  display:block; width:100%; height:100%; border:0; background:var(--bg,#090f18);
}
.dao-studio-fab {
  position:absolute; z-index:1;
  right:max(18px,var(--safe-right,0px));
  bottom:calc(var(--nav-total,90px) + 18px);
  display:grid; place-items:center; width:56px; height:56px; padding:0;
  border:1px solid var(--float-edge,rgba(255,255,255,.6));
  border-radius:50%; color:var(--text,#172032);
  background:var(--float-solid,rgba(250,251,253,.95));
  box-shadow:inset 0 1px 0 var(--float-shine,rgba(255,255,255,.8)),
             0 8px 22px -6px var(--float-shadow,rgba(25,39,53,.22));
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  cursor:pointer;pointer-events:auto;touch-action:manipulation;
  user-select:none;-webkit-user-select:none;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.dao-studio-brain,.dao-studio-close {
  grid-area:1/1;display:block;pointer-events:none;
  transition:opacity .12s ease,transform .16s ease;
}
.dao-studio-brain {width:29px;height:29px;overflow:visible}
.dao-studio-close {opacity:0;transform:scale(.8) rotate(-45deg)}
.dao-studio-launcher[data-open="true"] .dao-studio-brain {opacity:0;transform:scale(.9)}
.dao-studio-launcher[data-open="true"] .dao-studio-close {opacity:1;transform:none}
/* Show the tap pulse while /gen opens immediately; the button can close at any time. */
.dao-studio-launcher.is-opening .dao-studio-brain {opacity:1;transform:none}
.dao-studio-launcher.is-opening .dao-studio-close {opacity:0;transform:scale(.8) rotate(-45deg)}
.dao-studio-current {opacity:0;stroke-dasharray:12 38;stroke-dashoffset:0}
.dao-studio-launcher.is-brain-flow .dao-studio-rail {opacity:.24}
.dao-studio-launcher.is-brain-flow .dao-studio-current {
  animation:dao-studio-current var(--studio-flow-duration,1100ms) linear var(--studio-flow-count,2) both;
  animation-delay:calc(var(--flow-index) * var(--studio-flow-stagger,60ms));
}
@keyframes dao-studio-current {
  0% {stroke-dashoffset:0;opacity:0}
  7%,92% {opacity:1}
  100% {stroke-dashoffset:-50;opacity:0}
}
.dao-studio-fab:active {transform:scale(.92)}
.dao-studio-fab:focus-visible {outline:2px solid var(--accent,#659bd0);outline-offset:3px}
@media(hover:hover) and (pointer:fine) {
  .dao-studio-fab:hover {transform:translateY(-2px)}
}
@media(max-height:520px) and (orientation:landscape) {
  .dao-studio-fab {width:48px;height:48px;bottom:calc(var(--nav-total,66px) + 12px)}
  .dao-studio-brain {width:26px;height:26px}
}
@media(prefers-reduced-motion:reduce) {
  .dao-studio-fab,.dao-studio-brain,.dao-studio-close {transition:none}
  .dao-studio-current {display:none!important;animation:none!important}
  .dao-studio-launcher.is-brain-flow .dao-studio-rail {opacity:1}
}

