﻿/* ==========================================================
   NERPATHRAM v3.5.8 — PORTRAIT MAGAZINE COVER SYSTEM
   All published edition thumbnails should read as magazine
   covers, never landscape banners.
   ========================================================== */

:root{
  --np-cover-ratio: 3200 / 4450;
}

/* New Daily + Special edition cards */
.np-card-cover,
.np-special-cover{
  position:relative!important;
  aspect-ratio:var(--np-cover-ratio)!important;
  width:100%!important;
  height:auto!important;
  padding:7px!important;
  overflow:hidden!important;
  border-radius:12px 12px 8px 8px!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.03)),
    #061827!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.10),
    0 12px 28px rgba(0,0,0,.24)!important;
}

.np-card-cover:after,
.np-special-cover:after{
  content:""!important;
  pointer-events:none!important;
  position:absolute!important;
  inset:7px!important;
  border-radius:5px!important;
  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,.14),
    inset 12px 0 18px rgba(0,0,0,.08)!important;
}

.np-card-cover img,
.np-special-cover img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center top!important;
  border-radius:5px!important;
  background:#fff!important;
  box-shadow:0 6px 17px rgba(0,0,0,.20)!important;
}

.np-daily-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
}

.np-special-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}

.np-card,
.np-special-card{
  border-radius:15px!important;
  overflow:hidden!important;
}

.np-card-copy,
.np-special-copy{
  border-top:1px solid rgba(255,255,255,.08)!important;
}

/* Knowledge Library guide thumbnails are also portrait. */
.np-library-card{
  grid-template-columns:102px 1fr!important;
  align-items:start!important;
}

.np-library-card img{
  width:102px!important;
  height:auto!important;
  aspect-ratio:var(--np-cover-ratio)!important;
  object-fit:contain!important;
  object-position:center top!important;
  padding:4px!important;
  border-radius:8px!important;
  background:#eef1f3!important;
  box-shadow:0 7px 17px rgba(0,0,0,.12)!important;
}

/* Compatibility with earlier Nerpathram dashboard/archive card classes. */
.latest-mini-cover,
.recent-compact-cover,
.special-compact-cover,
.archive-cover,
.issue-cover,
.archive-card-cover,
.archive-thumb,
.edition-cover{
  aspect-ratio:var(--np-cover-ratio)!important;
  height:auto!important;
  overflow:hidden!important;
  border-radius:10px!important;
  background:#eef1f3!important;
  box-shadow:0 9px 22px rgba(0,0,0,.16)!important;
}

.latest-mini-cover img,
.recent-compact-cover img,
.special-compact-cover img,
.archive-cover img,
.issue-cover img,
.archive-card-cover img,
.archive-thumb img,
.edition-cover img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center top!important;
  background:#fff!important;
}

/* If an old archive card puts the image directly inside the card. */
.archive-card > img,
.issue-card > img{
  aspect-ratio:var(--np-cover-ratio)!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center top!important;
  background:#fff!important;
  border-radius:8px!important;
  box-shadow:0 8px 20px rgba(0,0,0,.14)!important;
}

/* Header: make room for Connect as the last main menu item. */
.np-nav{
  gap:3px!important;
}
.np-nav a{
  padding-left:8px!important;
  padding-right:8px!important;
}

/* Tablet */
@media(max-width:1180px){
  .np-daily-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .np-special-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* Mobile: keep portrait cover cards in horizontal magazine shelves. */
@media(max-width:760px){
  .np-daily-grid,
  .np-special-grid{
    display:flex!important;
    overflow-x:auto!important;
    gap:10px!important;
    scroll-snap-type:x mandatory!important;
  }
  .np-card{
    flex:0 0 178px!important;
    scroll-snap-align:start!important;
  }
  .np-special-card{
    flex:0 0 188px!important;
    scroll-snap-align:start!important;
  }
  .np-library-card{
    grid-template-columns:82px 1fr!important;
  }
  .np-library-card img{
    width:82px!important;
  }
}
