/*
Theme Name: ZeroY Starter
Description: 空白起始主题。设计令牌在 assets/css/tokens.css；这里是全局基础样式（排版、布局、页头页脚、按钮），页面样式按模板各自新增。
Author: VitaTomato
*/

/* ==========================================================================
   1. 基础
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--color-background);
  color:var(--color-ink);
  font-family:var(--font-body);
  font-size:var(--fs-body);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img,svg{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:hover{color:var(--color-accent)}
:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}
::selection{background:var(--color-accent);color:var(--color-on-accent)}
.skip-link{
  position:absolute;inset-inline-start:-9999px;top:0;z-index:100;
  background:var(--color-accent);color:var(--color-on-accent);
  padding:12px 20px;border-radius:0 0 var(--radius-sm) 0;font-weight:700;
}
.skip-link:focus{inset-inline-start:0}

/* ==========================================================================
   2. 版式
   ========================================================================== */
h1,h2,h3,h4{font-family:var(--font-head);line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:var(--fs-h1);font-weight:800}
h2{font-size:var(--fs-h2);font-weight:800}
h3{font-size:var(--fs-h3);font-weight:700}
h4{font-size:var(--fs-h4);font-weight:700}
p{margin:0 0 1em;max-width:68ch}
p:last-child{margin-bottom:0}
.lead{font-size:var(--fs-lead);color:var(--color-muted);max-width:640px}

/* ==========================================================================
   3. 布局
   ========================================================================== */
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:var(--section-y)}
.grid{display:grid;gap:24px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.stack{display:grid;gap:12px}

/* ==========================================================================
   4. 按钮
   ========================================================================== */
.button,.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 28px;border-radius:var(--radius-control);border:1.5px solid transparent;
  font-family:var(--font-head);font-size:1rem;font-weight:700;line-height:1.2;
  cursor:pointer;text-align:center;
  background:var(--color-accent);color:var(--color-on-accent);
  transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.button:hover,.btn:hover{background:var(--color-accent-strong);color:var(--color-on-accent)}
.btn-secondary{background:transparent;color:var(--color-ink);border-color:var(--color-line)}
.btn-secondary:hover{background:var(--color-surface);color:var(--color-ink)}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}

/* ==========================================================================
   5. 站点头部（站点标识 + 主菜单）
   ========================================================================== */
.site-header{
  position:sticky;top:0;z-index:50;
  background:var(--color-surface);border-bottom:1px solid var(--color-line);
}
.header-in{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px;padding-block:14px;flex-wrap:wrap}
.brand{font-family:var(--font-head);font-weight:800;font-size:1.0625rem;white-space:nowrap}
.nav-list{display:flex;align-items:center;gap:26px;margin:0;padding:0;list-style:none;flex-wrap:wrap}
.nav-list a{
  font-family:var(--font-head);font-size:.9375rem;font-weight:600;
  padding:6px 2px;border-bottom:2px solid transparent;
  transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.nav-list a:hover,
.nav-list .current-menu-item > a,
.nav-list .current_page_item > a{color:var(--color-accent);border-color:var(--color-accent)}
.nav-sub{display:none}

/* ==========================================================================
   6. 站点页脚
   ========================================================================== */
.site-footer{background:var(--color-ink);color:rgba(255,255,255,.78);padding-block:56px 32px}
.site-footer a{color:rgba(255,255,255,.78)}
.site-footer a:hover{color:#fff}
.footer-in{display:grid;gap:24px}
.footer-brand{font-family:var(--font-head);font-size:1.25rem;font-weight:800;color:#fff;margin:0}
.footer-nav{display:flex;flex-wrap:wrap;gap:18px;margin:0;padding:0;list-style:none;font-size:var(--fs-small)}
.footer-meta{margin:0;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);font-size:.8125rem;color:rgba(255,255,255,.55)}

/* ==========================================================================
   7. 内容兜底（文章/页面默认排版）
   ========================================================================== */
.site-main{display:block}
.entry{max-width:var(--wrap);margin-inline:auto;padding:64px var(--gutter) 96px}
.entry > * + *{margin-top:1em}
.entry article + article{margin-top:48px;padding-top:48px;border-top:1px solid var(--color-line)}
.entry-content > * + *{margin-top:1em}
.entry .pagination{margin-top:40px}
.entry .post-password-form{margin-top:1em}

/* ==========================================================================
   8. 响应式
   ========================================================================== */
@media (max-width:1024px){
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  :root{--gutter:20px;--section-y:64px}
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  .header-in{gap:12px;min-height:0;padding-block:12px}
  .nav-list{gap:18px;width:100%}
  .button,.btn{width:100%}
}

/* ==========================================================================
   9. 动效克制 + 无障碍 + 打印
   ========================================================================== */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}
@media print{
  .site-header,.site-footer{display:none}
}
