/*
Theme Name:   Sracing
Theme URI:    https://sracing.cn/
Description:  星核火花赛车科技有限公司官网主题（twentytwentyfive 子主题）。
              2.0：与静态前端「白色速度」设计系统对齐，WP 仅输出商城/博客/关于/法律等保留页。
Author:       Sracing
Template:     twentytwentyfive
Version:      2.0.0
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 8.2
License:      GNU General Public License v2 or later
License URI:  https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  sracing
Tags:         block-theme, business, custom-colors, translation-ready
*/

/* ===================================================================
   「白色速度」设计令牌 —— 与 /static/css/app.css 保持一致
   =================================================================== */

:root {
	--sr-bg: #f8f7f5;
	--sr-surface: #ffffff;
	--sr-ink: #0b0d12;
	--sr-ink-70: rgba(11, 13, 18, 0.7);
	--sr-mute: #6b7280;
	--sr-accent: #ff5a1f;
	--sr-accent-deep: #e14e12;
	--sr-accent-soft: rgba(255, 90, 31, 0.08);
	--sr-line: rgba(11, 13, 18, 0.12);
	--sr-line-soft: rgba(11, 13, 18, 0.07);
	--sr-font: 'Archivo', 'PingFang SC', 'Hiragino Sans GB', 'Noto Sans SC', 'Microsoft YaHei', sans-serif;
	--sr-header-h: 4.5rem;
	--sr-max: 84rem;
	--sr-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

body {
	background: var(--sr-bg);
	color: var(--sr-ink);
	font-family: var(--sr-font);
	-webkit-font-smoothing: antialiased;
}

::selection { background: var(--sr-accent); color: #fff; }

a { color: var(--sr-ink); }

h1, h2, h3, h4, h5, h6 {
	font-family: var(--sr-font);
	letter-spacing: -0.02em;
	line-height: 1.15;
}

/* 编辑器里给的默认焦点色也统一 */
:focus-visible { outline: 2px solid var(--sr-accent); outline-offset: 3px; }

/* ===================================================================
   页眉 —— 与静态前端 .sr-header 同构（parts/header.html 输出同名类名）
   =================================================================== */

.sr-header {
	position: sticky; top: 0; z-index: 100;
	background: rgba(248, 247, 245, 0.85);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	box-shadow: 0 1px 0 var(--sr-line);
}
.sr-header .wp-block-group.sr-header__inner {
	max-width: var(--sr-max);
	height: var(--sr-header-h);
	padding-left: clamp(1.25rem, 4vw, 4rem);
	padding-right: clamp(1.25rem, 4vw, 4rem);
}
.sr-header__brand { display: flex; align-items: baseline; gap: 0.65rem; text-decoration: none; flex-shrink: 0; }
.sr-header__logo {
	font-weight: 800; font-size: 1.35rem; letter-spacing: 0.02em; line-height: 1; text-decoration: none;
}
.sr-header__logo a { text-decoration: none; }
.sr-header__logo a::after { content: "."; color: var(--sr-accent); }
.sr-header__logo i { color: var(--sr-accent); font-style: normal; }
.sr-header__brand-sub {
	font-size: 0.72rem; color: var(--sr-mute); letter-spacing: 0.14em;
	padding-left: 0.65rem; border-left: 1px solid var(--sr-line); white-space: nowrap;
}

.sr-header__nav { gap: clamp(1rem, 2.4vw, 2.1rem); }
.sr-header__nav .wp-block-navigation-item__content {
	position: relative;
	font-size: 0.9375rem; font-weight: 500; color: var(--sr-ink-70);
	padding: 0.4rem 0.1rem; text-decoration: none;
	transition: color 0.2s ease;
}
.sr-header__nav .wp-block-navigation-item__content::after {
	content: ""; position: absolute; left: 0; right: 100%; bottom: 0;
	height: 2px; background: var(--sr-accent);
	transition: right 0.28s var(--sr-ease);
}
.sr-header__nav .wp-block-navigation-item__content:hover { color: var(--sr-ink); }
.sr-header__nav .wp-block-navigation-item__content:hover::after { right: 0; }
.sr-header__nav .wp-block-navigation-item__content.is-current,
.sr-header__nav .wp-block-navigation-item__current-menu-item .wp-block-navigation-item__content { color: var(--sr-ink); font-weight: 600; }
.sr-header__nav .wp-block-navigation-item__content.is-current::after { right: 0; }

/* CTA 按钮 */
.sr-header__cta .wp-block-button__link {
	background: var(--sr-accent); color: #fff; border-radius: 999px;
	font-weight: 600; font-size: 0.875rem; padding: 0.62rem 1.35rem;
	transition: background 0.25s var(--sr-ease), transform 0.25s var(--sr-ease);
}
.sr-header__cta .wp-block-button__link:hover {
	background: var(--sr-accent-deep); color: #fff; transform: translateY(-2px);
}

/* WP 导航自带的移动端抽屉 → 全屏瓷白大菜单 */
.wp-block-navigation__responsive-container {
	background: var(--sr-bg); color: var(--sr-ink);
}
.wp-block-navigation__responsive-container-close,
.wp-block-navigation__responsive-container-open {
	border: 1px solid var(--sr-line); border-radius: 999px; padding: 0.45rem;
	color: var(--sr-ink);
}
.wp-block-navigation__responsive-container .wp-block-navigation-item__content {
	font-size: clamp(1.6rem, 7vw, 2.6rem); font-weight: 700; letter-spacing: -0.02em; color: var(--sr-ink);
	padding: 0.4rem 0;
}
.wp-block-navigation__responsive-container .wp-block-navigation-item {
	border-bottom: 1px solid var(--sr-line-soft);
}
.wp-block-navigation__responsive-container .wp-block-navigation { gap: 0.2rem; }

@media (max-width: 781px) {
	.sr-header__brand-sub { display: none; }
	.sr-header__cta { display: none; }
}

/* ===================================================================
   页脚 —— 巨型字标 + 四栏发丝线
   =================================================================== */

.sr-footer { background: var(--sr-ink); color: rgba(248, 247, 245, 0.72); }
.sr-footer .wp-block-group.sr-footer__inner {
	max-width: var(--sr-max);
	padding: clamp(3rem, 6vw, 5rem) clamp(1.25rem, 4vw, 4rem) 2rem;
}
.sr-footer__mark {
	font-size: clamp(3rem, 11vw, 9rem); font-weight: 800; letter-spacing: -0.045em; line-height: 0.95;
	color: var(--sr-bg); margin-bottom: clamp(2rem, 5vw, 3.5rem);
}
.sr-footer__mark span { font-size: 0.22em; font-weight: 500; letter-spacing: 0.3em; color: rgba(248, 247, 245, 0.4); margin-left: 1.5rem; }
.sr-footer__cols { gap: 2rem; padding-block: 2.2rem; border-block: 1px solid rgba(248, 247, 245, 0.14); }
.sr-footer__col-title {
	font-size: 0.8rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase;
	color: var(--sr-accent); margin-bottom: 1.1rem;
}
.sr-footer__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.62rem; }
.sr-footer__list a {
	color: rgba(248, 247, 245, 0.72); text-decoration: none; font-size: 0.92rem;
	transition: color 0.2s ease, padding-left 0.25s var(--sr-ease);
}
.sr-footer__list a:hover { color: var(--sr-accent); padding-left: 0.3rem; }
.sr-footer__bottom {
	display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.8rem;
	padding-top: 1.6rem; font-size: 0.8rem; color: rgba(248, 247, 245, 0.45);
}
.sr-footer__bottom a { color: inherit; text-decoration: none; }
.sr-footer__bottom a:hover { color: var(--sr-accent); }
.sr-footer__badge { display: inline-flex; align-items: center; gap: 0.5rem; }
.sr-footer__badge::before {
	content: ""; width: 8px; height: 8px; border-radius: 50%;
	background: var(--sr-accent); box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.25);
}

/* ===================================================================
   全局排版微调（WP 输出侧）
   =================================================================== */

.wp-block-post-title, .wp-block-query-title {
	font-weight: 800; letter-spacing: -0.03em;
}

/* 文章与页面的正文容器 */
.wp-block-post-content { line-height: 1.85; }
.wp-block-post-content p { color: var(--sr-ink-70); }
.wp-block-post-content a { color: var(--sr-accent); }
.wp-block-post-content h2 { font-weight: 750; margin-top: 1.8em; }
.wp-block-post-content h3 { font-weight: 700; margin-top: 1.6em; }
.wp-block-post-content blockquote {
	border-left: 3px solid var(--sr-accent); padding-left: 1.2em; margin-left: 0;
	font-weight: 550;
}

/* 按钮 */
.wp-block-button__link {
	border-radius: 999px; font-weight: 600;
	transition: background 0.25s var(--sr-ease), color 0.25s var(--sr-ease), transform 0.25s var(--sr-ease);
}
.wp-block-button__link:hover { transform: translateY(-2px); }
.wp-block-button.is-style-fill .wp-block-button__link,
.wp-block-button:not([class*="is-style-"]) .wp-block-button__link {
	background: var(--sr-accent); color: #fff;
}
.wp-block-button.is-style-fill .wp-block-button__link:hover { background: var(--sr-accent-deep); color: #fff; }
.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent; color: var(--sr-ink); border-color: var(--sr-line);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: transparent; border-color: var(--sr-ink); color: var(--sr-ink);
}

/* 查询循环卡片（博客/归档） */
.wp-block-post-template { gap: 0; border-top: 1px solid var(--sr-line); }
.wp-block-post-template > li {
	padding: 1.8rem 0; border-bottom: 1px solid var(--sr-line);
	transition: background 0.2s ease;
}
.wp-block-post-template > li:hover { background: var(--sr-surface); }
.wp-block-post-template .wp-block-post-title a {
	text-decoration: none; color: var(--sr-ink);
	transition: color 0.2s ease;
}
.wp-block-post-template .wp-block-post-title a:hover { color: var(--sr-accent); }
.wp-block-post-excerpt__excerpt { color: var(--sr-mute); }

/* 分页 */
.wp-block-query-pagination { margin-top: 2.5rem; }
.wp-block-query-pagination .page-numbers,
.wp-block-query-pagination a.wp-block-query-pagination-previous,
.wp-block-query-pagination a.wp-block-query-pagination-next {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 2.4rem; height: 2.4rem; padding: 0 0.7rem;
	border: 1px solid var(--sr-line); border-radius: 4px;
	font-size: 0.875rem; text-decoration: none; color: var(--sr-ink);
	transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}
.wp-block-query-pagination .page-numbers:hover { border-color: var(--sr-accent); color: var(--sr-accent); }
.wp-block-query-pagination .page-numbers.current { background: var(--sr-ink); border-color: var(--sr-ink); color: #fff; font-weight: 600; }

/* 404 巨型排版（配合模板里的 sr-404 结构类） */
.sr-404 { padding: clamp(4rem, 10vw, 8rem) 0; }
.sr-404__code {
	font-size: clamp(5rem, 18vw, 12rem); font-weight: 800; letter-spacing: -0.05em; line-height: 1;
}
.sr-404__code i { color: var(--sr-accent); font-style: normal; }

/* 搜索结果条目 */
.wp-block-query.is-style-sr-search .wp-block-post-template > li { padding: 1.4rem 0; }

/* 小屏细节 */
@media (max-width: 599px) {
	.sr-footer__cols { grid-template-columns: 1fr 1fr; }
}
