/* assets/css/index.css
   Home page specific
*/

.hero{
  position:relative;
  padding:74px 0 40px;
}

.hero-bg{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
}
.blob{
  position:absolute;
  border-radius:999px;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.25), rgba(255,255,255,0) 45%),
              radial-gradient(circle at 35% 30%, rgba(255,75,110,.22), rgba(255,75,110,0) 52%),
              radial-gradient(circle at 70% 70%, rgba(255,45,45,.22), rgba(255,45,45,0) 55%);
  filter: blur(2px);
  opacity:.9;
}

/* Light: blobs should not wash the UI */
:root[data-theme="light"] .blob{
  opacity:.35;
  filter: blur(6px);
}

.b1{ width:420px; height:420px; left:-120px; top:-130px; }
.b2{ width:520px; height:520px; right:-220px; top:-200px; opacity:.75; }
.b3{ width:460px; height:460px; right:-120px; bottom:-210px; opacity:.8; }
.b4{ width:380px; height:380px; left:10%; bottom:-220px; opacity:.7; }

.hero-inner{
  display:grid;
  grid-template-columns: 1.35fr .65fr;
  gap:18px;
  align-items:start;
}

.hero-card{
  padding:26px 24px 20px;
  box-shadow: var(--shadow);
}

.hero-top{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:12px;
}

.hero-title{
  margin:0 0 10px;
  font-family: var(--font-display);
  letter-spacing:.05em;
  text-transform:uppercase;
  font-size:44px;
  line-height:1.02;
}

/* Light: first line must be readable */
:root[data-theme="light"] .hero-title{
  color: rgba(18,19,26,.96);
}

.hero-title .accent{
  background: linear-gradient(90deg, var(--accent), var(--accent2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
:root[data-theme="light"] .hero-title .accent{
  background: linear-gradient(90deg, rgba(255,45,45,1), rgba(255,75,110,.92));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.hero-sub{
  margin:0 0 16px;
  color: rgba(232,232,238,.86);
  font-size:14px;
  line-height:1.65;
  max-width: 62ch;
}
:root[data-theme="light"] .hero-sub{
  color: rgba(18,19,26,.78);
}

.hero-cta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin: 10px 0 16px;
}

.hero-meta{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
  padding-top:12px;
  border-top: 1px solid rgba(255,255,255,.12);
}
:root[data-theme="light"] .hero-meta{
  border-top-color: rgba(0,0,0,.10);
}

.meta-item{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.meta-k{
  color: rgba(232,232,238,.6);
  font-size:12px;
  letter-spacing:.03em;
  text-transform:uppercase;
}
:root[data-theme="light"] .meta-k{
  color: rgba(18,19,26,.56);
}

.meta-v a{
  color: rgba(232,232,238,.9);
  text-decoration:none;
}
.meta-v a:hover{
  color: #fff;
  text-decoration:underline;
}
:root[data-theme="light"] .meta-v a{
  color: rgba(18,19,26,.88);
}
:root[data-theme="light"] .meta-v a:hover{
  color: rgba(18,19,26,1);
}

.hero-side{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.stat-card{
  padding:18px 18px 16px;
  box-shadow: var(--shadow-soft);
}
.stat-title{
  color: rgba(232,232,238,.6);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin:0 0 8px;
}
:root[data-theme="light"] .stat-title{
  color: rgba(18,19,26,.56);
}

.stat-value{
  font-weight:900;
  letter-spacing:.02em;
  margin:0 0 6px;
}
:root[data-theme="light"] .stat-value{
  color: rgba(18,19,26,.95);
}

.stat-desc{
  margin:0;
  color: rgba(232,232,238,.78);
  font-size:13px;
  line-height:1.55;
}
:root[data-theme="light"] .stat-desc{
  color: rgba(18,19,26,.72);
}

/* Latest builds cards */
.build-card{
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:12px;
  box-shadow: var(--shadow-soft);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.build-card:hover{
  transform: translateY(-2px);
  border-color: rgba(255,45,45,.22);
}
:root[data-theme="light"] .build-card:hover{
  border-color: rgba(255,45,45,.28);
}

.thumb{
  height:150px;
  border-radius:18px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(280px 160px at 20% 30%, rgba(255,45,45,.14), transparent 55%),
    linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
}

/* Light: thumb frame and placeholder */
:root[data-theme="light"] .thumb{
  border-color: rgba(0,0,0,.10);
  background:
    radial-gradient(280px 160px at 20% 30%, rgba(255,45,45,.10), transparent 55%),
    linear-gradient(135deg, rgba(255,255,255,.55), rgba(255,255,255,.35));
}

/* IMPORTANT: ensure BG thumbs ALWAYS cover (fix "shows real size / partial") */
.thumb.has-img{
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:cover !important;
}

.build-title{
  font-weight:800;
  letter-spacing:.02em;
}
:root[data-theme="light"] .build-title{
  color: rgba(18,19,26,.95);
}

.build-meta{
  color: var(--muted);
  font-size:13px;
  margin-top:4px;
}

/* Split section */
.section-split{
  padding-top:22px;
}
.split{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:18px;
}
.split-card{
  padding:22px;
  box-shadow: var(--shadow-soft);
}
.split-title{
  margin:0 0 10px;
  font-family: var(--font-display);
  letter-spacing:.05em;
  text-transform:uppercase;
  font-size:14px;
}
:root[data-theme="light"] .split-title{
  color: rgba(18,19,26,.92);
}

.split-text{
  margin:0 0 14px;
  color: rgba(232,232,238,.82);
  font-size:13px;
  line-height:1.6;
}
:root[data-theme="light"] .split-text{
  color: rgba(18,19,26,.72);
}

/* Responsive */
@media (max-width: 980px){
  .hero-inner{ grid-template-columns: 1fr; }
  .hero-title{ font-size:36px; }
  .hero-meta{ grid-template-columns: 1fr; }
  .split{ grid-template-columns: 1fr; }
}
@media (max-width: 560px){
  .hero{ padding-top:54px; }
  .hero-card{ padding:22px 18px 18px; }
  .hero-title{ font-size:30px; }
  .thumb{ height:130px; }
}

/* --- Home: dynamic sections --- */
.hero-stats{
  margin-top:14px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.stat-chip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(10px);
  box-shadow: 0 12px 26px rgba(0,0,0,.35);
  font-size:13px;
}
.stat-chip .k{ color: rgba(232,232,238,.78); }
.stat-chip .v{
  font-weight:900;
  letter-spacing:.02em;
}

/* Light: chips readable */
:root[data-theme="light"] .stat-chip{
  border-color: rgba(0,0,0,.12);
  background: rgba(255,255,255,.82);
  box-shadow: 0 12px 26px rgba(0,0,0,.10);
}
:root[data-theme="light"] .stat-chip .k{
  color: rgba(18,19,26,.62);
}
:root[data-theme="light"] .stat-chip .v{
  color: rgba(18,19,26,.92);
}

.cards-3{
  grid-template-columns: repeat(3, 1fr);
}

.section-actions{
  margin-top:16px;
  display:flex;
  justify-content:center;
}

.thumb.has-img{
  background-size: cover;
  background-position: center;
  position:relative;
  overflow:hidden;
}
.thumb.has-img::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.00), rgba(0,0,0,.20) 55%, rgba(0,0,0,.45));
}
:root[data-theme="light"] .thumb.has-img::after{
  background:
    linear-gradient(180deg, rgba(0,0,0,.00), rgba(0,0,0,.14) 55%, rgba(0,0,0,.32));
}

.decal-card{
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:12px;
  box-shadow: var(--shadow-soft);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.decal-card:hover{
  transform: translateY(-2px);
  border-color: rgba(255,45,45,.22);
}
:root[data-theme="light"] .decal-card:hover{
  border-color: rgba(255,45,45,.28);
}

.section-decals{
  padding-top:10px;
}

@media (max-width: 980px){
  .cards-3{ grid-template-columns: 1fr; }
}
