.page-home{
  --home-gold-glow: rgba(255,215,0,.26);
  --home-gold-soft: rgba(255,184,0,.13);
  --home-line: rgba(160,180,208,.16);
  --home-card-bg: rgba(16,34,70,.88);
  --home-card-shadow: rgba(0,0,0,.38);
  --home-caption: rgba(160,180,208,.9);
  --home-kicker-border: rgba(255,215,0,.42);

  background: var(--color-navy);
  color: var(--color-text-light);
  overflow-x: clip;
}

.page-home img{
  max-width:100%;
  height:auto;
  display:block;
}

.page-home h1,
.page-home h2,
.page-home h3{
  font-family: var(--font-headline);
  font-weight: 800;
  letter-spacing:-.02em;
}

.page-home .section-kicker{
  display:inline-block;
  font-family: var(--font-mono);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.75rem;
  color:var(--color-gold);
  border:1px solid var(--home-kicker-border);
  border-radius:999px;
  padding:.3rem .85rem;
  margin-bottom:var(--space-2);
}

.page-home .section-title{
  font-size:clamp(1.65rem, 3vw, 2.5rem);
  line-height:1.12;
  margin-bottom:var(--space-3);
}

.page-home .btn{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  font-family:var(--font-headline);
  font-weight:700;
  border-radius:100px;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);
}

.page-home .btn-primary{
  background:linear-gradient(135deg, var(--color-gold) 0%, var(--color-gold-dark) 100%);
  color:var(--color-navy);
  padding:.85rem 1.6rem;
  border:1px solid rgba(255,184,0,.7);
  box-shadow:0 0 0 1px rgba(255,215,0,.18), 0 10px 24px rgba(255,215,0,.14);
}

.page-home .btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:0 0 32px var(--home-gold-glow), 0 12px 26px rgba(255,215,0,.22);
}

.page-home .btn-ghost{
  color:var(--color-text-light);
  padding:.85rem 1.4rem;
  border:1px solid var(--home-line);
}

.page-home .btn-ghost:hover{
  border-color:var(--color-gold);
  color:var(--color-gold);
  transform:translateY(-2px);
}

/* ========== HERO ========== */
.page-home .home-hero{
  position:relative;
  padding:var(--space-4) var(--space-3) var(--space-6);
  background:
    radial-gradient(circle at 84% 16%, rgba(255,215,0,.09) 0%, transparent 30%),
    radial-gradient(circle at 8% 88%, rgba(27,59,111,.85) 0%, transparent 48%),
    linear-gradient(115deg, var(--color-navy) 0%, var(--color-navy) 52%, var(--color-blue) 52%, var(--color-blue) 61%, var(--color-navy) 61%, var(--color-navy) 100%);
}

.page-home .home-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(160,180,208,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(160,180,208,.06) 1px, transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.55), transparent 82%);
  pointer-events:none;
}

.page-home .home-hero::after{
  content:"";
  position:absolute;
  width:230px;
  height:2px;
  border-radius:2px;
  background:linear-gradient(90deg, transparent, var(--color-gold), transparent);
  opacity:.45;
  top:24%;
  left:-12%;
  animation:homeFlow 6s var(--ease) infinite;
  pointer-events:none;
  filter:blur(.3px);
}

@keyframes homeFlow{
  0%{ transform:translate3d(0,0,0) scaleX(.3); opacity:0; }
  18%{ opacity:.5; }
  50%{ transform:translate3d(56vw, 26px, 0) scaleX(.85); opacity:.28; }
  100%{ transform:translate3d(56vw, 26px, 0) scaleX(.85); opacity:0; }
}

.page-home .hero-layout{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-5);
}

.page-home .breadcrumb-list{
  margin-bottom:var(--space-4);
}

.page-home .breadcrumb-list a,
.page-home .breadcrumb-list span{
  font-family:var(--font-mono);
  font-size:.75rem;
  color:var(--color-text-subtle);
  text-decoration:none;
}

.page-home .breadcrumb-list .breadcrumb-item[aria-current="page"]{
  color:var(--color-gold);
}

.page-home .hero-kicker{
  font-size:.8rem;
  color:var(--color-gold);
  margin-bottom:var(--space-2);
  letter-spacing:.06em;
}

.page-home .hero-title{
  font-size:clamp(2.1rem, 5.4vw, 4rem);
  line-height:1.05;
  margin:0 0 var(--space-3);
  max-width:11em;
}

.page-home .hero-desc{
  font-size:1rem;
  line-height:1.75;
  color:var(--color-text-subtle);
  max-width:34em;
  margin-bottom:var(--space-4);
}

.page-home .hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
  margin-bottom:var(--space-4);
}

.page-home .hero-version{
  font-size:.78rem;
  color:var(--color-text-subtle);
  border-top:1px solid var(--home-line);
  padding-top:var(--space-3);
  max-width:28em;
}

.page-home .hero-media{
  max-width:420px;
  margin:0 auto;
  width:100%;
}

.page-home .hero-media-frame{
  position:relative;
  clip-path:polygon(10% 0, 100% 0%, 90% 100%, 0 100%);
  background:linear-gradient(135deg, var(--color-blue), var(--color-navy));
  padding:8px;
  box-shadow:0 24px 60px rgba(0,0,0,.42);
}

.page-home .hero-media-frame img{
  width:100%;
  height:auto;
  clip-path:polygon(9.5% 0, 100% 0, 90.5% 100%, 0 100%);
}

.page-home .hero-media-caption{
  text-align:right;
  font-size:.75rem;
  color:var(--home-caption);
  margin-top:var(--space-2);
  padding-right:var(--space-2);
}

/* ========== 内容地图 ========== */
.page-home .home-map{
  position:relative;
  z-index:2;
  padding:var(--space-2) 0 var(--space-5);
}

.page-home .map-header{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  margin-bottom:var(--space-3);
}

.page-home .map-title{
  font-size:1.35rem;
  margin:0;
}

.page-home .map-note{
  font-size:.75rem;
  color:var(--color-text-subtle);
}

.page-home .map-list{
  list-style:none;
  padding:0;
  margin:0 0 var(--space-4);
  border-top:1px solid var(--home-line);
}

.page-home .map-item{
  border-bottom:1px solid var(--home-line);
  position:relative;
  overflow:hidden;
}

.page-home .map-item a{
  display:flex;
  align-items:center;
  gap:var(--space-3);
  padding:var(--space-3) .3rem;
  text-decoration:none;
  color:var(--color-text-light);
  transition:color .25s var(--ease), padding-left .25s var(--ease);
}

.page-home .map-item a::after{
  content:"";
  position:absolute;
  top:0;
  left:-90%;
  width:55%;
  height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,215,0,.06), transparent);
  transform:skewX(-15deg);
  transition:left .55s var(--ease);
}

.page-home .map-item a:hover::after{
  left:160%;
}

.page-home .map-item a:hover{
  color:var(--color-gold);
  padding-left:.8rem;
}

.page-home .map-num{
  color:var(--color-gold);
  font-size:.85rem;
}

.page-home .map-label{
  font-family:var(--font-headline);
  font-weight:700;
}

.page-home .map-arrow{
  margin-left:auto;
  color:var(--color-text-subtle);
  transition:color .25s var(--ease), transform .25s var(--ease);
}

.page-home .map-item a:hover .map-arrow{
  color:var(--color-gold);
  transform:translate(2px,-2px);
}

.page-home .map-side{
  border-top:1px dashed var(--home-line);
  padding-top:var(--space-3);
}

.page-home .map-side-label{
  display:block;
  font-size:.72rem;
  color:var(--color-text-subtle);
  margin-bottom:var(--space-2);
}

.page-home .map-side-links{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
}

.page-home .map-side .tag{
  font-family:var(--font-mono);
  font-size:.75rem;
  color:var(--color-text-light);
  border:1px solid var(--home-line);
  border-radius:999px;
  padding:.35rem .9rem;
  text-decoration:none;
  display:inline-block;
  transition:border-color .25s var(--ease), color .25s var(--ease);
}

.page-home .map-side .tag:hover{
  border-color:var(--color-gold);
  color:var(--color-gold);
}

.page-home .map-side .tag--gold{
  color:var(--color-gold);
  border-color:rgba(255,215,0,.45);
}

/* ========== 本地棋牌老版本站点 ========== */
.page-home .home-sites{
  padding:var(--space-6) 0;
  background:var(--color-light-bg);
  color:var(--color-navy);
}

.page-home .home-sites .section-kicker{
  color:var(--color-navy);
  border-color:rgba(10,27,61,.35);
}

.page-home .sites-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-5);
}

.page-home .sites-figure{
  margin:0;
  position:relative;
}

.page-home .sites-figure img{
  width:100%;
  height:auto;
  display:block;
  clip-path:polygon(0 0, 92% 0, 100% 6%, 100% 100%, 8% 100%, 0 92%);
  box-shadow:14px 18px 36px rgba(10,27,61,.14);
}

.page-home .sites-figure figcaption{
  font-family:var(--font-mono);
  font-size:.78rem;
  color:var(--color-blue);
  margin-top:var(--space-2);
  padding-left:var(--space-3);
  border-left:3px solid var(--color-gold-dark);
}

.page-home .sites-lead{
  font-size:1rem;
  line-height:1.75;
  color:rgba(10,27,61,.78);
  margin-bottom:var(--space-4);
}

.page-home .sites-points{
  list-style:none;
  padding:0;
  margin:0 0 var(--space-4);
}

.page-home .sites-points li{
  position:relative;
  padding-left:1.4rem;
  margin-bottom:.8rem;
  font-size:.95rem;
  line-height:1.65;
  color:rgba(10,27,61,.88);
}

.page-home .sites-points li::before{
  content:"▸";
  position:absolute;
  left:0;
  color:var(--color-gold-dark);
  font-weight:700;
}

.page-home .sites-tags{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin-bottom:var(--space-4);
}

.page-home .sites-tags .tag{
  font-family:var(--font-mono);
  font-size:.75rem;
  color:var(--color-navy);
  background:rgba(10,27,61,.04);
  border:1px solid rgba(10,27,61,.18);
  border-radius:999px;
  padding:.35rem .9rem;
  display:inline-block;
}

.page-home .sites-tags .tag--gold{
  background:rgba(255,215,0,.2);
  border-color:rgba(255,184,0,.6);
  color:#5b4200;
}

.page-home .text-link{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  color:var(--color-navy);
  font-weight:700;
  text-decoration:none;
  border-bottom:2px solid var(--color-gold-dark);
  padding-bottom:2px;
  transition:color .25s var(--ease), border-color .25s var(--ease);
}

.page-home .text-link:hover{
  color:var(--color-gold-dark);
}

/* ========== 记录找回 ========== */
.page-home .home-recovery{
  padding:var(--space-6) 0;
  background:var(--color-navy);
}

.page-home .recovery-head{
  max-width:46em;
  margin-bottom:var(--space-5);
}

.page-home .recovery-intro{
  font-size:1rem;
  line-height:1.75;
  color:var(--color-text-subtle);
  max-width:38em;
}

.page-home .recovery-body{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-5);
  align-items:start;
}

.page-home .recovery-media img{
  width:100%;
  height:auto;
  display:block;
  border-radius:var(--radius-lg);
  border:1px solid var(--color-border);
  box-shadow:0 18px 44px var(--home-card-shadow);
}

.page-home .recovery-card{
  position:relative;
  background:var(--home-card-bg);
  border:1px solid var(--color-border);
  border-left:3px solid var(--color-gold);
  border-radius:var(--radius);
  padding:var(--space-4);
  margin-bottom:var(--space-3);
  overflow:hidden;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}

.page-home .recovery-card::after{
  content:"";
  position:absolute;
  top:0;
  left:-85%;
  width:60%;
  height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.07), transparent);
  transform:skewX(-15deg);
  transition:left .55s var(--ease);
}

.page-home .recovery-card:hover::after{
  left:150%;
}

.page-home .recovery-card:hover{
  transform:translateX(8px);
  box-shadow:0 16px 40px rgba(0,0,0,.35);
}

.page-home .recovery-card--time{
  transform:translateX(10px);
}

.page-home .recovery-card--time:hover{
  transform:translateX(16px);
}

.page-home .recovery-card--mode{
  transform:translateX(20px);
}

.page-home .recovery-card--mode:hover{
  transform:translateX(26px);
}

.page-home .recovery-num{
  display:inline-block;
  font-size:.8rem;
  color:var(--color-gold);
  border:1px solid rgba(255,215,0,.35);
  border-radius:999px;
  padding:.1rem .6rem;
  margin-bottom:var(--space-2);
}

.page-home .recovery-card-title{
  font-size:1.2rem;
  margin-bottom:.5rem;
}

.page-home .recovery-card-text{
  font-size:.88rem;
  line-height:1.65;
  color:var(--color-text-subtle);
  margin:0;
}

.page-home .recovery-note{
  margin-top:var(--space-5);
  font-size:.9rem;
  line-height:1.7;
  color:var(--color-text-subtle);
  border-left:3px solid var(--color-gold-dark);
  padding:var(--space-2) var(--space-3);
  background:rgba(27,59,111,.3);
  border-radius:0 var(--radius) var(--radius) 0;
}

.page-home .recovery-note .mono{
  color:var(--color-gold);
  margin-right:.5rem;
}

/* ========== 赛季冲刺 ========== */
.page-home .home-season{
  padding:var(--space-6) 0;
  background:var(--color-light-bg);
  color:var(--color-navy);
}

.page-home .home-season .section-kicker{
  color:var(--color-navy);
  border-color:rgba(10,27,61,.35);
}

.page-home .season-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-5);
  align-items:center;
}

.page-home .season-lead{
  font-size:1rem;
  line-height:1.75;
  color:rgba(10,27,61,.78);
  margin-bottom:var(--space-4);
  max-width:34em;
}

.page-home .delay-curtain{
  background:rgba(10,27,61,.04);
  border:1px solid rgba(10,27,61,.1);
  border-radius:var(--radius-lg);
  padding:var(--space-4);
  margin-bottom:var(--space-4);
}

.page-home .delay-row{
  display:grid;
  grid-template-columns:110px 1fr 70px;
  align-items:center;
  gap:var(--space-2);
  margin-bottom:var(--space-2);
}

.page-home .delay-row:last-child{
  margin-bottom:0;
}

.page-home .delay-name{
  font-size:.78rem;
  font-weight:700;
  color:var(--color-navy);
}

.page-home .delay-bar{
  height:8px;
  background:rgba(10,27,61,.09);
  border-radius:999px;
  overflow:hidden;
}

.page-home .delay-fill{
  display:block;
  height:100%;
  border-radius:999px;
}

.page-home .delay-fill--old{
  width:72%;
  background:var(--color-gold-dark);
}

.page-home .delay-fill--new{
  width:84%;
  background:var(--color-blue);
}

.page-home .delay-fill--diff{
  width:12%;
  background:var(--color-red);
}

.page-home .delay-value{
  font-size:.75rem;
  text-align:right;
  color:var(--color-navy);
}

.page-home .delay-value--diff{
  color:var(--color-red);
  font-weight:700;
}

.page-home .home-season .btn-primary{
  margin-top:var(--space-2);
}

.page-home .season-media img{
  width:100%;
  height:auto;
  display:block;
  border-radius:var(--radius-lg);
  box-shadow:14px 18px 36px rgba(10,27,61,.16);
}

.page-home .season-caption{
  font-size:.75rem;
  color:rgba(10,27,61,.58);
  margin-top:var(--space-2);
  text-align:right;
}

/* ========== 双版本对比 ========== */
.page-home .home-compare{
  padding:var(--space-6) 0;
  background:
    radial-gradient(circle at 18% 50%, rgba(255,215,0,.07) 0%, transparent 46%),
    var(--color-navy);
}

.page-home .compare-shell{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-5);
  background:var(--home-card-bg);
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  padding:var(--space-5);
  overflow:hidden;
}

.page-home .compare-shell::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg, var(--color-gold), var(--color-gold-dark), transparent);
}

.page-home .compare-shell::after{
  content:"OLD / NEW";
  position:absolute;
  right:-1.5rem;
  bottom:-1.5rem;
  font-family:var(--font-mono);
  font-size:5rem;
  font-weight:700;
  color:rgba(255,215,0,.04);
  pointer-events:none;
  line-height:1;
  letter-spacing:.05em;
  white-space:nowrap;
}

.page-home .compare-kicker{
  font-size:.72rem;
  letter-spacing:.18em;
  color:var(--color-gold);
  margin-bottom:var(--space-2);
}

.page-home .compare-lead{
  font-size:1rem;
  line-height:1.75;
  color:var(--color-text-subtle);
  max-width:36em;
  margin-bottom:var(--space-4);
}

.page-home .compare-list{
  list-style:none;
  padding:0;
  margin:0 0 var(--space-4);
}

.page-home .compare-list li{
  position:relative;
  padding-left:1.5rem;
  margin-bottom:.7rem;
  font-size:.92rem;
  line-height:1.6;
  color:var(--color-text-light);
}

.page-home .compare-list li::before{
  content:"◆";
  position:absolute;
  left:0;
  color:var(--color-gold);
  font-size:.7rem;
  top:.35rem;
}

.page-home .compare-actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
}

.page-home .compare-tagline{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--space-2);
  border-left:3px solid var(--color-gold);
  padding:var(--space-3) var(--space-4);
  background:rgba(10,27,61,.55);
  border-radius:0 var(--radius-lg) var(--radius-lg) 0;
}

.page-home .compare-keyword{
  font-family:var(--font-headline);
  font-size:clamp(1.35rem, 2.4vw, 1.9rem);
  font-weight:800;
  color:var(--color-gold);
  line-height:1.2;
}

.page-home .compare-io{
  font-size:.8rem;
  color:var(--color-text-subtle);
}

.page-home .compare-site-count{
  font-family:var(--font-mono);
  font-size:.9rem;
  color:var(--color-text-light);
  background:var(--color-blue);
  border-radius:999px;
  padding:.2rem .8rem;
}

.page-home .compare-stat{
  font-size:.75rem;
  color:var(--color-text-subtle);
}

.page-home .compare-contact{
  font-family:var(--font-mono);
  font-size:.8rem;
  color:var(--color-gold);
  text-decoration:none;
  border-bottom:1px solid rgba(255,215,0,.4);
  padding-bottom:1px;
  transition:border-color .25s var(--ease), color .25s var(--ease);
}

.page-home .compare-contact:hover{
  color:#fff;
  border-color:var(--color-gold);
}

/* ========== 信任声明 ========== */
.page-home .home-trust{
  padding:var(--space-5) 0 var(--space-7);
  text-align:center;
}

.page-home .trust-statement{
  max-width:48em;
  margin:0 auto var(--space-4);
  font-size:.9rem;
  line-height:1.85;
  color:var(--color-text-subtle);
  border-top:1px solid var(--home-line);
  border-bottom:1px solid var(--home-line);
  padding:var(--space-4) var(--space-3);
}

.page-home .trust-meta{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:.8rem 1.4rem;
  font-size:.78rem;
  color:var(--color-text-subtle);
}

.page-home .trust-link{
  color:var(--color-gold);
  text-decoration:none;
  border-bottom:1px solid rgba(255,215,0,.35);
  transition:color .25s var(--ease), border-color .25s var(--ease);
}

.page-home .trust-link:hover{
  color:#fff;
  border-color:var(--color-gold);
}

/* ========== 桌面增强 ========== */
@media (min-width: 720px){
  .page-home .hero-title{
    font-size:clamp(2.6rem, 6vw, 4.4rem);
  }

  .page-home .hero-desc{
    font-size:1.1rem;
  }

  .page-home .recovery-card--time{
    transform:translateX(14px);
  }

  .page-home .recovery-card--mode{
    transform:translateX(28px);
  }

  .page-home .recovery-card--time:hover{
    transform:translateX(22px);
  }

  .page-home .recovery-card--mode:hover{
    transform:translateX(36px);
  }
}

@media (min-width: 980px){
  .page-home .hero-layout{
    grid-template-columns:1.1fr .9fr;
    gap:var(--space-6);
    align-items:center;
    min-height:82vh;
    padding:var(--space-4) 0;
  }

  .page-home .hero-media{
    margin-left:auto;
  }

  .page-home .home-map{
    margin-top:-2rem;
  }

  .page-home .home-map > .container{
    display:grid;
    grid-template-columns:1fr 2fr 1fr;
    gap:var(--space-5);
    align-items:start;
  }

  .page-home .map-header{
    flex-direction:column;
    justify-content:flex-start;
    align-items:flex-start;
    margin-bottom:0;
    padding-top:var(--space-2);
  }

  .page-home .map-list{
    margin-bottom:0;
  }

  .page-home .map-side{
    margin-top:var(--space-2);
  }

  .page-home .sites-layout{
    grid-template-columns:.9fr 1.1fr;
    align-items:center;
  }

  .page-home .recovery-body{
    grid-template-columns:1.05fr .95fr;
  }

  .page-home .recovery-media{
    position:sticky;
    top:2rem;
  }

  .page-home .season-layout{
    grid-template-columns:1fr 1.05fr;
  }

  .page-home .compare-shell{
    grid-template-columns:1.2fr .8fr;
    align-items:center;
    padding:var(--space-6);
  }
}
