.page-home{
  --ph-gap:clamp(1.25rem,3vw,2.75rem);
  --ph-section-pad:clamp(2rem,5vw,3.75rem);
  --ph-radius:0px;
  display:block;
  padding-bottom:clamp(3rem,8vw,6rem);
}

.page-home .shell{
  width:var(--shell);
  margin-inline:auto;
}

.page-home .breadcrumb{
  padding-block:1.1rem .35rem;
}

.page-home .page-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--ph-gap);
  padding-top:clamp(.75rem,2vw,1.5rem);
}

.page-home .canvas{
  min-width:0;
}

/* ---------- 侧边导览 ---------- */
.page-home .rail-panel{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:.85rem 1rem;
  padding:.9rem 1rem;
  background:var(--bg-2);
  border:1px solid var(--grid);
}

.page-home .rail-label{
  margin:0;
  flex:0 0 100%;
  font-family:var(--font-data);
  font-size:.7rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ink-2);
}

.page-home .season-dial{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  flex:1 1 auto;
}

.page-home .season-chip{
  appearance:none;
  border:1px solid var(--grid);
  background:transparent;
  color:var(--ink-2);
  font-family:var(--font-data);
  font-size:.82rem;
  letter-spacing:.06em;
  padding:.45rem .8rem;
  cursor:pointer;
  transition:color .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease);
}

.page-home .season-chip:hover{
  color:var(--ink);
  border-color:var(--cyan);
}

.page-home .season-chip[data-season-active],
.page-home .season-chip[aria-pressed="true"]{
  background:var(--cyan);
  border-color:var(--cyan);
  color:var(--bg-deep);
}

.page-home .season-chip:focus-visible{
  outline:2px solid var(--blue);
  outline-offset:2px;
}

.page-home .rail-nav{
  flex:0 0 100%;
}

.page-home .rail-nav ul{
  list-style:none;
  margin:.5rem 0 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:.35rem .9rem;
}

.page-home .rail-nav a{
  display:inline-block;
  color:var(--ink-2);
  text-decoration:none;
  font-size:.9rem;
  line-height:1.9;
  border-bottom:1px solid transparent;
  transition:color .18s var(--ease),border-color .18s var(--ease);
}

.page-home .rail-nav a:hover,
.page-home .rail-nav a:focus-visible{
  color:var(--cyan);
  border-bottom-color:var(--cyan);
}

.page-home .rail-note{
  flex:0 0 100%;
  margin:0;
  padding-top:.75rem;
  border-top:1px dashed var(--grid);
  color:var(--ink-2);
}

/* ---------- 指挥台 ---------- */
.page-home .command{
  position:relative;
  padding:clamp(1.5rem,3.5vw,2.75rem) 0 clamp(1.75rem,4vw,3rem);
  border-bottom:var(--line);
  overflow:hidden;
}

.page-home .command::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(90deg,var(--grid-soft) 1px,transparent 1px),
    linear-gradient(0deg,var(--grid-soft) 1px,transparent 1px);
  background-size:84px 84px;
  opacity:.55;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.95),transparent 76%);
  mask-image:linear-gradient(180deg,rgba(0,0,0,.95),transparent 76%);
}

.page-home .command > *{
  position:relative;
  z-index:1;
}

.page-home .command h1{
  margin:.4rem 0 0;
  font-family:var(--font-head);
  font-size:clamp(2rem,5.4vw,4.3rem);
  line-height:1.02;
  letter-spacing:.02em;
  color:var(--ink);
  max-width:22ch;
}

.page-home .command-lede{
  margin:1.1rem 0 0;
  max-width:66ch;
  font-size:clamp(.98rem,1.4vw,1.1rem);
  line-height:1.8;
  color:var(--ink-2);
}

.page-home .kpi{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:var(--grid);
  border:1px solid var(--grid);
  margin-top:clamp(1.5rem,3vw,2.25rem);
}

.page-home .kpi-cell{
  background:var(--bg);
  padding:1rem 1rem 1.15rem;
}

.page-home .kpi-label{
  margin:0;
  font-family:var(--font-data);
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ink-2);
}

.page-home .kpi-num{
  margin:.5rem 0 .3rem;
  font-family:var(--font-data);
  font-variant-numeric:tabular-nums;
  font-size:clamp(1.9rem,4vw,3.1rem);
  line-height:1;
  color:var(--cyan);
}

.page-home .kpi-unit{
  font-size:.42em;
  margin-left:.25em;
  color:var(--ink-2);
  letter-spacing:.04em;
}

.page-home .kpi-note{
  margin:0;
  font-size:.82rem;
  color:var(--ink-2);
}

.page-home .command-media{
  margin:clamp(1.5rem,3vw,2.25rem) 0 0;
  border:1px solid var(--grid);
  overflow:hidden;
  background:var(--bg-deep);
}

.page-home .command-media img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
  filter:saturate(.92) contrast(1.05);
}

/* ---------- 通用分区 ---------- */
.page-home .section{
  padding-top:var(--ph-section-pad);
}

.page-home .section-head{
  max-width:64ch;
}

.page-home .section-head h2{
  margin:.35rem 0 .7rem;
  font-family:var(--font-head);
  font-size:clamp(1.55rem,3.4vw,2.8rem);
  line-height:1.06;
  letter-spacing:.02em;
  color:var(--ink);
}

.page-home .section-lede{
  margin:0;
  font-size:clamp(.96rem,1.35vw,1.06rem);
  line-height:1.78;
  color:var(--ink-2);
}

/* ---------- 签表矩阵 ---------- */
.page-home .bracket{
  margin-top:clamp(1.25rem,2.5vw,1.85rem);
  display:grid;
  gap:1px;
  background:var(--grid);
  border:1px solid var(--grid);
}

.page-home .bracket details{
  background:var(--bg);
}

.page-home .bracket summary{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.4rem .9rem;
  padding:.95rem clamp(.85rem,2.2vw,1.4rem);
  cursor:pointer;
  list-style:none;
  transition:background .18s var(--ease);
}

.page-home .bracket summary::-webkit-details-marker{
  display:none;
}

.page-home .bracket summary:hover{
  background:var(--bg-2);
}

.page-home .bracket summary:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:-2px;
}

.page-home .bracket details[open] > summary{
  background:var(--bg-2);
}

.page-home .round-name{
  flex:1 1 auto;
  min-width:8rem;
  font-family:var(--font-head);
  font-size:clamp(1.05rem,2vw,1.3rem);
  letter-spacing:.05em;
  color:var(--ink);
}

.page-home .round-name em{
  display:block;
  margin-top:.2rem;
  font-family:var(--font-data);
  font-style:normal;
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ink-2);
}

.page-home .marker{
  flex:0 0 auto;
  width:1.6rem;
  height:1.6rem;
  display:grid;
  place-items:center;
  border:1px solid var(--grid);
  font-family:var(--font-data);
  font-size:.9rem;
  color:var(--cyan);
  transition:transform .2s var(--ease),border-color .2s var(--ease);
}

.page-home .bracket details[open] .marker{
  transform:rotate(45deg);
  border-color:var(--cyan);
}

.page-home .marker::before{
  content:"+";
}

.page-home .entry-body{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:.9rem 1.6rem;
  padding:1rem clamp(.85rem,2.2vw,1.4rem) 1.4rem;
  background:var(--bg-2);
  border-top:1px dashed var(--grid);
}

.page-home .entry-label{
  margin:0 0 .28rem;
  font-family:var(--font-data);
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--amber);
}

.page-home .entry-item p{
  margin:0;
  font-size:.94rem;
  line-height:1.72;
  color:var(--ink-2);
}

/* ---------- 赛事档案 ---------- */
.page-home .dossiers{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--ph-gap);
  margin-top:clamp(1.25rem,2.5vw,1.85rem);
}

.page-home .dossier-list{
  display:grid;
  gap:1px;
  background:var(--grid);
  border-top:1px solid var(--grid);
  border-bottom:1px solid var(--grid);
}

.page-home .dossier{
  background:var(--bg);
  padding:1.15rem 0 1.25rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:.35rem 1rem;
  align-items:baseline;
}

.page-home .dossier-index{
  margin:0;
  grid-row:span 2;
  font-family:var(--font-data);
  font-variant-numeric:tabular-nums;
  font-size:1.5rem;
  color:var(--cyan);
  line-height:1;
}

.page-home .dossier h3{
  margin:0;
  font-family:var(--font-head);
  font-size:clamp(1.15rem,2.1vw,1.45rem);
  letter-spacing:.04em;
  color:var(--ink);
}

.page-home .dossier p{
  margin:.45rem 0 0;
  font-size:.94rem;
  line-height:1.74;
  color:var(--ink-2);
}

.page-home .dossier-media{
  margin:0;
  border:1px solid var(--grid);
  overflow:hidden;
  background:var(--bg-deep);
}

.page-home .dossier-media img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:4/5;
  object-fit:cover;
  filter:saturate(.9);
}

.page-home .dossier-media figcaption{
  padding:.75rem 1rem;
  border-top:1px solid var(--grid);
  background:var(--bg-2);
  color:var(--ink-2);
}

/* ---------- 数据看板 ---------- */
.page-home .board{
  margin-top:clamp(1.25rem,2.5vw,1.85rem);
  padding:clamp(1.1rem,2.8vw,2rem);
  background:var(--bg-2);
  border:1px solid var(--grid);
}

.page-home .stat-strip{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:var(--grid);
  border:1px solid var(--grid);
}

.page-home .stat{
  background:var(--bg);
  padding:.85rem .9rem 1rem;
}

.page-home .stat-num{
  margin:0;
  font-family:var(--font-data);
  font-variant-numeric:tabular-nums;
  font-size:clamp(1.7rem,3.4vw,2.7rem);
  line-height:1;
  color:var(--cyan);
}

.page-home .stat-plus{
  font-size:.45em;
  margin-left:.15em;
  color:var(--ink-2);
}

.page-home .stat-label{
  margin:.5rem 0 0;
  font-size:.82rem;
  line-height:1.5;
  color:var(--ink-2);
}

.page-home .board-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1.1rem;
  margin-top:1.25rem;
}

.page-home .board-media,
.page-home .board-media-sm{
  margin:0;
  border:1px solid var(--grid);
  overflow:hidden;
  background:var(--bg-deep);
}

.page-home .board-media img,
.page-home .board-media-sm img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  filter:saturate(.9) contrast(1.05);
}

.page-home .board-media img{
  aspect-ratio:3/2;
}

.page-home .board-media-sm{
  margin-top:1rem;
}

.page-home .board-media-sm img{
  aspect-ratio:12/7;
}

.page-home .board-side{
  min-width:0;
}

.page-home .board-label{
  margin:0 0 .6rem;
  font-family:var(--font-data);
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ink-2);
}

.page-home .filter-row{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  list-style:none;
  margin:0 0 .9rem;
  padding:0;
}

.page-home .board-copy{
  margin:0;
  font-size:.94rem;
  line-height:1.76;
  color:var(--ink-2);
}

.page-home .table-wrap{
  margin-top:1.35rem;
  overflow-x:auto;
  border:1px solid var(--grid);
  background:var(--bg);
}

.page-home .data-table{
  width:100%;
  min-width:560px;
  border-collapse:collapse;
  font-size:.92rem;
}

.page-home .data-table th,
.page-home .data-table td{
  text-align:left;
  padding:.75rem .9rem;
  border-bottom:1px solid var(--grid);
  color:var(--ink-2);
  white-space:nowrap;
}

.page-home .data-table thead th{
  font-family:var(--font-data);
  font-size:.72rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--ink);
  background:var(--bg-2);
}

.page-home .data-table tbody th{
  color:var(--ink);
  font-weight:600;
}

.page-home .data-table tbody tr:last-child th,
.page-home .data-table tbody tr:last-child td{
  border-bottom:0;
}

.page-home .board-link{
  margin:1.35rem 0 0;
}

/* ---------- 场馆对照 ---------- */
.page-home .venues{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1px;
  background:var(--grid);
  border:1px solid var(--grid);
  margin-top:clamp(1.25rem,2.5vw,1.85rem);
}

.page-home .venue{
  background:var(--bg);
  padding:clamp(1.05rem,2.4vw,1.7rem);
  border-top:3px solid var(--grid);
}

.page-home .venue--seoul{
  border-top-color:var(--cyan);
}

.page-home .venue--busan{
  border-top-color:var(--blue);
}

.page-home .venue-tag{
  margin:0;
  font-family:var(--font-data);
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ink-2);
}

.page-home .venue h3{
  margin:.5rem 0 0;
  font-family:var(--font-head);
  font-size:clamp(1.25rem,2.4vw,1.7rem);
  letter-spacing:.04em;
  color:var(--ink);
}

.page-home .venue dl{
  margin:1.1rem 0 0;
  display:grid;
  gap:.85rem;
}

.page-home .venue dt{
  font-family:var(--font-data);
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--amber);
}

.page-home .venue dd{
  margin:.22rem 0 0;
  font-size:.93rem;
  line-height:1.7;
  color:var(--ink-2);
}

.page-home .venues-link{
  margin:1.35rem 0 0;
}

/* ---------- 服务方案 ---------- */
.page-home .plans{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1px;
  background:var(--grid);
  border:1px solid var(--grid);
  margin-top:clamp(1.25rem,2.5vw,1.85rem);
}

.page-home .plan{
  background:var(--bg);
  padding:1.2rem 1.1rem 1.45rem;
  display:flex;
  flex-direction:column;
  gap:.55rem;
  transition:background .18s var(--ease);
}

.page-home .plan:hover{
  background:var(--bg-2);
}

.page-home .plan-index{
  margin:0;
  font-family:var(--font-data);
  font-size:.78rem;
  letter-spacing:.18em;
  color:var(--cyan);
}

.page-home .plan h3{
  margin:0;
  font-family:var(--font-head);
  font-size:clamp(1.1rem,1.9vw,1.35rem);
  letter-spacing:.04em;
  color:var(--ink);
}

.page-home .plan p{
  margin:0;
  font-size:.93rem;
  line-height:1.72;
  color:var(--ink-2);
}

.page-home .plans-link{
  margin:1.5rem 0 0;
}

/* ---------- 收尾 ---------- */
.page-home .closing{
  margin-top:var(--ph-section-pad);
  padding:clamp(1.35rem,3.2vw,2.6rem);
  border:3px solid var(--grid);
  box-shadow:var(--hard-shadow);
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1.35rem;
  background:var(--bg);
}

.page-home .closing h2{
  margin:0 0 .7rem;
  font-family:var(--font-head);
  font-size:clamp(1.4rem,3vw,2.3rem);
  line-height:1.1;
  letter-spacing:.02em;
  color:var(--ink);
}

.page-home .closing p{
  margin:0;
  max-width:62ch;
  font-size:.96rem;
  line-height:1.78;
  color:var(--ink-2);
}

.page-home .closing-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.75rem 1rem;
}

.page-home .closing-link{
  font-size:.9rem;
  color:var(--ink-2);
  text-decoration:none;
  border-bottom:1px solid var(--grid);
  padding-bottom:.15rem;
  transition:color .18s var(--ease),border-color .18s var(--ease);
}

.page-home .closing-link:hover,
.page-home .closing-link:focus-visible{
  color:var(--cyan);
  border-bottom-color:var(--cyan);
}

/* ---------- 响应式 ---------- */
@media (min-width:640px){
  .page-home .kpi{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .page-home .stat-strip{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .page-home .plans{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (min-width:760px){
  .page-home .entry-body{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .page-home .venues{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (min-width:920px){
  .page-home .dossiers{
    grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
    align-items:start;
  }

  .page-home .board-grid{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    align-items:start;
  }

  .page-home .closing{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:2rem;
  }
}

@media (min-width:1000px){
  .page-home .page-grid{
    grid-template-columns:var(--rail-w) minmax(0,1fr);
    gap:clamp(1.75rem,3.5vw,3.5rem);
    align-items:start;
  }

  .page-home .rail{
    position:sticky;
    top:var(--rail-top);
    align-self:start;
  }

  .page-home .rail-panel{
    display:block;
    padding:1.1rem 1rem 1.25rem;
  }

  .page-home .rail-label{
    margin-bottom:.6rem;
  }

  .page-home .season-dial{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:.45rem;
  }

  .page-home .season-chip{
    width:100%;
    text-align:left;
    padding:.55rem .75rem;
  }

  .page-home .rail-nav ul{
    display:grid;
    gap:0;
    margin-top:.6rem;
  }

  .page-home .rail-nav a{
    display:block;
    padding-block:.3rem;
  }

  .page-home .rail-note{
    margin-top:1rem;
  }
}

@media (min-width:1160px){
  .page-home .plans{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

@media (prefers-reduced-motion:reduce){
  .page-home *{
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
  }

  .page-home .bracket details[open] .marker{
    transform:none;
  }
}
