/* ============================================================
   Stream Events Page
============================================================ */
.se-page{ max-width:1400px; margin:0 auto; padding:0 20px 60px; display:flex; flex-direction:column; gap:32px; }

.se-hero{
  position: relative;
  border-radius: 22px;
  padding: 3px;
  background: linear-gradient(135deg,rgba(196,135,71,.60) 0%,rgba(100,60,10,.20) 40%,rgba(196,135,71,.40) 100%);
  box-shadow: 0 8px 48px rgba(0,0,0,.60), 0 0 80px rgba(196,135,71,.08);
}
.se-hero__card{
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(160deg,rgba(18,13,6,.97) 0%,rgba(12,9,4,.99) 60%,rgba(20,14,5,.97) 100%);
  padding: 52px 40px 44px;
  text-align: center;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
.se-hero__card::before{
  content: '';
  position: absolute;
  top: -60px; left: 50%;
  transform: translateX(-50%);
  width: 700px; height: 280px;
  border-radius: 50%;
  background: radial-gradient(ellipse,rgba(196,135,71,.18) 0%,transparent 70%);
  pointer-events: none;
}
.se-hero__card::after{
  content: '🎥';
  position: absolute;
  right: 5%; top: 50%;
  transform: translateY(-50%);
  font-size: 140px;
  opacity: .04;
  pointer-events: none;
  user-select: none;
}
.se-hero__eyebrow{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(196,135,71,.85);
  background: rgba(196,135,71,.08);
  border: 1px solid rgba(196,135,71,.22);
  border-radius: 999px;
  padding: 5px 16px;
  margin-bottom: 0;
  position: relative;
  z-index: 1;
}
.se-hero__title{
  font-size: 54px;
  font-weight: 950;
  font-style: italic;
  background: linear-gradient(135deg,#ffd77a,#e0a030 50%,#ffd77a);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  line-height: 1.05;
  margin: 0;
  position: relative;
  z-index: 1;
}
.se-hero__sub{
  font-size: 15px;
  color: rgba(170,180,197,.72);
  max-width: 500px;
  margin: 0;
  line-height: 1.65;
  position: relative;
  z-index: 1;
}
/* Stats strip */
.se-hero__stats{
  display: flex;
  align-items: center;
  gap: 0;
  margin-top: 4px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(196,135,71,.18);
  border-radius: 16px;
  padding: 14px 24px;
  position: relative;
  z-index: 1;
}
.se-hstat{ display:flex; flex-direction:column; align-items:center; gap:4px; padding:0 22px; }
.se-hstat__val{ font-size:26px; font-weight:950; color:rgba(255,210,120,.97); line-height:1; }
.se-hstat__label{ font-size:10px; color:rgba(170,180,197,.50); text-transform:uppercase; letter-spacing:.8px; white-space:nowrap; }
.se-hstat__div{ width:1px; height:34px; background:linear-gradient(180deg,transparent,rgba(196,135,71,.25),transparent); flex-shrink:0; }

.se-card{ background:rgba(10,8,4,.88); border:1px solid rgba(196,135,71,.20); border-radius:22px; overflow:hidden; position:relative; transition:border-color .2s,transform .2s; }
.se-card:hover{ border-color:rgba(196,135,71,.40); transform:translateY(-2px); }
.se-card--live{ border-color:rgba(60,200,100,.35); }
.se-card--live::before{ content:''; position:absolute; inset:0; background:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(60,200,100,.08),transparent 70%); pointer-events:none; }
.se-card--finished{ opacity:.5; filter:saturate(.4); }

.se-card__head{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:24px 24px 16px; flex-wrap:wrap; }
.se-card__status{ display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:950; letter-spacing:1px; text-transform:uppercase; padding:3px 10px; border-radius:999px; margin-bottom:6px; }
.se-card__status--upcoming{ background:rgba(196,135,71,.15); color:rgba(255,210,120,.9); border:1px solid rgba(196,135,71,.30); }
.se-card__status--live{ background:rgba(60,200,100,.15); color:rgba(120,240,160,.9); border:1px solid rgba(60,200,100,.30); }
.se-card__status--live::before{ content:''; width:7px; height:7px; border-radius:50%; background:rgba(60,200,100,.9); animation:sePulse 1.4s infinite; display:inline-block; }
.se-card__status--finished{ background:rgba(255,255,255,.06); color:rgba(170,180,197,.6); border:1px solid rgba(255,255,255,.08); }
@keyframes sePulse{ 0%,100%{ opacity:1; } 50%{ opacity:.3; } }
.se-card__title{ font-size:22px; font-weight:950; color:rgba(233,238,247,.97); margin:0; }
.se-card__date{ display:flex; align-items:center; gap:6px; font-size:13px; font-weight:700; color:rgba(196,135,71,.80); flex-shrink:0; white-space:nowrap; }

.se-card__body{ padding:0 24px 20px; display:flex; flex-direction:column; gap:16px; }
.se-card__desc{ font-size:14px; color:rgba(170,180,197,.80); line-height:1.65; }

.se-req{ display:flex; align-items:center; gap:10px; background:rgba(196,135,71,.07); border:1px solid rgba(196,135,71,.18); border-radius:12px; padding:12px 16px; }
.se-req__icon{ font-size:18px; flex-shrink:0; }
.se-req__text{ flex:1; font-size:13px; color:rgba(233,238,247,.82); line-height:1.5; }
.se-req__text strong{ color:rgba(255,210,120,.95); }
.se-req__more{ background:none; border:1px solid rgba(196,135,71,.35); border-radius:50%; width:26px; height:26px; cursor:pointer; color:rgba(196,135,71,.85); font-weight:900; font-size:13px; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:background .15s; }
.se-req__more:hover{ background:rgba(196,135,71,.15); }

.se-card__links{ display:flex; gap:10px; flex-wrap:wrap; }
.se-link{ display:inline-flex; align-items:center; gap:7px; padding:9px 18px; border-radius:12px; font-size:13px; font-weight:700; text-decoration:none; transition:filter .15s; }
.se-link--kick{ background:linear-gradient(135deg,#53fc18,#3db010); color:#0a1f00; }
.se-link--kick:hover{ filter:brightness(1.1); }
.se-link--discord{ background:linear-gradient(135deg,#5865f2,#4752c4); color:#fff; }
.se-link--discord:hover{ filter:brightness(1.1); }

.se-card__parts{ border-top:1px solid rgba(255,255,255,.06); padding:16px 24px 20px; }
.se-parts__head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.se-parts__title{ font-size:11px; font-weight:950; letter-spacing:1px; text-transform:uppercase; color:rgba(196,135,71,.70); }
.se-parts__count{ font-size:12px; color:rgba(170,180,197,.50); }
.se-parts__list{ display:flex; flex-wrap:wrap; gap:8px; }
.se-part{ display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); border-radius:10px; padding:7px 12px; }
.se-part__avatar{ width:30px; height:30px; border-radius:50%; object-fit:cover; border:1.5px solid rgba(196,135,71,.35); flex-shrink:0; }
.se-part__name{ font-size:13px; font-weight:700; color:rgba(233,238,247,.85); }
.se-part__wager{ font-size:10px; color:rgba(170,180,197,.50); }
.se-parts__empty{ font-size:13px; color:rgba(170,180,197,.45); font-style:italic; }

/* Requirements modal */
.se-modal{ position:fixed; inset:0; z-index:9000; display:flex; align-items:center; justify-content:center; padding:20px; }
.se-modal[hidden]{ display:none; }
.se-modal__backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.75); backdrop-filter:blur(4px); cursor:pointer; }
.se-modal__box{ position:relative; background:linear-gradient(145deg,rgba(18,14,8,.98),rgba(10,8,4,.99)); border:1px solid rgba(196,135,71,.25); border-radius:22px; width:100%; max-width:500px; padding:28px 28px 24px; box-shadow:0 32px 80px rgba(0,0,0,.7); }
.se-modal__title{ font-size:18px; font-weight:950; color:rgba(255,210,120,.95); margin:0 0 14px; }
.se-modal__body{ font-size:14px; color:rgba(170,180,197,.85); line-height:1.7; white-space:pre-wrap; }
.se-modal__close{ position:absolute; top:16px; right:16px; width:32px; height:32px; border-radius:50%; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.10); color:rgba(233,238,247,.7); font-size:18px; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.se-modal__close:hover{ background:rgba(255,80,80,.15); color:rgba(255,190,190,.9); }

@media(max-width:767px){
  .se-page{ padding:0 5px 40px; }
  .se-hero{ border-radius:16px; }
  .se-hero__card{ padding:32px 18px 28px; border-radius:14px; }
  .se-hero__title{ font-size:36px; }
  .se-hstat{ padding:0 14px; }
  .se-hstat__val{ font-size:20px; }
  .se-hero__stats{ padding:12px 10px; }
  .se-card__head{ gap:10px; }
  .se-card__title{ font-size:18px; }
  .se-card__body,.se-card__parts{ padding-left:16px; padding-right:16px; }
  .se-card__date{ font-size:12px; }
}
