/* FXN live forum extras */
.user-chip{display:flex;align-items:center;gap:12px}
.user-chip span{color:#bbb;font-size:13px;font-weight:700}
.form-card{background:#0d0d0d;border:1px solid #292929;border-radius:10px;padding:28px;max-width:420px;margin:40px auto}
.form-card h1{margin:0 0 8px;color:#a855f7;font-size:22px}
.form-card p.lead{color:#888;font-size:13px;margin:0 0 20px}
.form-card label{display:block;font-size:12px;color:#aaa;margin:12px 0 6px;font-weight:700}
.form-card input[type=text],
.form-card input[type=password],
.form-card textarea,
.message-compose textarea,
.topic-compose input,
.topic-compose textarea{
  width:100%;padding:13px;background:#080808;border:1px solid #303030;border-radius:6px;color:#eee;font:14px Arial;box-sizing:border-box
}
.form-card input:focus,
.message-compose textarea:focus,
.topic-compose input:focus,
.topic-compose textarea:focus{border-color:#a855f7;outline:none;box-shadow:0 0 0 2px rgba(168,85,247,.08)}
.form-card .red-btn,.message-compose .red-btn,.topic-compose .red-btn{width:100%;margin-top:16px}
.form-error{background:#2a0a0c;border:1px solid #5a1518;color:#ff6b6b;padding:10px 14px;border-radius:6px;font-size:13px;margin-bottom:14px}
.form-ok{background:#0a2a12;border:1px solid #1a5a28;color:#6bff9a;padding:10px 14px;border-radius:6px;font-size:13px;margin-bottom:14px}
.form-links{margin-top:16px;text-align:center;font-size:13px;color:#777}
.form-links a{color:#a855f7;font-weight:700}
.post{background:#0d0d0d;border:1px solid #242424;border-radius:8px;padding:18px;margin-bottom:14px}
.post-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;color:#777}
.post-meta b{color:#a855f7}
.post-body{color:#ddd;line-height:1.65;white-space:pre-wrap;word-break:break-word}
.message-compose,.topic-compose{background:#0d0d0d;border:1px solid #292929;border-radius:8px;padding:16px;margin-top:20px}
.message-compose textarea{min-height:120px;resize:vertical}
.topic-compose textarea{min-height:160px;resize:vertical;margin-top:10px}
.breadcrumb{font-size:13px;color:#666;margin-bottom:18px}
.breadcrumb a{color:#aaa;text-decoration:none}
.breadcrumb a:hover{color:#a855f7}
.empty-state{text-align:center;padding:48px 20px;color:#666;border:1px dashed #333;border-radius:8px;margin:20px 0}
.topic-row{cursor:pointer}
.topic-row a.title-link{color:inherit;text-decoration:none}
.topic-row a.title-link:hover h3{color:#a855f7}
.section-heading .red-btn,.section-heading .new-topic{text-decoration:none;display:inline-block}
.hero .red-btn{text-decoration:none;display:inline-block}
.login-btn{text-decoration:none;display:inline-block}
.rules-box{background:#0d0d0d;border:1px solid #292929;border-radius:8px;padding:24px;line-height:1.7;color:#ccc}
.rules-box h3{color:#a855f7;margin-top:22px}
.rules-box h3:first-child{margin-top:0}
.avatar-sm{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#1a1a1a;border:1px solid #3a1f4f;color:#a855f7;font-weight:900;font-size:13px;flex-shrink:0}

/* Discord live widget */
.discord-live { grid-template-columns: 38px 1fr !important; }
.discord-online { color: #4c4 !important; font-weight: 700; }
.discord-members {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 4px 0 2px;
  padding-top: 8px;
  border-top: 1px solid #2a1515;
}
.dm-avatar {
  position: relative;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #1a1a1a;
  border: 1px solid #333;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 900;
  color: #a855f7;
}
.dm-avatar img { width: 100%; height: 100%; object-fit: cover; }
.dm-avatar i {
  position: absolute;
  right: 0; bottom: 0;
  width: 8px; height: 8px;
  border-radius: 50%;
  border: 1px solid #0d0d0d;
  background: #4c4;
}
.dm-avatar i.st-idle { background: #faa61a; }
.dm-avatar i.st-dnd { background: #ed4245; }
.dm-avatar i.st-offline { background: #747f8d; }
.dm-more {
  width: 28px; height: 28px; border-radius: 50%;
  background: #1a0a0c; border: 1px solid #3c1f52;
  display: flex; align-items: center; justify-content: center;
  font-size: 9px; font-weight: 900; color: #a855f7;
}

/* Steam login / store additions */
.or-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:#555;font-size:11px;font-weight:800;letter-spacing:1px}
.or-divider::before,.or-divider::after{content:"";flex:1;height:1px;background:#242424}
.steam-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px;background:#171a21;border:1px solid #2a3f5f;border-radius:5px;color:#fff;text-decoration:none;font-weight:800;font-size:13px;letter-spacing:.3px;box-sizing:border-box}
.steam-btn:hover{background:#1b2838;border-color:#66c0f4}
.steam-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#66c0f4;background:#12202e;border:1px solid #1e3a52;border-radius:4px;padding:3px 8px;font-weight:700}
.store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:22px}
.tier-card{background:#0d0d0d;border:1px solid #292929;border-radius:10px;padding:24px;display:flex;flex-direction:column;gap:10px}
.tier-card.featured{border-color:#a855f7;box-shadow:0 0 24px rgba(168,85,247,.15)}
.tier-card h3{margin:0;font-size:18px}
.tier-price{font-size:26px;font-weight:900;color:#a855f7}
.tier-price small{font-size:12px;color:#777;font-weight:600}
.tier-perks{list-style:none;padding:0;margin:6px 0;flex:1;color:#bbb;font-size:13px;line-height:1.9}
.tier-perks li:before{content:"✓ ";color:#a855f7;font-weight:900}
.store-note{background:#0d0d0d;border:1px solid #292929;border-left:3px solid #a855f7;border-radius:8px;padding:16px 18px;color:#999;font-size:13px;margin-bottom:22px;line-height:1.6}
.order-table{width:100%;border-collapse:collapse;font-size:13px}
.order-table th,.order-table td{padding:10px 12px;border-bottom:1px solid #242424;text-align:left}
.order-table th{color:#777;font-size:11px;text-transform:uppercase;letter-spacing:1px}
.status-pill{padding:3px 9px;border-radius:20px;font-size:11px;font-weight:800;text-transform:uppercase}
.status-pill.pending{background:#2a2408;color:#e0c040}
.status-pill.fulfilled{background:#0a1a0a;color:#6d6}
.status-pill.cancelled{background:#2a0a0a;color:#e06060}

/* Mobile / tablet navigation */
.hamburger{display:none;background:none;border:0;color:#eee;font-size:22px;line-height:1;cursor:pointer;padding:6px 10px;border-radius:5px}
.hamburger:hover{background:#151515}
.nav-mobile-account{display:none}
@media(max-width:900px){
  .topbar{padding:0 4%;gap:14px}
  .hamburger{display:block;order:2}
  .topbar nav{order:5}
  .topbar > .user-chip,.topbar > a.login-btn{display:none}
  .topbar nav{
    display:none;
    position:absolute;top:78px;left:0;right:0;
    background:#0b0b0b;border-bottom:1px solid #292929;
    flex-direction:column;gap:0;margin:0;padding:6px 0 12px;
    max-height:calc(100vh - 78px);overflow-y:auto;
    box-shadow:0 12px 24px rgba(0,0,0,.5);
  }
  .topbar nav.open{display:flex}
  .topbar nav a{padding:14px 6%;border-top:1px solid #1a1a1a;text-transform:none;font-size:15px}
  .topbar nav a:first-child{border-top:0}
  .nav-mobile-account{
    display:flex;justify-content:space-between;align-items:center;
    padding:14px 6% 4px;margin-top:6px;border-top:1px solid #242424;font-size:13px;font-weight:800;letter-spacing:.5px
  }
}
@media(max-width:520px){
  .content{padding:16px}
  .fxn-title{font-size:52px;letter-spacing:2px}
  .hero{min-height:340px;padding:0 16px}
  .hero-logo{width:120px;height:120px}
  .subtitle{font-size:11px;letter-spacing:3px}
  .brand span{font-size:15px}
  .brand img{width:38px;height:46px}
  .section-heading{flex-wrap:wrap;gap:10px}
  .store-grid{grid-template-columns:1fr}
}

/* Tablet: keep sidebar off (needs real width) but restore a touch more breathing room than phone */
@media(min-width:601px) and (max-width:900px){
  .content{padding:26px}
}

