/* ═══════════ Лист персонала на стойке (scripts/crew-desk.mjs, SPEC §8.18) ═══════════
   Бумага и слово продукта, как у окна профилей: это то же «кто вы и куда
   дальше», только ответ один — в приложение. Код для камеры лежит квитком.
   Белое поле вокруг кода несёт сам рисунок (qrSvg): телефон читает его и
   в тёмной теме, а у плитки своего цвета нет. */

/* Слой — над окном профилей (150), под экраном сборки (200). */
.crew-desk{
  position:fixed;inset:0;z-index:160;overflow-y:auto;overscroll-behavior:contain;
  background:var(--paper);color:var(--ink);
}
html.crew-desk-on,html.crew-desk-on body{overflow:hidden}
.crew-desk-in{
  min-height:100svh;display:flex;flex-direction:column;
  padding:0 clamp(16px, 4vw, 44px) calc(40px + env(safe-area-inset-bottom));
}
.crew-desk-top{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding-top:clamp(20px, 4svh, 40px)}
.crew-desk .crew-desk-word{--w:104px}
.crew-desk-venue{font-size:12.5px;font-weight:500;color:var(--ink-3)}
.crew-desk-stage{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  max-width:520px;margin:0 auto;padding:clamp(24px, 5svh, 56px) 0;
}
.crew-desk-title{
  margin:0;text-wrap:balance;
  font-size:clamp(28px, 1.8vw + 16px, 40px);font-weight:600;line-height:1.1;letter-spacing:-.035em;
}
.crew-desk-said{margin:14px 0 0;font-size:15px;line-height:1.5;color:var(--ink-2)}
.crew-desk-slip{
  display:flex;flex-direction:column;align-items:center;gap:14px;
  margin:clamp(28px, 5svh, 44px) 0 0;
}
.crew-desk-qr{
  display:block;width:184px;height:184px;border-radius:var(--r-lg);overflow:hidden;
  box-shadow:0 0 0 1px var(--rule);
}
.crew-desk-qr svg{display:block;width:100%;height:100%}
.crew-desk-slip figcaption{max-width:340px;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.crew-desk-link{
  color:var(--ink);font-weight:600;text-decoration:none;white-space:nowrap;
  border-bottom:1px solid color-mix(in srgb, currentColor 30%, transparent);
  transition:border-color var(--t-tap) var(--ease);
}
@media (hover:hover){.crew-desk-link:hover{border-bottom-color:currentColor}}
.crew-desk-out{
  margin-top:clamp(28px, 5svh, 44px);height:40px;padding:0 18px;border:1px solid var(--rule);border-radius:var(--r);
  background:transparent;color:var(--ink);font:inherit;font-size:14px;font-weight:500;cursor:pointer;
  transition:background-color var(--t-tap) var(--ease),transform var(--t-tap) var(--ease);
}
@media (hover:hover){.crew-desk-out:hover{background:color-mix(in srgb, var(--ink) 5%, transparent)}}
.crew-desk-out:active{transform:scale(.97)}
.crew-desk-out:disabled{opacity:.6;cursor:default}
.crew-desk :focus-visible{outline:2px solid var(--ink-2);outline-offset:3px}
