/* Геймпад Poké Hub (H6, README §67): рамка фокуса, значки кнопок вместо подсказок клавиш, уведомление о подключении (настройки — экран H4).
   Скрипт — shared/ui/gamepad.js (html.pad — последний ввод с геймпада, html[data-pad-type] — xbox | ps | gen).
   Значки — листы assets/ui/s1/pad/<тип>.png (scripts/art/pad.mjs): высота 11 px, в интерфейсе ровно ×2; ячейка — --gx (сдвиг) и --gw (ширина) ниже. */
:root { --pad-ink:var(--ink, #2a2440); --pad-ink-2:var(--ink-2, #5a5478); --pad-paper:var(--paper, #fff); --pad-paper-2:var(--paper-2, #f3f1fa); --pad-line:var(--line, #e4e0f0);
  --pad-hi:var(--yellow, #ffcc33); --pad-ok:var(--green, #36c96a); --pad-acc:var(--blue, #3a8cff); --pad-glow:#1a12464d;
  --pad-shadow:var(--shadow, 0 10px 28px #1a124638, 0 2px 6px #1a12461f); --pad-k:2;
  --pad-sheet:url(../../assets/ui/s1/pad/xbox.png); }
html[data-pad-type="ps"] { --pad-sheet:url(../../assets/ui/s1/pad/ps.png); }
html[data-pad-type="gen"] { --pad-sheet:url(../../assets/ui/s1/pad/gen.png); }
@keyframes padHit { 40% { scale:.96 } }
@keyframes padBump { 40% { translate:var(--bx, 0) var(--by, 0) } }
@keyframes padIn { from { opacity:0; transform:translate(-50%, 16px) } }

/* ---------- значок кнопки: свой элемент (.pad-g) и подсказка клавиши игры при геймпаде ([data-g]) ---------- */
.pad-g { --gx:0; --gw:11; display:inline-block; flex:none; width:calc(var(--gw) * var(--pad-k) * 1px); height:calc(11px * var(--pad-k)); vertical-align:middle;
  background:var(--pad-sheet) no-repeat; background-size:calc(235px * var(--pad-k)) calc(11px * var(--pad-k)); background-position:calc(var(--gx) * var(--pad-k) * -1px) 0; image-rendering:pixelated; }
html.pad [data-g]:not(.pad-g) { display:inline-block !important; flex:none; width:calc(var(--gw, 11) * var(--pad-k) * 1px) !important; min-width:0 !important; height:calc(11px * var(--pad-k)) !important;
  padding:0 !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; vertical-align:middle; font-size:0 !important; line-height:0 !important; color:transparent !important; text-shadow:none !important;
  background:var(--pad-sheet) no-repeat !important; background-size:calc(235px * var(--pad-k)) calc(11px * var(--pad-k)) !important; background-position:calc(var(--gx, 0) * var(--pad-k) * -1px) 0 !important; image-rendering:pixelated; }
html.pad .pad-hide { display:none !important; }
[data-g="b"] { --gx:12; } [data-g="x"] { --gx:24; } [data-g="y"] { --gx:36; }
[data-g="lb"] { --gx:48; --gw:13; } [data-g="rb"] { --gx:62; --gw:13; } [data-g="lt"] { --gx:76; --gw:13; } [data-g="rt"] { --gx:90; --gw:13; }
[data-g="start"] { --gx:104; } [data-g="select"] { --gx:116; } [data-g="dpad"] { --gx:128; } [data-g="dpad-u"] { --gx:140; } [data-g="dpad-d"] { --gx:152; }
[data-g="dpad-l"] { --gx:164; } [data-g="dpad-r"] { --gx:176; } [data-g="dpad-h"] { --gx:188; } [data-g="dpad-v"] { --gx:200; } [data-g="ls"] { --gx:212; } [data-g="rs"] { --gx:224; }

/* ---------- рамка фокуса: белая, жёлтая и чернильная полосы — видна на светлом и тёмном; в углу — кнопка «нажать» ---------- */
.pad-ring { position:fixed; left:0; top:0; z-index:2147483000; display:none; pointer-events:none; border-radius:16px;
  box-shadow:0 0 0 2px var(--pad-paper), 0 0 0 6px var(--pad-hi), 0 0 0 8px var(--pad-ink), 0 10px 24px 6px var(--pad-glow); }
.pad-ring.on { display:block; }
.pad-ring.dis { --pad-hi:var(--pad-ink-2); }
.pad-ring.hit { animation:padHit .2s ease-out; } .pad-ring.bump { animation:padBump .2s ease-out; }
.pad-ring-g { position:absolute; right:-12px; bottom:-12px; filter:drop-shadow(0 4px 4px #00000040); }
.pad-ring-g[hidden] { display:none; }
html.pad-kbd [data-pad-keys] :focus-visible { outline:none; }   /* стрелки в меню (H1): фокус показывает рамка, а не обводка браузера */

/* ---------- сенсорное управление при геймпаде не нужно (PokéSwarm: джойстик, прыжок, рывок, пауза, лупа): прозрачное, но на месте —
   первое же касание попадает в джойстик и возвращает обычный вид ---------- */
html.pad #touch, html.pad .mtools { opacity:0 !important; }
#touch, .mtools { transition:opacity .2s ease-out; }

/* ---------- уведомление «Геймпад подключён» ---------- */
.pad-toast { position:fixed; left:50%; bottom:calc(24px + env(safe-area-inset-bottom)); z-index:2147482000; transform:translateX(-50%); display:flex; align-items:center; gap:8px;
  padding:7px 16px 7px 8px; border-radius:99px; background:var(--pad-ink); color:var(--pad-paper); box-shadow:var(--pad-shadow); font:900 14px var(--font-title); white-space:nowrap; pointer-events:none;
  animation:padIn .3s ease-out; transition:opacity .25s ease-out; }
.pad-toast span { font:800 13px var(--font); opacity:.75; }
.pad-toast.out { opacity:0; } .pad-toast.still { animation:none; transition:none; }

/* ---------- кнопка «Настроить» (PH_PAD.button / row) — открывает раздел «Управление» экрана настроек (shared/ui/settings.css, H4) ---------- */
.pad-set .pad-open { margin-left:auto; }
