/*
 * アクセシビリティ基礎(スキップリンク・フォーカス表示)と、
 * lang属性別のフォント/文字組み調整のみを担う最小限のCSS。
 * デザイン(配色・レイアウト)は子テーマの theme.json / パターンで行う。
 */

/* スキップリンク: 通常は視覚的に隠し、フォーカス時のみ表示する */
.localift-skip-link {
	position: absolute;
	top: -999px;
	left: 0;
	z-index: 100000;
	padding: 0.75em 1.25em;
	background: #1e1e1e;
	color: #ffffff;
	text-decoration: none;
}

.localift-skip-link:focus {
	top: 0;
}

/* フォーカス表示: キーボード操作時にどの要素にいるか分かるようにする */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible {
	outline: 2px solid var( --wp--preset--color--accent, #3a5a7a );
	outline-offset: 2px;
}

/*
 * 言語別の文字組み調整。lang属性に応じて行間・字間を切り替える(hreflangの出力自体はプラグイン側の担当)。
 * :where()で包み、詳細度を0にしている(D102)。素の:lang(ja){...}は疑似クラス分だけ詳細度が
 * 高くなり(0-1-0)、子テーマ側の普通の要素セレクタ(例: h1,h2,h3{line-height:...}。0-0-1)を
 * 読み込み順によらず上書きしてしまう。「デザインは子テーマで行う」という建て付け上、
 * 子テーマが素直な指定で上書きできる詳細度に保つ必要がある。
 */
:where( :lang( ja ) ) {
	line-height: 1.8;
	letter-spacing: 0.02em;
}

:where( :lang( en ) ) {
	line-height: 1.6;
	letter-spacing: normal;
}

/* ══ ブラウザ既定のマージンを消す（D364・N153）══════════════
 * ★figure は既定で margin:1em 40px を持つ。左右40pxぶん、図だけが80px細くなる。
 * PCでは気づきにくく、360pxでは図が潰れる（C001で実際に踏んだ）。
 * 同じ形で既定マージンを持つ要素をまとめて測って（2026-09-13 実測）、
 * 意図せず効くものを落とす。値は theme.json / パターン側で決める。
 *
 *   figure      margin 16px 40px      ← 左右40pxが効く
 *   blockquote  margin 16px 40px      ← 同上
 *   dl          margin 16px 0
 *   fieldset    margin 0 2px / padding 5.6px 12px 10px  ← 枠と余白の両方
 *   menu / dir  margin 16px 0 / padding-left 40px
 *   pre         margin 13px 0
 *   hr          margin 8px 0
 *
 * ★hr と pre は「本文の中で意味のある間」を持つので、ここでは落とさない。
 * 落とすのは「器として使うのに既定の間が邪魔になるもの」だけ。 */
figure,
blockquote,
dl,
menu {
	margin: 0;
}

menu {
	padding-left: 0;
	list-style: none;
}

fieldset {
	margin: 0;
	padding: 0;
	border: 0;
	min-width: 0; /* fieldset は min-width:min-content が既定で、中身が縮まない */
}
