/* ── Auction AI ── */
.auction-ai {
  padding: 64px 0 80px;
  background: var(--white);
}
.auction-ai-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr);
  gap: 48px;
  align-items: center;
  position: relative;
  min-height: 520px;
  padding: 48px;
  overflow: hidden;
  border: 1px solid rgba(66, 133, 255, .32);
  border-radius: 14px;
  background:
    radial-gradient(circle at 78% 46%, rgba(64, 152, 255, .14), transparent 32%),
    linear-gradient(120deg, #fff 0%, #fbfdff 52%, #f5f9ff 100%);
}
.auction-ai-panel::before {
  content: '';
  position: absolute;
  width: 520px;
  height: 520px;
  right: -80px;
  top: 0;
  background-image: radial-gradient(rgba(71, 137, 255, .2) 1.5px, transparent 1.5px);
  background-size: 28px 28px;
  mask-image: radial-gradient(circle, #000 0%, transparent 68%);
  pointer-events: none;
}
.auction-ai-copy { position: relative; z-index: 3; }
.auction-ai-badge {
  display: inline-flex;
  padding: 7px 22px;
  margin-bottom: 16px;
  border-radius: 100px;
  background: linear-gradient(110deg, #1265ff, #a66cff);
  box-shadow: 0 8px 20px rgba(77, 90, 255, .22);
  color: #fff;
  font-weight: 800;
  letter-spacing: .08em;
}
.auction-ai-copy h2 {
  font-size: clamp(32px, 3.4vw, 43px);
  line-height: 1.22;
  letter-spacing: -.035em;
  color: #0a1932;
  font-weight: 800;
}
.auction-ai-copy h2 em {
  font-style: normal;
  font-size: 1.4em;
  background: linear-gradient(135deg, #168cff, #875cff);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-weight: 800;
}
.auction-ai-copy h3 {
  margin-top: 20px;
  font-size: clamp(22px, 2.5vw, 30px);
  color: #0a1932;
  font-weight: 700;
}
.auction-ai-copy p {
  margin-top: 20px;
  line-height: 1.9;
  color: #24354f;
}
.auction-ai-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  min-width: 460px;
  margin-top: 28px;
  padding: 16px 28px;
  border-radius: 100px;
  background: linear-gradient(100deg, #9a61f5 0%, #1265ff 100%);
  box-shadow: 0 8px 22px rgba(55, 91, 255, .22);
  color: #fff;
  font-weight: 800;
  transition: transform var(--transition), box-shadow var(--transition);
  font-weight: 600;
}
.auction-ai-cta:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(55, 91, 255, .3); }
.auction-ai-visual {
  position: relative;
  min-height: 430px;
  z-index: 2;
}
.auction-ai-orbit {
  position: absolute;
  left: 50%;
  top: 50%;
  border: 1px solid rgba(62, 135, 255, .2);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.auction-ai-orbit--1 { width: 310px; height: 310px; }
.auction-ai-orbit--2 { width: 410px; height: 410px; }


/* ノートPC */
.auction-ai-laptop {
  position: absolute;
  z-index: 2;
  left: -34%;
  bottom: 10%;
  width: 79%;
  height: auto;
  object-fit: contain;
  pointer-events: none;
}

.auction-ai-center {
  position: absolute;
  z-index: 5;
  left: 50%; top: 50%;
  width: 160px; height: 160px;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 18px solid rgba(255,255,255,.92);
  border-radius: 50%;
  background: linear-gradient(145deg, #278eff, #7959f5);
  box-shadow: 0 18px 40px rgba(46, 102, 230, .28);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* .auction-ai-center svg { width: 86px; height: 86px; opacity: .95; } */

.auction-ai-center-icon {
  width: 100%;
  max-width: 130px;
  height: auto;
  object-fit: contain;
}

.auction-ai-center strong { position: absolute; font-size: 28px; bottom: 8px; font-size: 20px;}
.auction-ai-feature {
  position: absolute;
  z-index: 4;
  width: 142px; height: 142px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  /* gap: 10px; */
  padding: 14px;
  border: 10px solid rgba(255,255,255,.9);
  border-radius: 50%;
  background: rgba(255,255,255,.98);
  box-shadow: 0 12px 32px rgba(45, 92, 170, .12);
  color: #1265dd;
  text-align: center;
}
.auction-ai-feature-icon svg { width: 52px; height: 52px; }
.auction-ai-feature strong { font-size: 14px; line-height: 1.35; }
.auction-ai-feature--product {    left: 5%;
    top: -4%; }
.auction-ai-feature--price {     right: 8%;
    top: 2%; }
.auction-ai-feature--match {     left: 14%;
    bottom: -7%; }
.auction-ai-feature--support {     right: 7%;
    bottom: 7%; }
.auction-ai-visual small { position: absolute; right: 0; bottom: -24px; color: #6c7890; font-size: 12px; }

@media (max-width: 1080px) {
  .auction-ai-panel { grid-template-columns: 1fr; }
  .auction-ai-copy { text-align: center; }
  .auction-ai-copy p { text-align: left; max-width: 720px; margin-left: auto; margin-right: auto; }
  .auction-ai-visual { width: 100%; max-width: 600px; margin: 0 auto; }
}
@media (max-width: 768px) {
  .auction-ai { padding: 48px 0; }
  .auction-ai-panel { padding: 32px 20px 40px; gap: 28px; }
  .auction-ai-copy h2 br { display: none; }
  .auction-ai-copy p br { display: none; }
  .auction-ai-cta { min-width: 0; width: 100%; padding: 15px 18px; gap: 10px; }
  .auction-ai-visual { min-height: 390px; transform: scale(.9); transform-origin: center top; margin-bottom: -35px;         margin-top: 37vw;}
    .auction-ai-laptop {
                left: auto;
        right: auto;
        bottom: 100%;
        width: 80%;
  }
  .auction-ai-feature--product {    left: 3%;
    top: -0%; }
.auction-ai-feature--price {     right: 2%;
    top: 0%; }
.auction-ai-feature--match {     left: 2%;
    bottom: -1%; }
.auction-ai-feature--support {     right: 2%;
    bottom: 1%; }
}
@media (max-width: 480px) {
  .auction-ai-panel { padding: 28px 16px 36px; }
  .auction-ai-copy h2 { font-size: 30px; }
  .auction-ai-copy h3 { font-size: 21px; }
  .auction-ai-visual { min-height: 330px; transform: scale(.72); width: 132%; margin-left: -16%; margin-bottom: -80px; }
}
