/* Thin, fixed-size edges replace distorted stretched atlas button skins. */
button.primary,button.secondary,#shell .play-button{
 border:1px solid #808296;border-radius:0;
 background:#444658;color:var(--ink);
 box-shadow:inset 0 1px #66687c;
 padding:9px 20px;min-height:44px;
 font-family:Jersey,monospace;line-height:1.1;
 transition:background .12s,border-color .12s,transform .08s,box-shadow .08s;
}
button.primary{
 background:#b2aecb;color:#272832;border-color:#d6d2e2;
 box-shadow:inset 0 1px #e0dce9;
}
button.primary:hover{background:#c2bed7;border-color:#ebe4f2}
button.secondary:hover,#shell .play-button:hover{background:#535568;border-color:#b2aecb}
button.primary:active,button.secondary:active,#shell .play-button:active{
 transform:translateY(2px);box-shadow:inset 0 1px #27283255;
}
button.primary:focus-visible,button.secondary:focus-visible,#shell .play-button:focus-visible{
 outline:2px solid #ebe4f2;outline-offset:4px;
}
button.primary:disabled,button.secondary:disabled{transform:none;cursor:wait}
#shell #continue-play{padding:11px 24px;font-size:24px;min-width:156px;min-height:48px}
.mapping-actions{display:flex;gap:8px;align-items:center}
#shell .mapping-row{grid-template-columns:minmax(0,1fr) minmax(0,.95fr) auto;gap:12px;padding:12px 0}
#shell .mapping-row output{overflow-wrap:anywhere;line-height:1.25}
#shell .mapping-row button{min-height:40px;font-size:19px;padding:8px 13px;min-width:58px}
#shell .mapping-row .mapping-clear{min-width:40px;width:40px;padding:8px;font-size:23px;color:var(--muted);background:#30313e;border-color:#626478;box-shadow:inset 0 1px #464859}
#shell .mapping-row .mapping-clear:hover{color:var(--ink);background:#444658;border-color:#b2aecb}
#shell .mapping-row.selected{box-shadow:-2px 0 var(--edge);background:#56597233}
@media(max-width:620px){
 #shell .mapping-row{gap:8px;font-size:18px}
 #shell .mapping-row output{font-size:16px}
 #shell .mapping-row button{min-height:44px;min-width:52px;padding:8px 10px}
 #shell .mapping-row .mapping-clear{min-width:44px;width:44px;padding:8px}
 .mapping-actions{gap:6px}
}
@media(prefers-reduced-motion:reduce){button.primary,button.secondary,#shell .play-button{transition:none}}
