/* InfoZone — Luxe Light (Forced Light)
   - Bright, modern, premium spacing
   - No external dependencies
   - Ad placements: left/right side rails + 3-rect rows (Nairaland-like)
*/

:root{
  /* Surfaces */
  --iz-bg: #fbfcff;
  --iz-surface: #ffffff;
  --iz-surface-2: #f5f7ff;
  --iz-surface-3: #eef2ff;

  /* Text */
  --iz-text: #0a1020;
  --iz-muted: #4f5b6c;

  /* Lines */
  --iz-border: rgba(10, 16, 32, .10);

  /* Brand */
  --iz-brand: #1d4ed8;   /* blue */
  --iz-accent:#7c3aed;   /* violet */
  --iz-warm:  #f97316;   /* orange */

  /* Shape */
  --iz-radius: 20px;
  --iz-radius-sm: 14px;

  /* Elevation */
  --iz-shadow: 0 18px 55px rgba(2, 6, 23, .10);
  --iz-shadow-sm: 0 10px 28px rgba(2, 6, 23, .08);

  --iz-container: 1200px;         /* center column max */
  --iz-rail: 300px;               /* side ad width */
  --iz-gutter: 18px;

  --iz-ease: cubic-bezier(.2, .8, .2, 1);
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height:1.6;
  color:var(--iz-text);
  background:
    radial-gradient(1200px 760px at 12% -10%, rgba(29,78,216,.08), transparent 62%),
    radial-gradient(1100px 640px at 92% 0%, rgba(249,115,22,.06), transparent 60%),
    radial-gradient(1000px 620px at 54% 120%, rgba(124,58,237,.06), transparent 60%),
    var(--iz-bg);
}

a{ color:inherit; text-decoration:none; }
a:hover{ text-decoration:underline; text-decoration-color: rgba(29,78,216,.35); }
img{ max-width:100%; height:auto; display:block; }

/* Containers */
.iz-container{ width:min(var(--iz-container), calc(100% - 32px)); margin-inline:auto; }
.iz-content{ padding: 18px 0 54px; }

/* Header */
.iz-header{
  position:sticky; top:0; z-index:50;
  background: rgba(255,255,255,.90);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--iz-border);
}
.iz-header__row{ display:flex; align-items:center; justify-content:space-between; padding:12px 0; gap:12px; }
.iz-header__brand{ display:flex; align-items:center; gap:10px; min-width: 180px; }
.iz-brand{ display:flex; align-items:center; gap:10px; font-weight: 950; letter-spacing:.15px; }
.iz-brand__img{ height:36px; width:auto; border-radius:14px; box-shadow: var(--iz-shadow-sm); }

/* Nav toggle */
.iz-navtoggle{
  display:none;
  border:1px solid var(--iz-border);
  background: rgba(255,255,255,.96);
  border-radius: 14px;
  padding: 10px;
  cursor:pointer;
  box-shadow: 0 10px 22px rgba(2,6,23,.06);
}
.iz-navtoggle__bar{ display:block; width:18px; height:2px; background: var(--iz-text); margin:3px 0; opacity:.9; border-radius:2px; }

/* Navigation */
.iz-site-nav{ flex:1; }
.iz-nav__inner{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.iz-nav__left, .iz-nav__right{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }

.iz-link, .iz-nav__link{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.56rem .78rem;
  border-radius: 999px;
  border:1px solid transparent;
  color: var(--iz-text);
  transition: background .18s var(--iz-ease), border-color .18s var(--iz-ease), transform .18s var(--iz-ease);
}
.iz-link:hover, .iz-nav__link:hover{
  text-decoration:none;
  background: rgba(29,78,216,.06);
  border-color: rgba(29,78,216,.14);
  transform: translateY(-1px);
}

.iz-nav__group{ position:relative; }
.iz-nav__button{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.56rem .78rem;
  border-radius:999px;
  border:1px solid transparent;
  background:transparent;
  color:var(--iz-text);
  cursor:pointer;
  transition: background .18s var(--iz-ease), border-color .18s var(--iz-ease);
}
.iz-nav__button:hover{ background: rgba(29,78,216,.06); border-color: rgba(29,78,216,.14); }

.iz-nav__menu{
  position:absolute; top: calc(100% + 10px); left:0;
  min-width: 270px;
  padding: 10px;
  border-radius: var(--iz-radius);
  border:1px solid var(--iz-border);
  background: rgba(255,255,255,.98);
  box-shadow: var(--iz-shadow);
}
.iz-nav__menuitem{
  display:block;
  padding: .64rem .82rem;
  border-radius: 14px;
}
.iz-nav__menuitem:hover{ background: rgba(29,78,216,.06); text-decoration:none; }
.iz-nav__menusep{ height:1px; background: var(--iz-border); margin:8px 6px; }

.iz-badge{
  display:inline-flex; align-items:center; justify-content:center;
  min-width: 20px; height: 20px;
  padding: 0 7px;
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 900;
  background: rgba(249,115,22,.14);
  border:1px solid rgba(249,115,22,.26);
}

/* Hero */
.iz-hero{ padding: 22px 0 14px; }
.iz-hero__inner{
  border-radius: calc(var(--iz-radius) + 10px);
  border: 1px solid var(--iz-border);
  background:
    linear-gradient(135deg, rgba(29,78,216,.09), rgba(249,115,22,.06), rgba(124,58,237,.06)),
    rgba(255,255,255,.96);
  box-shadow: var(--iz-shadow);
  padding: 24px 20px;
}
.iz-hero__title{ margin:0 0 8px; font-size: clamp(1.55rem, 2.5vw, 2.2rem); letter-spacing:.15px; }
.iz-hero__text{ margin:0; color: var(--iz-muted); max-width: 76ch; }

/* Breadcrumb */
.iz-breadcrumb{ margin: 14px 0; }
.iz-breadcrumb__list{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:8px; }
.iz-breadcrumb__link{
  display:inline-flex; align-items:center;
  padding:.45rem .65rem;
  border-radius: 999px;
  border:1px solid var(--iz-border);
  background: rgba(255,255,255,.96);
}

/* --- Ad Layout (Nairaland-like) --- */
.iz-page{
  width:min(calc(var(--iz-container) + (var(--iz-rail) * 2) + (var(--iz-gutter) * 2)), calc(100% - 32px));
  margin-inline:auto;
}
.iz-ads-layout{
  display:grid;
  grid-template-columns: var(--iz-rail) minmax(0, var(--iz-container)) var(--iz-rail);
  gap: var(--iz-gutter);
  align-items:start;
}
@media (max-width: 1200px){
  .iz-ads-layout{
    grid-template-columns: 1fr;
  }
}
.iz-ads-rail{
  position: sticky;
  top: 84px;   /* below header */
  align-self: start;
}
@media (max-width: 1200px){
  .iz-ads-rail{ position: static; }
}

.iz-adslot{
  border: 1px dashed rgba(29,78,216,.22);
  background:
    linear-gradient(135deg, rgba(29,78,216,.05), rgba(249,115,22,.03)),
    rgba(255,255,255,.98);
  border-radius: var(--iz-radius);
  box-shadow: var(--iz-shadow-sm);
  overflow:hidden;
}
.iz-adslot__inner{ padding: 14px; display:flex; align-items:center; justify-content:space-between; gap: 12px; }
.iz-adslot__badge{
  display:inline-flex;
  padding:.32rem .58rem;
  border-radius:999px;
  font-weight: 950;
  font-size:.78rem;
  background: rgba(29,78,216,.10);
  border: 1px solid rgba(29,78,216,.18);
}
.iz-adslot__meta{ margin: 6px 0 0; color: var(--iz-muted); }

.iz-ads-row{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 16px 0;
}
@media (max-width: 980px){
  .iz-ads-row{ grid-template-columns: 1fr; }
}

/* Forum categories */
.iz-forumcat{ margin-top: 16px; }
.iz-forumcat__header{ display:flex; align-items:center; justify-content:space-between; margin: 0 0 10px; }
.iz-forumcat__title{ margin:0; font-size:1.12rem; font-weight: 950; }
.iz-forumcat__body{
  border: 1px solid var(--iz-border);
  background: rgba(255,255,255,.98);
  border-radius: var(--iz-radius);
  box-shadow: var(--iz-shadow-sm);
  overflow:hidden;
}

/* Table */
.iz-table{ width:100%; border-collapse:separate; border-spacing:0; }
.iz-table thead th{
  text-align:left;
  font-size:.78rem;
  letter-spacing:.38px;
  text-transform: uppercase;
  color: var(--iz-muted);
  padding: 12px 16px;
  border-bottom: 1px solid var(--iz-border);
  background: rgba(255,255,255,.98);
}
.iz-table tbody td{
  padding: 15px 16px;
  border-bottom: 1px solid var(--iz-border);
  vertical-align: top;
}
.iz-table tbody tr:hover td{ background: rgba(29,78,216,.03); }

/* Buttons */
.iz-btn{
  appearance:none;
  border:1px solid var(--iz-border);
  background: rgba(255,255,255,.98);
  color:var(--iz-text);
  padding:.76rem 1.08rem;
  border-radius:999px;
  font-weight: 950;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  cursor:pointer;
  box-shadow: var(--iz-shadow-sm);
  transition: transform .18s var(--iz-ease), box-shadow .18s var(--iz-ease), background .18s var(--iz-ease), border-color .18s var(--iz-ease);
}
.iz-btn:hover{ transform: translateY(-1px); box-shadow: var(--iz-shadow); text-decoration:none; }
.iz-btn--primary{ background: linear-gradient(90deg, rgba(29,78,216,1), rgba(124,58,237,1)); border-color: rgba(29,78,216,.30); color:#fff; }
.iz-btn--secondary{ background: linear-gradient(90deg, rgba(249,115,22,1), rgba(245,158,11,1)); border-color: rgba(249,115,22,.30); color:#1b1207; }
.iz-btn--ghost{ background: transparent; box-shadow:none; }

/* Footer */
.iz-prefooter{ margin-top: 26px; padding: 26px 0; }
.iz-grid{ display:grid; gap: 14px; }
.iz-grid--2{ grid-template-columns: 1.3fr 1fr; }
@media (max-width: 900px){ .iz-grid--2{ grid-template-columns: 1fr; } }
.iz-prefooter__block{
  border: 1px solid var(--iz-border);
  background: rgba(255,255,255,.98);
  border-radius: var(--iz-radius);
  box-shadow: var(--iz-shadow-sm);
  padding: 18px;
}
.iz-footer{ border-top:1px solid var(--iz-border); padding: 18px 0 30px; margin-top: 18px; }
.iz-footer__row{ display:flex; align-items:center; justify-content:space-between; gap: 12px; flex-wrap:wrap; }
.iz-footer__links{ display:flex; gap: 10px; list-style:none; padding:0; margin:0; flex-wrap:wrap; }
.iz-footer__link{ padding:.4rem .6rem; border-radius:999px; }
.iz-footer__meta{ color: var(--iz-muted); }

/* Back to top */
.iz-totop{
  position:fixed; right:16px; bottom:16px; z-index:60;
  width:44px; height:44px;
  border-radius: 999px;
  border:1px solid var(--iz-border);
  background: rgba(255,255,255,.98);
  color: var(--iz-text);
  box-shadow: var(--iz-shadow-sm);
}

/* phpBB overlays (avoid stray X) */
#darkenwrapper{ display:none; position:fixed; inset:0; z-index:1000; }
#darken{ position:absolute; inset:0; background: rgba(2,6,23,.55); }
.phpbb_alert{ display:none; position:fixed; inset:auto 16px 16px auto; z-index:1001; width:min(520px, calc(100% - 32px)); }
.phpbb_alert, #phpbb_confirm{
  border:1px solid var(--iz-border);
  background: rgba(255,255,255,.98);
  border-radius: var(--iz-radius);
  box-shadow: var(--iz-shadow);
  padding: 14px 14px 12px;
}
.iz-alert__close{
  position:absolute; top:10px; right:10px;
  width:34px; height:34px;
  border-radius: 14px;
  border:1px solid var(--iz-border);
  background: rgba(255,255,255,.98);
  cursor:pointer;
  line-height: 1;
}

/* Mobile */
@media (max-width: 980px){
  .iz-navtoggle{ display:inline-flex; }
  .iz-site-nav{ display:none; }
  .iz-site-nav.iz-nav--open{ display:block; }
  .iz-nav__inner{ flex-direction:column; align-items:stretch; }
  .iz-nav__left, .iz-nav__right{ flex-direction:column; align-items:stretch; }
  .iz-nav__menu{ position:static; min-width: auto; margin-top: 8px; }
}

/* Utilities */
.iz-hidden{ display:none; }

/* Centralize text across the page (as requested) */
body, .iz-shell, .iz-shell *{
  text-align: center;
}


/* Center forum titles (custom) */
.iz-center{ text-align:center; }
.iz-forumrow__onlytitle{ width:100%; text-align:center; }
.iz-forumrow__main{ text-align:center; }


/* Auth buttons + welcome label in top navigation */
.iz-nav__auth{ display:inline-flex; align-items:center; gap:.6rem; }
.iz-nav__authbtn{ padding:.62rem 1rem; font-weight: 900; }
.iz-nav__welcome{
  display:inline-flex;
  align-items:center;
  padding:.56rem .6rem;
  font-weight: 900;
  letter-spacing: .01em;
  color: var(--iz-text);
  opacity: .92;
}
@media (max-width: 700px){
  .iz-nav__welcome{ display:none; } /* keep nav compact on mobile */
}
