/* scenes/serverrack.js -- the server rack: its console, the players counter, the pads' names. */
.gscene-serverrack .gscene-stage { height: clamp(380px, 64vh, 600px);
  background: radial-gradient(ellipse 75% 65% at 50% 40%, #233456, #121a30 60%, #080b14); }
.rack-console { position: absolute; left: 14px; top: 14px; z-index: 3; margin: 0; padding: 9px 12px; list-style: none; pointer-events: none;
  width: min(62%, 380px); border-radius: 12px; background: rgba(5, 8, 16, 0.78); border: 1px solid rgba(255, 255, 255, 0.1);
  font: 500 0.74rem/1.5 ui-monospace, "SF Mono", Menlo, Consolas, monospace; color: #c9d4ea; }
.rack-console:empty { display: none; }
.rack-line { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; animation: rack-in 0.25s ease-out both; }
.rack-line::before { content: "[INFO] "; color: var(--sky); }
.rack-line.is-join::before { content: "[+] "; color: var(--grass); }
.rack-line.is-leave::before { content: "[-] "; color: var(--red); }
.rack-line.is-boot { color: #e9eefb; }
.rack-count { position: absolute; right: 14px; top: 14px; z-index: 3; pointer-events: none; display: flex; align-items: baseline; gap: 6px;
  padding: 6px 13px; border-radius: 12px; font: 800 0.8rem var(--display); color: rgba(255, 255, 255, 0.8);
  background: rgba(5, 8, 16, 0.72); border: 1px solid rgba(255, 255, 255, 0.12); }
.rack-count span { text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.7rem; }
.rack-count b { font-size: 1.3rem; color: var(--gold); }
.rack-pad { position: absolute; left: 0; top: 0; z-index: 2; pointer-events: none; opacity: 0; transition: opacity 0.3s; white-space: nowrap;
  padding: 3px 11px; border-radius: 99px; font: 800 0.78rem var(--display); color: #08101e; background: var(--water); box-shadow: 0 3px 0 rgba(0, 0, 0, 0.35); }
.rack-pad[data-os="windows"] { background: var(--gold); }
.rack-pad[data-os="linux"] { background: var(--grass); }
.rack-pad.on { opacity: 1; }
@keyframes rack-in { from { opacity: 0; transform: translateX(-6px); } to { opacity: 1; transform: none; } }
@media (max-width: 560px) { .rack-console { width: calc(100% - 28px); top: auto; bottom: 14px; font-size: 0.66rem; } .rack-pad { font-size: 0.68rem; } }
@media (prefers-reduced-motion: reduce) { .rack-line { animation: none; } }
