/* LOADOUT LABS — shared styles */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

body {
  background: #050506;
  color: #e8e8ec;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro", "Segoe UI", sans-serif;
  --font-serif: -apple-system, BlinkMacSystemFont, "SF Pro Display", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  --font-mono: "SF Mono", ui-monospace, Menlo, Consolas, "Courier New", monospace;
  -webkit-font-smoothing: antialiased;
}

.header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 50;
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px max(24px, 3vw);
  background: #050506;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.header .logo { display: flex; align-items: center; gap: 10px; color: #e8e8ec; text-decoration: none; font-family: var(--font-serif); font-weight: 700; font-size: 15px; letter-spacing: -0.01em; }
.header .logo img { height: 24px; width: auto; }

.header-right { display: flex; align-items: center; gap: 10px; }

.header a { text-decoration: none; color: #6e6e78; font-size: 13px; transition: color 150ms; }
.header a:hover { color: #e8e8ec; }

.header .back-link {
  display: inline-flex; align-items: center; color: #6e6e78; text-decoration: none;
  font-family: var(--font-mono); font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase;
  border: 1px solid rgba(255,255,255,0.08); border-radius: 0; padding: 6px 14px; transition: all 140ms; white-space: nowrap;
}
.header .back-link:hover { border-color: rgba(255,255,255,0.2); color: #e8e8ec; }

.header a:focus-visible,
.header button:focus-visible,
.nav a:focus-visible,
.nav button:focus-visible,
.lang-current:focus-visible,
.lang-option:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}

.card {
  background: #0a0a0d; border: 1px solid rgba(255,255,255,0.05); border-radius: 0;
  display: block; text-decoration: none; color: #e8e8ec; padding: 24px; transition: border-color 180ms;
}
.card:hover { border-color: rgba(255,255,255,0.12); }

.panel {
  background: #0a0a0d; border: 1px solid rgba(255,255,255,0.05); border-radius: 0; padding: 24px;
}

@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:0.3} }
