/* ==========================================================================
   Zuichuan 数字空间 · 应用层样式
   --------------------------------------------------------------------------
   依赖同目录的 endfield.css（部件与 --ef-* token）；这里只有字体接入和
   页面布局。改风格改 <html> 上的 data-ef-* 变体属性，不要在这里另起颜色。

   变体卡：
     变体：冷库改 full（ice / cool / tight / grid / standard / full）
     主视觉：中央分段圆盘＝服务调度盘；三段分别链博客 / 随手传 / Stars，
             内圈是内存/磁盘读数
     页面类型：控制台（随手传是 yellow/neutral/contours 的展示+轻控制台，刻意反向）
   ========================================================================== */

@font-face {
  font-family: 'Saira Variable';
  src: url('fonts/Saira-Variable-latin.woff2') format('woff2');
  font-weight: 100 900;
  font-stretch: 50% 125%;
  font-display: swap;
  unicode-range: U+0020-007E;
}

:root {
  --ef-font-ui: 'Saira Variable', 'PingFang SC', 'HarmonyOS Sans SC', 'MiSans', 'Noto Sans SC', 'Microsoft YaHei', sans-serif;
  --ef-font-text: 'PingFang SC', 'HarmonyOS Sans SC', 'MiSans', 'Noto Sans SC', 'Microsoft YaHei', sans-serif;
}

main {
  max-width: 72rem;
  margin-inline: auto;
  padding: clamp(1.5rem, 3.5vw, 2.5rem) var(--ef-pad) 4rem;
}

/* ---------- 页头 ---------- */

.page-head {
  margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.page-head .ef-facts {
  margin-top: 1rem;
}

/* ---------- 调度区：圆盘居中，三张服务看板在下方排开 ---------- */

.board {
  container: board / inline-size;
}

.orbit {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1.5rem, 3vw, 2.25rem);
}

.hub {
  justify-self: center;
  width: min(100%, 32rem);
  margin: 0;
}

.hub .ef-dial {
  width: 100%;
}

.services {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}

.service-panel h2 {
  margin-bottom: 0.8rem;
}

.service-panel .ef-ledger {
  margin-bottom: 1.1rem;
}

@container board (min-width: 46rem) {
  .services {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
  }
}

/* ---------- 下方：服务器与关于 ---------- */

.cols {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  align-items: start;
  gap: 1.25rem 1.5rem;
  margin-top: 1.5rem;
}

.server-panel .ef-figs b {
  font-size: 2.6rem;
}

.server-panel .ef-ledger {
  margin-top: 0.3rem;
}

.about-panel .ef-read {
  margin: 0.2rem 0 0;
  font-size: var(--ef-t-body);
  line-height: 1.85;
}

@media (max-width: 860px) {
  .cols {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ---------- 页脚 ---------- */

.site-foot {
  max-width: 72rem;
  margin-inline: auto;
  padding: 1.4rem var(--ef-pad) 2rem;
  border-top: 1px solid var(--ef-rule);
}

.site-foot p {
  margin: 0;
}

.site-foot .site-beian {
  margin-top: 0.45rem;
}

.site-foot .site-beian a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  opacity: 0.7;
}

.site-foot .site-beian a:hover {
  opacity: 1;
}
