/*
Theme Name: YY Elementor Starter
Theme URI: https://example.com/
Author: Your Name
Author URI: https://example.com
Description: 一个可与 Elementor（含 Theme Builder / Pro）协同工作、可自由在页面编辑器内修改的 WordPress 主题框架。内置整站构建者支持、多模板层级与轻量工具类样式。
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: GPLv2 or later
Text Domain: yyelementor
Tags: elementor, block-styles, full-width-template, custom-menu, custom-logo, editor-style, e-commerce

Elementor is enabled through the theme's functions.php and page templates.
*/

/* ================================================================
   0. 设计变量（可被 Elementor Custom CSS / Site Settings 覆盖）
   ================================================================ */
:root {
	--yy-primary:#0d6efd;
	--yy-link-color:#0a58ca;
	--yy-border:#e5e7eb;
	--yy-bg:#ffffff;
	--yy-text:#22262c;
	--yy-muted:#64748b;
	--yy-font-sans:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
}

/* ================================================================
   1. 基础重置
   ================================================================ */
*,
*::before,
*::after { box-sizing: border-box; }

body {
	margin:0;
	font-family:var(--yy-font-sans);
	color:var(--yy-text,#22262c);
	background:var(--yy-bg,#fff);
	line-height:1.6;
	-webkit-font-smoothing:antialiased;
}

img { max-width:100%; height:auto; }

h1,h2,h3{ font-weight:700; line-height:1.25; margin-top:0; }
a   { color:var(--yy-link-color,#0a58ca); text-decoration:none; }
p   { margin-top:0; }

/* ================================================================
   2. Header / Navigation（Elementor Theme Builder 接管时自动替换）
   ================================================================ */
.site-header {
	background:#fff;
	border-bottom:1px solid var(--yy-border,#e5e7eb);
}
.site-header__inner {
	display:flex; align-items:center; justify-content:space-between;
	min-height:74px; gap:16px;
}

.site-title a { font-size:1.4rem; color:#111827; text-decoration:none; }
.site-description{ margin:.15em 0 0; color:var(--yy-muted,#64748b); font-size:.85rem; }

.main-navigation .menu-primary,
.footer-navigation .menu-footer{
	display:flex; gap:6px; list-style:none; padding:0; margin:0;
}
.menu-primary li{ position:relative; }
.menu-primary li a{ display:block; padding:8px 10px; color:#1f2937; border-radius:.375rem; white-space:nowrap;}
/* 带子菜单项：右侧下拉箭头提示 */
.menu-item-has-children > a::after{
	content:" ▾"; font-size:.75em; opacity:.55;
}
.menu-primary li.current-menu-item>a,
.menu-primary li a:hover {
	background:color-mix(in srgb, var(--yy-primary,#0d6efd) 8%, transparent);
	color:var(--yy-link-color,#0d6efd);
}

/* —— 二级下拉（桌面端：默认隐藏，悬停/聚焦展开） —— */
.main-navigation{ position:relative; }
.menu-primary ul.sub-menu{
	display:none;
	position:absolute; top:100%; left:-4px; z-index:9999;
	min-width:200px; margin:1px 0 0;
	padding:.35rem 0; list-style:none;
	background:#fff; border:1px solid var(--yy-border,#e5e7eb);
	border-radius:.45rem; box-shadow:0 .55rem 1.4rem rgba(15,23,42,.14);
	gap:0;
}
.menu-primary ul.sub-menu li{ width:100%; }
.menu-primary ul.sub-menu a{
	display:block; width:calc(100% - 12px); margin-inline:6px;
	padding:.5rem .75rem; border-radius:.35rem;
}
/* 悬停、聚焦时显示 */
.main-navigation li:hover > .sub-menu,
.menu-primary li:focus-within > ul.sub-menu{ display:block; }

/* 三级或更深：向右弹出（深度>2） */
.menu-primary ul.sub-menu ul.sub-menu{
	top:-.5rem; left:100%;
}


/* ================================================================
   3. 布局 / Main
   ================================================================ */
.site-main{ padding-block:2rem; }
.container > * + * { margin-top:.5em; }

.page-title, .entry-title{ font-size:clamp(1.7rem,4vw,2.6rem); }
.entry-meta, .text-muted{ color:var(--yy-muted,#64748b); }

.site-footer{
	background:#0f172a; color:#cbd5e1;
	margin-top:3rem; padding-block:2.2rem;
	border-top:1px solid var(--yy-border);
}
.footer-inner a{ color:#94a3b8; }
.site-info p{ margin:0; }

/* ================================================================
   4. 屏幕阅读器工具类
   ================================================================ */
.screen-reader-text{
	position:absolute !important;
	width:1px;height:1px;margin:-1px;
	padding:0;border:0;clip-path:inset(50%);
	overflow:hidden;white-space:nowrap;
}
.skip-link{ top:6px; left:8px; z-index:99999; }

/* ================================================================
   5. Elementor 兼容细节
   - .is-elementor-page：避免主题给画布页加多余标题/间距。
   - .site-main--canvas / --front：整宽、无内边距干扰。
   ================================================================ */
.is-elementor-page .entry-header{ display:none; }
.site-main--canvas,
.site-main--notfound{
	width:100%; max-width:none;
	padding-right:0 !important;padding-left:0 !important;
}

/* 移动端菜单切换按钮（桌面隐藏） */
.menu-toggle{
	display:none; background:none;border:0;
	padding:.35em .6em; border-radius:.375rem; cursor:pointer;
}
body.menu-open .main-navigation{ display:flex; flex-direction:column; position:relative;}
@media (max-width:767.98px){
	.site-header__inner{ flex-wrap:wrap; }
	.menu-toggle{ display:inline-flex; margin-left:auto; }
	.main-navigation{ width:100%; order:3; display:none; }
	body.menu-open .main-navigation{ display:block; background:#fff; border-top:1px solid var(--yy-border); padding-block:.5em;}
	.main-navigation .menu-primary{ flex-direction:column; align-items:stretch; gap:0;}

	/* 移动端：二级菜单转折叠面板，默认隐藏 */
	.menu-primary ul.sub-menu{
		display:none;
		position:static; box-shadow:none; border:none;
		padding-left:.75rem; margin-top:.3rem;
	}
	.main-navigation li:hover > .sub-menu,
	.menu-primary li:focus-within > ul.sub-menu{ display:none; }
	/* 用“菜单开关”样式做移动端点击展开：
	   桌面悬停规则在触屏失效，故由 JS 加 .is-open 显隐 */
	.menu-primary li.is-open > ul.sub-menu,
	.menu-primary li:focus-within > ul.sub-menu{ display:block; }
}
@media (min-width:768px){
	.container{ padding-inline:24px; }
}
