@charset "UTF-8";
/*
 Theme Name: パイモリ
 Description: 巨乳ヒロインが登場する同人作品に特化した図鑑型サイト「パイモリ」専用の独自クラシックテーマ（SWELL非依存）。
 Author: パイモリ
 Version: 0.1.49
 Text Domain: paimori
*/

/*
 * Foundation: brand tokens + a minimal reset. Page-specific styles (work
 * cards, carousels, series pages, sale index, the front page) live in
 * this theme's other enqueued stylesheets (see functions.php's asset
 * registration), not in this file. assets/css/site.css carries the
 * actual header/footer/base layout CSS; this file exists mainly so
 * WordPress recognizes the theme and so the brand color tokens have one
 * canonical source enqueued first.
 */
:root {
	--hd-c-main: #5fa98a;
	--hd-c-dark: #2c5e47;
	--hd-c-light: #e7f1eb;
	--hd-c-light2: #eff6f1;
	--hd-c-border: #bbd9c8;
	--hd-c-border-strong: #9fc7b0;
	--hd-c-ink: #333;
	--hd-c-sale: #e24b4a;
	/* 1.0.29: single source for the page-outer background, shared by
	   every page-specific stylesheet instead of each redeclaring the
	   same color value. */
	--hd-page-bg: #eaf4f1;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	/*
	 * Issue #74: page-level guard added after fixing the actual overflow
	 * source (assets/css/work-pages.css's .data-band SP padding
	 * mismatch, see that file's own comment). This does not hide an
	 * unfixed overflow -- it only stops any future few-px page-level
	 * overflow from becoming a visible/scrollable horizontal shift
	 * (e.g. from a diagonal touch gesture on SP revealing this element's
	 * own background past the intended edge). Every intentional
	 * horizontal scroller in this theme (.hscroll-track, the carousel
	 * track; .hd-breadcrumb__inner, the breadcrumb) sets its own
	 * overflow-x:auto directly on itself, so this ancestor-level
	 * overflow-x:hidden does not affect either -- a descendant's own
	 * scroll container is unaffected by an ancestor clipping its outer
	 * overflow. PC (>=901px) is unaffected: no PC layout in this theme
	 * relies on the page itself overflowing horizontally.
	 */
	overflow-x: hidden;
}

body {
	margin: 0;
	color: var(--hd-c-ink);
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
	line-height: 1.7;
	background: var(--hd-page-bg);
	overflow-x: hidden;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
}

.hd-skip-link {
	position: absolute;
	top: -40px;
	left: 0;
	z-index: 1000;
	padding: 10px 16px;
	background: var(--hd-c-dark);
	color: #fff;
	text-decoration: none;
}

.hd-skip-link:focus {
	top: 0;
}

/* Standard screen-reader-only utility (WordPress core convention), used by
   aria-label-carrying icon buttons that also need a visible-when-focused
   text fallback. */
.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip-path: inset(50%);
	border: 0;
	white-space: nowrap;
}
