.sky-toast {
  position:fixed; left:50%; top:45%; z-index:30; transform:translate(-50%,-40%) scale(.85);
  text-align:center; color:#fffbe8; opacity:0; pointer-events:none;
  text-shadow:0 4px 22px rgba(20,23,22,.65); transition:opacity .3s, transform .45s;
}
.sky-toast.on { opacity:1; transform:translate(-50%,-50%) scale(1); }
.sky-toast small { display:block; margin-bottom:7px; color:#ffe28a; font:800 10px/1 Inter,system-ui; letter-spacing:.24em; text-transform:uppercase; }
.sky-toast b { font:500 34px/1.05 Georgia,serif; }
.sky-vignette { position:fixed; inset:0; z-index:9; pointer-events:none; opacity:0; background:radial-gradient(circle,transparent 42%,rgba(255,214,121,.18) 100%); transition:opacity .15s; }
.sky-vignette.flash { opacity:1; }
.sky-catapult-touch { display:none; }
html.touch .sky-catapult-touch {
  position:fixed;
  right:var(--touch-action-right, 24px); top:var(--touch-action-top, 60%); bottom:auto;
  z-index:17; display:flex; width:var(--touch-action-size, 78px); height:var(--touch-action-size, 78px);
  box-sizing:border-box;
  padding:0;
  align-items:center; justify-content:center; border:1px solid rgba(255,237,166,.55); border-radius:50%;
  color:#fff4ca; background:radial-gradient(circle at 35% 30%,rgba(255,226,120,.35),rgba(22,58,57,.75));
  box-shadow:0 8px 24px rgba(9,28,30,.35); font:800 13px/1 Inter,system-ui; letter-spacing:.02em;
  text-transform:uppercase; touch-action:none; user-select:none;
}
html.touch.driving .sky-catapult-touch { display:none; }
@media (max-width:700px) { .sky-toast b{font-size:27px} }
