/* Night Compact V212 — player console privacy and multi-operative layout */

html.saved-player-first-paint-v211 #root {
  visibility: hidden;
}

/* These controls never belong on an authenticated player device. Server
   projection is the data boundary; this is the matching presentation boundary. */
html.player-console-v211 .connector-state,
html.player-console-v211 .round-button,
html.player-console-v211 .roll20-window-button,
html.player-console-v211 .roll20-download,
html.player-console-v211 .campaign-save-dialog,
html.player-console-v211 .roll20-setup-dialog,
html.player-console-v211 .gm-nav,
html.player-console-v211 .gm-master-page,
html.player-console-v211 .initiative-page,
html.player-console-v211 .sired-workspace,
html.player-console-v211 .pressure-page,
html.player-console-v211 .damage-panel,
html.player-console-v211 .pose-controls,
html.player-console-v211 .mini-phone-sheet > footer,
html.player-console-v211 .mini-icon-dock button[title="Take 1 damage"],
html.player-console-v211 .mini-icon-dock button[title="Heal"],
html.player-console-v211 .personal-inventory-grid button,
html.player-console-v211 .crystal-carry-control button,
html.player-console-v211 .consumable-stock-grid button,
html.player-console-v211 .personal-collection-actions,
html.player-console-v211 .campaign-stepper button {
  display: none !important;
}

html.player-console-v211 .workspace {
  grid-template-columns: minmax(150px, 220px) minmax(0, 1fr);
}

html.player-console-v211 .rail button {
  min-width: 0;
}

html.player-console-v211 .equipment-identity {
  grid-template-rows: auto minmax(2.5em, auto) 56px;
}

html.player-console-v211 .equipment-name {
  overflow-wrap: anywhere;
  white-space: normal;
}

html.player-console-v211 .equipment-picture {
  width: 56px;
  height: 56px;
}

html.player-console-v211 .equipment-picture svg {
  width: 36px;
  height: 36px;
}

.player-projection-boundary-v211 {
  min-height: 100vh;
  display: grid;
  place-content: center;
  gap: 18px;
  padding: clamp(24px, 6vw, 72px);
  background: #05090a;
  color: #e9eeee;
  text-align: center;
}

.player-projection-boundary-v211 > img {
  width: 96px;
  margin: 0 auto;
}

.player-claim-boundary-v211 {
  place-content: start center;
  text-align: left;
}

.player-claim-boundary-v211 > header,
.player-claim-boundary-v211 > section,
.player-claim-boundary-v211 > button,
.player-claim-boundary-v211 > p {
  width: min(720px, calc(100vw - 48px));
}

.player-owned-safe-house-shell-v211 .player-safe-house-nav-v211 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.player-owned-safe-house-shell-v211 .player-owned-loadout-v211 {
  min-width: 0;
}

.player-owned-equipment-v211 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: clamp(16px, 3vw, 28px);
}

.player-owned-equipment-v211 label {
  min-width: 0;
  display: grid;
  gap: 7px;
  padding: 14px;
  border: 1px solid rgba(126, 213, 224, 0.24);
  background: rgba(7, 15, 17, 0.9);
}

.player-owned-equipment-v211 label > span {
  color: #7ed5e0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.player-owned-equipment-v211 select {
  min-width: 0;
  width: 100%;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: #091113;
  color: #f4f1e8;
}

.player-safe-house-note-v211 {
  grid-column: 1 / -1;
  margin: 4px 0 0;
  color: rgba(233, 238, 238, 0.7);
  line-height: 1.5;
}

@media (max-width: 860px) {
  html.player-console-v211 .workspace {
    grid-template-columns: 1fr;
  }

  html.player-console-v211 .rail {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(138px, 1fr));
    gap: 7px;
  }

  html.player-console-v211 .rail-label {
    grid-column: 1 / -1;
  }

  html.player-console-v211 .quick-loadout-line,
  html.player-console-v211 .equipment-slot-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .player-owned-safe-house-shell-v211 .player-safe-house-nav-v211,
  .player-owned-equipment-v211 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  html.player-console-v211 .quick-loadout-line,
  html.player-console-v211 .equipment-slot-grid {
    grid-template-columns: 1fr;
  }
}
