/**
 * Blocksy サイト枠 — lilygamelife 用（黒背景・紫アクセント）
 * Cursor 本文デザインとは別レイヤー。テーマカスタマイザーと併用可。
 */

:root {
	--lily-bg: #000000;
	--lily-text: #f5f5f5;
	--lily-muted: #cccccc;
	--lily-link: #d1a3ff;
	--lily-link-hover: #e8ccff;
	--lily-header-bg: rgba(0, 0, 0, 0.92);
	--lily-border: rgba(212, 175, 55, 0.35);
}

body {
	background-color: var(--lily-bg) !important;
	color: var(--lily-text);
}

a {
	color: var(--lily-link);
}

a:hover,
a:focus {
	color: var(--lily-link-hover);
}

/* Blocksy ヘッダー */
#header.ct-header,
header[data-id="type-1"],
.ct-header {
	background-color: var(--lily-header-bg) !important;
	border-bottom: 1px solid var(--lily-border);
}

.ct-header .site-title,
.ct-header .site-description,
.ct-header .menu > li > a {
	color: var(--lily-text) !important;
}

.ct-header .menu > li > a:hover {
	color: var(--lily-link) !important;
}

/* メインコンテンツ幅（Cursor カード 850px に合わせる） */
.lily-cursor-main,
.cursor-template-main .entry-content {
	max-width: 100%;
}

.cursor-template-main {
	padding-top: 24px;
	padding-bottom: 48px;
}

/* 通常ページのタイトル（Cursor ページ内 h1 とは別） */
.cursor-single-header {
	max-width: 850px;
	margin: 0 auto 24px;
	padding: 0 16px;
	text-align: center;
}

.cursor-single-title {
	color: #d1a3ff !important;
	font-size: 1.75rem;
	border-bottom: 2px double #d4af37;
	padding-bottom: 8px;
}

.cursor-single-meta {
	color: var(--lily-muted);
	font-size: 0.9rem;
	margin-top: 8px;
}

/* フッター */
#footer.ct-footer,
footer.ct-footer {
	background-color: #0a0a0a !important;
	border-top: 1px solid var(--lily-border);
	color: var(--lily-muted);
	font-size: 0.875rem;
}

#footer a {
	color: var(--lily-link);
}

#footer a:hover {
	color: var(--lily-link-hover);
}

.ct-footer .menu {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 1.25rem;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ct-footer .menu li {
	margin: 0;
}

.ct-footer .copyright {
	color: var(--lily-muted);
	text-align: center;
}

@media (min-width: 768px) {
	.ct-footer [data-row="middle"] .ct-container {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 12px 24px;
	}

	.ct-footer .copyright {
		text-align: left;
	}

	.ct-footer .menu {
		justify-content: flex-end;
	}
}

/* Blocksy パンくず・余白調整 */
.ct-container-fluid,
.ct-container {
	--theme-content-spacing: 0;
}

/* サイドバー非表示時の本文を中央寄せ */
[data-sidebar="none"] .lily-cursor-main {
	margin-left: auto;
	margin-right: auto;
}
