/* iPad Safari. A pull-down on the board must not reload the app over store Wi-Fi, controls must
   not zoom on double tap or open the long-press callout (that cancels the hold gesture), and
   full-height screens follow the visible height while the address bar is shown. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{overscroll-behavior-y:none}
button,a,label,summary,select,[data-action]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button,[data-action]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.welcome,.self-page{min-height:100dvh}
.boot{height:100dvh}

/* Single-page routes (spa.js): one of the floor and accounting is shown at a time. */
body.route-accounting #app{display:none!important}

/* An operation waiting to be resent (net.js outbox). Above the board, clear of the home bar. */
#outbox{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:10px 12px 10px 16px;border-radius:12px;background:#7a3b10;color:#fff;font-weight:700;box-shadow:0 8px 24px #0004}
#outbox[hidden]{display:none}
#outbox button{min-height:44px;padding:0 14px;border:1px solid #fff8;border-radius:9px;background:#fff;color:#5a2a08;font:inherit;font-weight:700;white-space:nowrap}
#outbox button[data-outbox="cancel"]{background:transparent;color:#fff}
