/* ODoc 主题自定义样式（补充 Tailwind + Preline） */

/* Logo */
.custom-logo {
	max-height: 40px;
	width: auto;
	height: auto;
}

/* 主导航菜单项 */
nav ul.menu li a {
	display: inline-flex;
	align-items: center;
	position: relative;
	padding: 0.5rem 0.75rem;
	color: rgb(71 85 105);
	transition: color 150ms;
}
nav ul.menu li a:hover {
	color: rgb(15 23 42);
}
nav ul.menu li.current-menu-item > a,
nav ul.menu li.current-menu-ancestor > a {
	color: var(--odoc-primary);
	font-weight: 600;
}
nav ul.menu li.current-menu-item > a::before,
nav ul.menu li.current-menu-ancestor > a::before {
	content: '';
	position: absolute;
	left: 0.75rem;
	right: 0.75rem;
	bottom: 0;
	height: 2px;
	border-radius: 9999px;
	background-color: var(--odoc-primary);
}
nav ul.menu > li.menu-item-has-children > a::after {
	content: '';
	display: inline-block;
	width: 0.375rem;
	height: 0.375rem;
	margin-left: 0.25rem;
	margin-top: -1px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg);
}

/* 二级菜单下拉 */
nav ul.menu > li {
	position: relative;
}
nav ul.menu > li > ul.sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 50;
	display: none;
	min-width: 12rem;
	flex-direction: column;
	gap: 0.125rem;
	padding: 0.375rem;
	border: 1px solid rgb(226 232 240);
	border-radius: 0.5rem;
	background: #fff;
	box-shadow: 0 10px 25px rgba(15, 23, 42, 0.1);
}
nav ul.menu > li:hover > ul.sub-menu,
nav ul.menu > li:focus-within > ul.sub-menu {
	display: flex;
}
nav ul.menu ul.sub-menu li a {
	display: block;
	padding: 0.5rem 0.75rem;
	border-radius: 0.375rem;
	white-space: nowrap;
	color: rgb(71 85 105);
	font-weight: 400;
}
nav ul.menu ul.sub-menu li a:hover {
	background: rgb(241 245 249);
	color: rgb(15 23 42);
}
nav ul.menu ul.sub-menu li.current-menu-item > a,
nav ul.menu ul.sub-menu li.current-menu-ancestor > a {
	color: var(--odoc-primary);
}
nav ul.menu ul.sub-menu li.current-menu-item > a::before,
nav ul.menu ul.sub-menu li.current-menu-ancestor > a::before {
	display: none;
}

/* 侧边栏滚动条 */
#odoc-sidebar::-webkit-scrollbar {
	width: 6px;
}
#odoc-sidebar::-webkit-scrollbar-thumb {
	background-color: rgb(203 213 225);
	border-radius: 9999px;
}
#odoc-sidebar::-webkit-scrollbar-track {
	background: transparent;
}

/* ===== 文档正文排版 ===== */
.odoc-prose {
	color: rgb(51 65 85);
	line-height: 1.75;
	font-size: 12px;
	word-break: break-word;
}
.odoc-prose > *:first-child {
	margin-top: 0;
}
.odoc-prose h1,
.odoc-prose h2,
.odoc-prose h3,
.odoc-prose h4,
.odoc-prose h5,
.odoc-prose h6 {
	color: rgb(15 23 42);
	font-weight: 700;
	line-height: 1.3;
	scroll-margin-top: 5rem;
}
.odoc-prose h1 { font-size: 12px; margin: 1.5rem 0 0.75rem; }
.odoc-prose h2 {
	font-size: 12px;
	margin: 2rem 0 0.75rem;
	padding-bottom: 0.4rem;
	border-bottom: 1px solid rgb(226 232 240);
}
.odoc-prose h3 { font-size: 12px; margin: 1.5rem 0 0.6rem; }
.odoc-prose h4 { font-size: 12px; margin: 1.25rem 0 0.5rem; }
.odoc-prose h5,
.odoc-prose h6 { font-size: 12px; margin: 1rem 0 0.5rem; }

.odoc-prose p { margin: 0.75rem 0; }
.odoc-prose a {
	color: var(--odoc-primary);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.odoc-prose a:hover { color: var(--odoc-primary-dark); }
.odoc-prose strong { color: rgb(15 23 42); font-weight: 600; }

.odoc-prose ul,
.odoc-prose ol {
	margin: 0.75rem 0;
	padding-left: 1.5rem;
}
.odoc-prose ul { list-style: disc; }
.odoc-prose ol { list-style: decimal; }
.odoc-prose li { margin: 0.25rem 0; }
.odoc-prose li::marker { color: rgb(148 163 184); }

.odoc-prose blockquote {
	margin: 1rem 0;
	padding: 0.5rem 1rem;
	border-left: 4px solid var(--odoc-primary);
	background-color: rgb(248 250 252);
	color: rgb(71 85 105);
	border-radius: 0 0.375rem 0.375rem 0;
}
.odoc-prose blockquote p { margin: 0.25rem 0; }

.odoc-prose code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 12px;
	padding: 0.15em 0.4em;
	border-radius: 0.375rem;
	background-color: rgb(241 245 249);
	color: rgb(190 24 93);
}
.odoc-prose pre {
	margin: 1rem 0;
	padding: 1rem;
	border-radius: 0.5rem;
	background-color: rgb(15 23 42);
	color: rgb(226 232 240);
	overflow-x: auto;
	line-height: 1.6;
}
.odoc-prose pre code {
	padding: 0;
	background-color: transparent;
	color: inherit;
	font-size: 12px;
}

.odoc-prose img {
	max-width: 100%;
	height: auto;
	border-radius: 0.5rem;
	margin: 1rem 0;
}
.odoc-prose figure { margin: 1rem 0; }
.odoc-prose figcaption {
	font-size: 12px;
	color: rgb(100 116 139);
	text-align: center;
	margin-top: 0.4rem;
}

.odoc-prose hr {
	margin: 2rem 0;
	border: 0;
	border-top: 1px solid rgb(226 232 240);
}

.odoc-prose table {
	width: 100%;
	margin: 1rem 0;
	border-collapse: collapse;
	font-size: 12px;
}
.odoc-prose th,
.odoc-prose td {
	border: 1px solid rgb(226 232 240);
	padding: 0.5rem 0.75rem;
	text-align: left;
}
.odoc-prose th {
	background-color: rgb(248 250 252);
	font-weight: 600;
	color: rgb(15 23 42);
}
.odoc-prose tr:nth-child(even) td {
	background-color: rgb(248 250 252);
}

/* WordPress 对齐 */
.alignleft { float: left; margin: 0.5rem 1.5rem 0.5rem 0; }
.alignright { float: right; margin: 0.5rem 0 0.5rem 1.5rem; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 12px; color: rgb(100 116 139); text-align: center; }

/* 暗色模式正文 */
.dark .odoc-prose { color: rgb(203 213 225); }
.dark .odoc-prose h1,
.dark .odoc-prose h2,
.dark .odoc-prose h3,
.dark .odoc-prose h4,
.dark .odoc-prose strong { color: rgb(241 245 249); }
.dark .odoc-prose blockquote { background-color: rgb(30 41 59); color: rgb(203 213 225); }
.dark .odoc-prose code { background-color: rgb(30 41 59); color: rgb(244 114 182); }
.dark .odoc-prose pre { background-color: rgb(2 6 23); }
.dark .odoc-prose th,
.dark .odoc-prose td { border-color: rgb(51 65 85); }
.dark .odoc-prose th,
.dark .odoc-prose tr:nth-child(even) td { background-color: rgb(30 41 59); }
.dark .odoc-prose hr { border-color: rgb(51 65 85); }

/* ===== 登录表单（前台登录页） ===== */
#loginform p {
	margin-bottom: 0.75rem;
}
#loginform label {
	display: block;
	margin-bottom: 0.25rem;
	font-weight: 600;
	color: rgb(51 65 85);
}
.dark #loginform label {
	color: rgb(203 213 225);
}
#loginform .input {
	width: 100%;
	height: 2.5rem;
	padding: 0.5rem 0.75rem;
	border: 1px solid rgb(203 213 225);
	border-radius: 0.5rem;
	background: rgb(248 250 252);
	font-size: 12px;
	color: rgb(15 23 42);
	box-sizing: border-box;
}
#loginform .input:focus {
	border-color: var(--odoc-primary);
	outline: none;
	box-shadow: 0 0 0 3px rgba(59 130 246, 0.2);
}
.dark #loginform .input {
	border-color: rgb(51 65 85);
	background: rgb(30 41 59);
	color: rgb(241 245 249);
}
#loginform .login-remember {
	margin-bottom: 1rem;
}
#loginform .login-remember label {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	font-weight: 400;
	margin-bottom: 0;
}
#loginform .login-submit {
	margin-bottom: 0;
}
#loginform #wp-submit {
	width: 100%;
	height: 2.5rem;
	border: 0;
	border-radius: 0.5rem;
	background: var(--odoc-primary);
	color: #fff;
	font-weight: 600;
	font-size: 12px;
	cursor: pointer;
	transition: background-color 150ms;
}
#loginform #wp-submit:hover {
	background: var(--odoc-primary-dark);
}
#loginform .login-remember input[type='checkbox'] {
	accent-color: var(--odoc-primary);
}

/* ===== 主题色覆盖（Tailwind 蓝色类 → CSS 变量） ===== */
.bg-blue-600 { background-color: var(--odoc-primary) !important; }
.hover\:bg-blue-700:hover { background-color: var(--odoc-primary-dark) !important; }
.text-blue-600 { color: var(--odoc-primary) !important; }
.text-blue-700 { color: var(--odoc-primary-dark) !important; }
.hover\:text-blue-600:hover { color: var(--odoc-primary) !important; }
.hover\:border-blue-300:hover { border-color: var(--odoc-primary) !important; }
.focus\:border-blue-500:focus { border-color: var(--odoc-primary) !important; }
.dark\:text-blue-400 { color: var(--odoc-primary) !important; }
