@import url("beyondbox.css");

/* =====================================
   Beyond Post (Zen WIP view)
   - chips everywhere
   - consistent grids (4 desktop / 2 mobile)
   - centered layout
   - 16:9 image cards (no hacks)
===================================== */

.beyond-post{
  padding: 34px 0 80px;
}

/* --- Cover / hero (smaller, zen) --- */
.beyond-hero{
  max-width: 860px;
  margin: 0 auto 26px;
  padding: 0 14px;
}

.beyond-hero img{
  width:100%;
  display:block;
  border-radius:22px;
  max-height: 460px;
  object-fit: cover;
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}

/* --- Header --- */
.beyond-header{
  max-width: 860px;
  margin: 0 auto 44px;
  padding: 0 14px;
}

.beyond-header h1{
  font-size: clamp(28px, 4vw, 42px);
  margin: 12px 0 10px;
  letter-spacing: .02em;
}

.beyond-excerpt{
  opacity:.86;
  font-size:15px;
  line-height:1.65;
  margin: 0 0 10px;
}

/* --- Meta chips row (like beyond feed) --- */
.beyond-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom: 10px;
}

.beyond-meta > *{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:11px;
  padding:6px 12px;
  border-radius:999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  letter-spacing:.10em;
  text-transform:uppercase;
  white-space:nowrap;
}

.beyond-meta .b-status{ font-weight:900; }
.beyond-meta .b-status.is-wip{
  border-color: rgba(255, 210, 90, .25);
  background: rgba(255, 210, 90, .10);
}
.beyond-meta .b-status.is-pub{
  border-color: rgba(90, 255, 180, .22);
  background: rgba(90, 255, 180, .10);
}
.beyond-meta .b-owner,
.beyond-meta .b-date{ opacity:.85; }

/* --- Tags chips --- */
.beyond-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.beyond-tags span{
  font-size:11px;
  padding:6px 12px;
  border-radius:999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  opacity:.9;
}

/* =====================================
   WIP stages (chips + glass cards)
===================================== */

.beyond-wip{
  max-width: 860px;
  margin: 0 auto;
  padding: 0 14px;
}

.wip-stage{
  margin: 0 0 44px;
  padding: 18px 18px 22px;
  border-radius: 22px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 16px 55px rgba(0,0,0,.28);
}

/* Stage header layout */
.wip-stage-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin: 0 0 10px;
  flex-wrap: wrap;
}

/* STEP chip */
.wip-step{
  display:inline-flex;
  align-items:center;
  font-size:11px;
  padding:6px 12px;
  border-radius:999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
  opacity:.95;
}

/* Stage title */
.wip-stage h2{
  margin:0;
  font-size:18px;
  letter-spacing:.01em;
}

/* Stage text */
.wip-text{
  margin-top: 8px;
  font-size:14px;
  line-height:1.7;
  opacity:.9;
}

/* =====================================
   Stage gallery: 16:9 cards grid
   - 4 desktop
   - 3 medium
   - 2 mobile
   - centered if fewer
===================================== */

.wip-gallery{
  margin-top: 14px;
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  justify-content:center;
}

/* Card */
.wip-gallery a{
  display:block;
  border-radius:18px;
  overflow:hidden;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 12px 34px rgba(0,0,0,.24);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  aspect-ratio: 16 / 9;     /* ✅ always 16:9 */
}

/* Image fills card (cropped only in grid, not in lightbox) */
.wip-gallery a img{
  width:100%;
  height:100%;
  object-fit: cover;
  display:block;
}

/* Hover */
.wip-gallery a:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 50px rgba(0,0,0,.34);
  border-color: rgba(255,255,255,.18);
}

/* Medium screens -> 3 columns */
@media (max-width: 980px){
  .wip-gallery{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Mobile -> 2 columns */
@media (max-width: 680px){
  .wip-gallery{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wip-stage{ padding: 16px 14px 18px; border-radius: 20px; }
}

/* Very small -> keep 2 but reduce gaps a bit */
@media (max-width: 420px){
  .wip-gallery{ gap: 10px; }
}

/* Optional: tighter spacing when no text */
.wip-stage .wip-text:empty{ display:none; }
