/* Feather art is an inner decoration, never a feather-shaped hit target.
   Container geometry and safe-area placement remain in mobile-style.css.
   The full ancestor selector deliberately overrides older scene-wide rules;
   the art must never silently shrink a 64/72px hit area back to 49/55px. */
#stage #sceneViewport #touch button.feather-control {
 position:relative; box-sizing:border-box; width:var(--bert-touch-size,64px); height:var(--bert-touch-size,64px);
 min-width:var(--bert-touch-size,64px); min-height:var(--bert-touch-size,64px); padding:0 3px 3px;
 display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0;
 border:1px solid rgba(226,237,214,.36); border-radius:42% 47% 39% 45%;
 background:radial-gradient(ellipse at 45% 36%,rgba(55,89,78,.62),rgba(19,46,39,.52) 66%,rgba(18,44,38,.24));
 box-shadow:0 2px 7px rgba(9,32,26,.19),inset 0 1px 0 rgba(246,241,204,.13);
 color:#fff6dc; touch-action:none; user-select:none; -webkit-user-select:none; -webkit-touch-callout:none;
 -webkit-tap-highlight-color:transparent; overflow:visible;
 transition:background-color .12s ease,border-color .12s ease,opacity .14s ease,box-shadow .12s ease;
 transform:none; backdrop-filter:none; -webkit-backdrop-filter:none;
}
#stage #sceneViewport #touch button.feather-control::before {content:none;}
#stage #sceneViewport #touch button.feather-control[data-key="jump"] {
 width:var(--bert-jump-size,72px); height:var(--bert-jump-size,72px);
 min-width:var(--bert-jump-size,72px); min-height:var(--bert-jump-size,72px);
 border-radius:47% 44% 42% 47%;
}
#stage #sceneViewport #touch button.feather-control .feather-icon {display:block;flex:1 1 auto;width:82%;height:calc(100% - 19px);min-height:0;overflow:visible;pointer-events:none;}
#stage #sceneViewport #touch button.feather-control .feather-label {display:block;flex:0 0 17px;font-family:inherit;font-size:14px;font-weight:600;line-height:17px;letter-spacing:0;color:#fff6dc;background:rgba(12,35,28,.74);border-radius:6px;padding:0 3px;text-shadow:0 1px 2px rgba(8,24,20,.48);pointer-events:none;white-space:nowrap;}
#stage #sceneViewport #touch .feather-vane {fill:#eedcb1;stroke:rgba(255,245,216,.36);stroke-width:.8;}
#stage #sceneViewport #touch .feather-back {fill:#a9cfc1;} #stage #sceneViewport #touch .feather-mid {fill:#d4dfba;}
#stage #sceneViewport #touch .feather-shaft {fill:none;stroke:#fff6db;stroke-width:2.3;stroke-linecap:round;}
#stage #sceneViewport #touch .feather-barbs {fill:none;stroke:#648979;stroke-width:1.3;stroke-linecap:round;}
#stage #sceneViewport #touch .feather-tail {fill:none;stroke:#eedcb1;stroke-width:1.7;stroke-linecap:round;opacity:.85;}
#stage #sceneViewport #touch .feather-spark {fill:#fff3c9;stroke:#fff8df;stroke-width:1;}
#stage #sceneViewport #touch .feather-glint {fill:none;stroke:#fff3c9;stroke-width:1.6;stroke-linecap:round;}
#stage #sceneViewport #touch button.feather-control.is-held {transform:none;background-color:rgba(113,157,126,.7);border-color:#eee3b7;box-shadow:0 0 0 2px rgba(187,221,185,.15),inset 0 1px 8px rgba(213,237,199,.2);}
#stage #sceneViewport #touch button.feather-control.is-held .feather-icon {transform:translateY(-1px) rotate(-3deg);}
#stage #sceneViewport #touch button.feather-control[data-key="left"].is-held .feather-icon {transform:translateY(-1px) rotate(3deg);}
#stage #sceneViewport #touch button.feather-control:focus-visible {outline:2px solid #fff4cf;outline-offset:3px;}
/* Keep the action slot in flow so the jump button never moves. */
#stage #sceneViewport #touch button.feather-control[data-key="act"] {visibility:hidden;opacity:0;pointer-events:none;}
#stage #sceneViewport #touch button.feather-control[data-key="act"].is-context-visible {visibility:visible;opacity:1;}
#stage #sceneViewport #touch button.feather-control[data-key="act"].is-ready {pointer-events:auto;}
#stage #sceneViewport #touch button.feather-control[data-key="act"].is-retiring {opacity:.38;}
#stage #sceneViewport #touch button.feather-control[data-key="act"].is-ready .feather-spark {filter:drop-shadow(0 0 2px rgba(255,242,190,.42));}
@media (prefers-reduced-motion:reduce) {#stage #sceneViewport #touch button.feather-control {transition:none;}#stage #sceneViewport #touch button.feather-control.is-held .feather-icon {transform:none;}}
