/* Ork scrap-metal finish, green accents, and stable background while scrolling. */
html { min-height: 100%; background: #101416; }
body { min-height: 100vh; background-attachment: fixed; background-repeat: no-repeat; background-size: cover; }
.brand { gap: 13px; }
.brand-mark {
  width: 39px; height: 35px; transform: none; position: relative;
  display: grid; place-items: center; border: 0;
  clip-path: polygon(12% 0,86% 4%,100% 26%,92% 82%,72% 100%,8% 92%,0 66%,7% 42%,0 18%);
  background: linear-gradient(145deg,#30412d,#151a17);
  filter: drop-shadow(0 0 5px #8fd34f66);
}
.brand-mark::after { content: ""; position: absolute; inset: 3px; clip-path: inherit; border: 1px solid #8fd34f; }
.brand-mark span { position: relative; z-index: 1; color: #b8ec69; font: 900 21px 'Barlow Condensed',sans-serif; text-shadow: 1px 2px #111; }
.brand-copy { display: flex; flex-wrap: wrap; align-items: center; column-gap: 2px; font: 900 19px 'Barlow Condensed',sans-serif; letter-spacing: .08em; }
.brand-copy small { flex-basis: 100%; color: var(--muted); text-align: left; margin-top: -4px; font: 700 8px 'Barlow Condensed',sans-serif; letter-spacing: .22em; }
.topbar { border-bottom-color: #536747; background: linear-gradient(90deg,#151a17f5,#111615f2 65%,#192019f5); }
.section-heading { position: relative; padding-left: 12px; }
.section-heading::before { content: ""; position: absolute; left: 0; top: 50%; width: 5px; height: 13px; transform: translateY(-50%); background: var(--gold); clip-path: polygon(0 0,100% 10%,75% 100%,0 85%); }
.faction-card,.unit-card { border-left: 2px solid #40553b; }
.faction-card:hover,.unit-card:hover { border-left-color: var(--gold); }
.unit-card:focus-visible,.faction-card:focus-visible,.back-link:focus-visible,.nav-item:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.gold,.nav-item.active,.card-arrow { color: var(--gold); }
.points-badge { color: var(--gold); background: #1d2b18; border-color: #5a792d; }
.primary-button,.save-note { background: var(--gold); color: #11170f; }
.rule-card strong,.developer-card h2,.legal-notice > strong,.legal-notice a,.equipped-count { color: #b8ec69; }
.developer-card { display: flex; align-items: center; gap: 17px; border: 1px solid #506641; background: linear-gradient(110deg,#1d281c,#171d1a); padding: 18px; border-radius: 10px; box-shadow: inset 4px 0 var(--gold); }
.developer-mark { width: 58px; height: 58px; display: grid; place-items: center; flex: none; clip-path: polygon(13% 0,84% 3%,100% 24%,92% 83%,72% 100%,8% 92%,0 66%,7% 42%); background: #25351f; color: var(--gold); font-size: 32px; text-shadow: 1px 2px #090b09; }
.developer-card h2 { margin: 0 0 4px; font: 800 22px 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: .06em; }
.developer-card p { margin: 0; color: var(--muted); font-size: 13px; }
.legal-notice { border: 1px solid #526543; border-left: 4px solid var(--gold); border-radius: 9px; background: linear-gradient(120deg,#1a211b,#171c1c); padding: 19px 21px; color: var(--text); line-height: 1.8; }
.legal-notice > strong { display: block; font-size: 16px; margin-bottom: 9px; }
.legal-notice p { margin: 8px 0; }
.legal-notice a { text-decoration: underline; text-underline-offset: 3px; }
.play-loadout-note { border-left: 3px solid var(--gold); border-radius: 5px; background: #1c291b; padding: 11px 14px; color: #d8e9cd; font-size: 12px; margin: 12px 0; }
.equipped-count { display: block; margin-top: 4px; font: 700 10px 'Barlow Condensed',sans-serif; letter-spacing: .08em; }
.import-panel { margin-top: 20px; }
.import-panel > summary { cursor: pointer; list-style: none; padding: 12px 15px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); color: var(--muted); font-size: 13px; }
.import-panel > summary::-webkit-details-marker { display: none; }
.import-panel > summary::after { content: "+"; float: right; color: var(--gold); font-size: 19px; line-height: 1; }
.import-panel[open] > summary { border-radius: 8px 8px 0 0; }
.import-panel[open] > summary::after { content: "−"; }
.import-panel .forge-upload { border-radius: 0 0 10px 10px; border-top: 0; }
.play-loadout-note + .accordions { margin-top: 10px; }
.accordion summary { background: linear-gradient(90deg,#3c6840,#477c4c); }
.invuln { background: #416e50; }
@media (max-width: 560px) {
  .brand-copy { font-size: 17px; }
  .brand-mark { width: 34px; height: 31px; }
  .developer-card { align-items: flex-start; padding: 14px; }
  .developer-mark { width: 46px; height: 46px; font-size: 27px; }
  .legal-notice { padding: 15px; }
  .topbar-right .edition { font-size: 10px; }
}
