/* Audit page — six-layer spec section
   Two grouped columns, numbered rows, proper type hierarchy. */

.layers-sec{padding-top:0}
.layers{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(1rem,2.5vw,2rem);
  margin-top:clamp(1.5rem,3vw,2.5rem);
}

.layer-group{
  border:1px solid rgb(255 255 255 / .1);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgb(255 255 255 / .05), rgb(255 255 255 / .015));
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:0 1px 0 rgb(255 255 255 / .12) inset, 0 24px 60px -30px rgb(0 0 0 / .8);
  overflow:hidden;
}

.layer-group-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;flex-wrap:wrap;
  padding:1rem 1.25rem;
  border-bottom:1px solid rgb(255 255 255 / .08);
  background:rgb(0 0 0 / .25);
}

.layer-badge{
  font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;
  text-transform:uppercase;font-weight:700;
  padding:.3rem .6rem;border-radius:var(--radius-sm);
}
.layer-badge.tech{background:rgb(255 215 0 / .14);color:var(--accent);border:1px solid rgb(255 215 0 / .3)}
.layer-badge.geo{background:rgb(167 139 250 / .14);color:var(--info);border:1px solid rgb(167 139 250 / .3)}

.layer-count{
  font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;
  text-transform:uppercase;color:var(--text-faint);
}

.layer-list{list-style:none;margin:0;padding:0}

.layer-item{
  display:grid;
  grid-template-columns:2.2rem 1fr;
  gap:1rem;
  padding:1.1rem 1.25rem;
  border-bottom:1px solid rgb(255 255 255 / .06);
  transition:background .25s ease;
}
.layer-item:last-child{border-bottom:none}
.layer-item:hover{background:rgb(255 215 0 / .04)}

.layer-idx{
  font-family:var(--mono);
  font-size:.7rem;
  font-weight:700;
  color:var(--text-faint);
  letter-spacing:.04em;
  padding-top:.15rem;
  transition:color .25s ease;
}
.layer-item:hover .layer-idx{color:var(--accent)}

.layer-body h3{
  font-family:var(--sans);
  font-size:.95rem;
  font-weight:700;
  letter-spacing:-.01em;
  color:var(--text-hi);
  margin:0 0 .3rem;
  line-height:1.3;
}
.layer-body p{
  font-size:.82rem;
  line-height:1.6;
  color:var(--text-dim);
  margin:0;
  max-width:42ch;
}

/* expandable detail */
.layer-detail{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease, padding .35s ease, opacity .3s ease;
  opacity:0;
  padding:0 1.25rem;
}
.layer-item.expanded .layer-detail{
  max-height:200px;
  opacity:1;
  padding:.6rem 1.25rem 1rem;
}
.layer-detail p{
  font-size:.78rem;
  color:var(--text-faint);
  line-height:1.55;
}
.layer-item{
  cursor:pointer;
}
.layer-item::after{
  content:'';
  position:absolute;
  right:1.25rem;
  top:50%;
  transform:translateY(-50%) rotate(0deg);
  width:6px;height:6px;
  border-right:1.5px solid var(--text-faint);
  border-bottom:1.5px solid var(--text-faint);
  transition:transform .25s ease;
}
.layer-item.expanded::after{
  transform:translateY(-70%) rotate(225deg);
}
.layer-item{
  position:relative;
  padding-right:2.5rem;
}

@media(max-width:820px){
  .layers{grid-template-columns:1fr}
}
