/* ============================================================
   REGISTER PAGE — DARK PREMIUM + SIDEBAR FIX
============================================================ */

.registration-page{
  background:#06080f;
  color:#eef1f6;
}

/* ============================================================
   MAIN LAYOUT
============================================================ */

.main-layout{
  max-width:1400px;
  margin:0 auto;
  padding:24px 18px;
  display:grid;
  grid-template-columns: minmax(0,1fr) 360px;
  gap:28px;
  align-items:start;
}

.main-left{
  min-width:0;
}

/* RIGHT SIDEBAR */
.main-right{
  width:100%;
  align-self:start;
  position:sticky;
  top:88px;
}

/* sidebar cards */
.main-right .side-panel{
  margin-bottom:18px;
}

/* ============================================================
   CONTENT WRAPPER
============================================================ */

.reg-wrapper{
  padding:10px 10px 50px;
}

/* ============================================================
   HEADER
============================================================ */

.reg-header h1{
  font-size:30px;
  margin-bottom:6px;
}

.reg-header p{
  color:#a0a6b9;
}

.reg-subtitle{
  margin:26px 0 16px;
  font-size:18px;
}

.reg-subtitle.red{
  color:#e11d2e;
  font-weight:800;
  letter-spacing:.6px;
}

/* ============================================================
   CREATE ACCOUNT — DARK PREMIUM CARDS
============================================================ */

.account-type-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin-top:10px;
}

.account-card{
  background:linear-gradient(180deg,#15192b,#0c1020);
  border:1px solid #2a2f45;
  color:#eef1f6;
  border-radius:12px;
  box-shadow:0 12px 30px rgba(0,0,0,.45);
  padding:18px 18px 16px;
  display:grid;
  grid-template-columns:1fr 170px;
  align-items:center;
  gap:18px;
  max-width:100%;
  overflow:hidden;
  transition:.25s ease;
}

.account-card:hover{
  border-color:#e0b068;
  box-shadow:0 0 0 1px rgba(224,176,104,.25), 0 18px 40px rgba(0,0,0,.6);
}

.account-info h3{
  margin:0 0 10px;
  font-size:15px;
  font-weight:800;
  letter-spacing:.4px;
  color:#ffffff;
}

/* features */
.account-features{
  list-style:none;
  padding:0;
  margin:0 0 14px;
}

.account-features li{
  font-size:13px;
  margin-bottom:6px;
  padding-left:18px;
  position:relative;
  color:#d6d9e6;
}

.account-features li::before{
  content:"✓";
  color:#e11d2e;
  position:absolute;
  left:0;
  top:0;
  font-weight:800;
}

/* CTA */
.account-btn{
  display:inline-block;
  background:linear-gradient(135deg,#e11d2e,#b01222);
  color:#fff;
  font-weight:800;
  font-size:13px;
  padding:8px 22px;
  border-radius:6px;
  text-decoration:none;
  transition:.2s;
}

.account-btn:hover{
  filter:brightness(1.1);
}

/* image */
.account-img img{
  width:100%;
  height:190px;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.6));
}

/* ============================================================
   ADVERTISE SECTION
============================================================ */

.advertise-section{
  margin-top:60px;
  padding-top:28px;
  border-top:1px solid #262a3a;
}

.advertise-section h2{
  font-size:22px;
  margin-bottom:10px;
  color:#e0b068;
}

.ad-sub{
  margin-bottom:12px;
  color:#9aa0b3;
}

.ad-warning{
  color:#f59e0b;
  font-size:13px;
}

.ad-banners{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:18px 0;
}

.ad-banners img{
  max-width:100%;
  background:#000;
  border-radius:6px;
}

.ad-stats{
  padding-left:18px;
}

.ad-stats li{
  margin-bottom:6px;
  color:#cbd5f5;
}

/* ============================================================
   RESPONSIVE
============================================================ */

@media (max-width:1100px){

  .main-layout{
    grid-template-columns:1fr;
  }

  .main-right{
    position:static;
    order:2;
    margin-top:30px;
  }

}

@media (max-width:768px){

  .reg-wrapper{
    padding:10px;
  }

  .account-type-grid{
    grid-template-columns:1fr;
  }

  .account-card{
    grid-template-columns:1fr 120px;
  }

  .account-img img{
    height:150px;
  }

}
/* ============================================================
   REGISTER PAGE — MAIN LAYOUT FIX
============================================================ */

.registration-page .main-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px; /* left flexible, right fixed */
  gap: 22px;
  max-width: 1400px;
  margin: 0 auto;
  padding: 24px 18px 40px;
  align-items: start;
}

/* LEFT COLUMN */
.registration-page .main-left {
  min-width: 0; /* critical for grid overflow bugs */
}

/* RIGHT SIDEBAR WRAPPER */
.registration-page aside.main-right {
  width: 100%;
  align-self: stretch;
}

/* EDGE ALIGN SIDEBAR PANELS */
.registration-page aside.main-right .mini-section,
.registration-page aside.main-right .side-panel {
  width: 100%;
}

/* STICKY ONLY ON DESKTOP */
@media (min-width: 992px) {
  .registration-page aside.main-right {
    position: sticky;
    top: 90px;
  }
}

/* MOBILE STACK */
@media (max-width: 991px) {
  .registration-page .main-layout {
    grid-template-columns: 1fr;
  }

  .registration-page aside.main-right {
    position: static;
    order: 2;
  }
}
