/**
 * HappyPaws — paws-gallery KBoard skin
 */

@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&display=swap");

.kboard {
	width: 100%;
	max-width: none;
}

.kboard .hp-home-panel,
.kboard .hp-kboard-panel {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	padding: clamp(var(--hp-space-4, 1rem), 2vw, var(--hp-space-5, 1.5rem));
	font-family: var(--hp-font-family, "Nunito", system-ui, sans-serif);
	color: var(--hp-color-text, #4a3f47);
	background: var(--hp-color-surface, #fff);
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-2xl, 1.25rem);
	box-shadow: var(--hp-shadow-card, 0 4px 24px rgba(232, 145, 168, 0.08));
}

/* Category tabs */
#kboard-gallery-list .kboard-category.hp-board-tabs {
	margin-bottom: var(--hp-space-4, 1rem);
}

#kboard-gallery-list .kboard-category-list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--hp-space-2, 0.5rem);
	margin: 0;
	padding: 0;
	list-style: none;
	border: 0;
	background: transparent;
}

#kboard-gallery-list .kboard-category-list li {
	display: inline-block;
	padding: 0;
	border: 0;
}

#kboard-gallery-list .kboard-category-list li::before,
#kboard-gallery-list .kboard-category-list li::after {
	display: none;
}

#kboard-gallery-list .hp-board-tabs__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding: var(--hp-space-2, 0.5rem) var(--hp-space-4, 1rem);
	font-family: inherit;
	font-size: var(--hp-font-size-xs, 0.75rem);
	font-weight: var(--hp-font-weight-semibold, 600);
	color: var(--hp-color-text-muted, #8a7b82);
	background: var(--hp-color-bg-subtle, #fff8f0);
	border: 1px solid transparent;
	border-radius: var(--hp-radius-full, 999px);
	text-decoration: none;
}

#kboard-gallery-list .hp-board-tabs__btn.is-active,
#kboard-gallery-list .kboard-category-selected .hp-board-tabs__btn {
	color: var(--hp-color-accent, #e891a8);
	background: var(--hp-pink-50, #fff5f8);
	border-color: var(--hp-pink-200, #ffd0de);
}

#kboard-gallery-list .kboard-category.category-mobile select {
	width: 100%;
	min-height: 2.75rem;
	padding: var(--hp-space-2, 0.5rem) var(--hp-space-3, 0.75rem);
	font-family: inherit;
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-full, 999px);
	background: var(--hp-color-bg-subtle, #fff8f0);
}

#kboard-gallery-list .kboard-category.category-mobile {
	display: none;
}

/* Toolbar */
.hp-kboard-toolbar {
	margin-bottom: var(--hp-space-4, 1rem);
}

.hp-kboard-toolbar__form {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--hp-space-2, 0.5rem);
	align-items: stretch;
	width: 100%;
}

.hp-kboard-toolbar__select,
.hp-kboard-toolbar__input,
.hp-kboard-toolbar__btn,
.hp-kboard-toolbar__write {
	box-sizing: border-box;
	min-height: 2.75rem;
	height: 2.75rem;
	padding: 0 var(--hp-space-3, 0.75rem);
	font-family: inherit;
	font-size: var(--hp-font-size-sm, 0.875rem);
	line-height: 2.75rem;
}

.hp-kboard-toolbar__select,
.hp-kboard-toolbar__input {
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-full, 999px);
	background: var(--hp-color-bg-subtle, #fff8f0);
}

.hp-kboard-toolbar__select {
	flex: 0 0 auto;
	min-width: 5.5rem;
	padding-right: 1.75rem;
	line-height: normal;
}

.hp-kboard-toolbar__input {
	flex: 1 1 auto;
	min-width: 0;
	line-height: normal;
}

.hp-kboard-toolbar__btn,
.hp-kboard-toolbar__write {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	white-space: nowrap;
}

/* Gallery grid */
.hp-kboard-gallery-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--hp-space-3, 0.75rem);
	align-items: stretch;
}

.hp-kboard-gallery-card {
	display: flex;
	min-width: 0;
	height: 100%;
}

.hp-kboard-gallery-card__link {
	display: flex;
	flex-direction: column;
	width: 100%;
	min-width: 0;
	height: 100%;
	color: inherit;
	text-decoration: none;
	background: var(--hp-color-bg-subtle, #fff8f0);
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-lg, 0.75rem);
	overflow: hidden;
	transition:
		transform var(--hp-transition-fast, 0.15s ease),
		box-shadow var(--hp-transition-fast, 0.15s ease);
}

.hp-kboard-gallery-card__link:hover {
	transform: translateY(-2px);
	box-shadow: var(--hp-shadow-md, 0 4px 12px rgba(232, 145, 168, 0.12));
}

.hp-kboard-gallery-card.kboard-list-selected .hp-kboard-gallery-card__link {
	border-color: var(--hp-pink-200, #ffd0de);
	background: var(--hp-pink-50, #fff5f8);
}

.hp-kboard-gallery-card__thumb {
	position: relative;
	flex: 0 0 auto;
	aspect-ratio: 1 / 1;
	width: 100%;
	overflow: hidden;
	background: var(--hp-pink-50, #fff5f8);
}

.hp-kboard-gallery-card__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hp-kboard-gallery-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background:
		linear-gradient(135deg, var(--hp-pink-50, #fff5f8), var(--hp-color-bg-subtle, #fff8f0))
		center / cover no-repeat;
}

.hp-kboard-gallery-card__lock {
	position: absolute;
	top: var(--hp-space-2, 0.5rem);
	right: var(--hp-space-2, 0.5rem);
	width: 1.25rem;
	height: 1.25rem;
	background-color: rgba(255, 255, 255, 0.92);
	border-radius: var(--hp-radius-full, 999px);
}

.hp-kboard-gallery-card__new {
	position: absolute;
	top: var(--hp-space-2, 0.5rem);
	left: var(--hp-space-2, 0.5rem);
	padding: 0.1rem 0.4rem;
	font-size: 0.65rem;
	font-weight: 700;
	color: #fff;
	background: var(--hp-pink-500, #e891a8);
	border-radius: var(--hp-radius-sm, 0.25rem);
}

.hp-kboard-gallery-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: var(--hp-space-2, 0.5rem);
	min-height: 5.5rem;
	padding: var(--hp-space-3, 0.75rem);
}

.hp-kboard-gallery-card__title {
	display: -webkit-box;
	flex: 1 1 auto;
	margin: 0;
	overflow: hidden;
	font-size: var(--hp-font-size-sm, 0.875rem);
	font-weight: var(--hp-font-weight-semibold, 600);
	line-height: 1.4;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	word-break: break-word;
}

.hp-kboard-gallery-card__badge {
	display: inline-block;
	margin-right: var(--hp-space-1, 0.25rem);
	padding: 0.1rem 0.4rem;
	font-size: 0.65rem;
	font-weight: 700;
	color: #fff;
	vertical-align: middle;
	background: var(--hp-pink-500, #e891a8);
	border-radius: var(--hp-radius-sm, 0.25rem);
}

.hp-kboard-gallery-card__badge--popular {
	background: var(--hp-pink-600, #d67a94);
}

.hp-kboard-gallery-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--hp-space-2, 0.5rem);
	align-items: center;
	margin-top: auto;
	font-size: var(--hp-font-size-xs, 0.75rem);
	color: var(--hp-color-text-muted, #8a7b82);
}

.hp-kboard-gallery-card__stat {
	display: inline-flex;
	gap: 0.2rem;
	align-items: center;
	white-space: nowrap;
}

.hp-kboard-gallery-card__date {
	margin-left: auto;
	white-space: nowrap;
}

.hp-kboard-gallery-card--hidden {
	display: none;
}

.hp-kboard-gallery-load-more {
	display: flex;
	justify-content: center;
	margin-top: var(--hp-space-4, 1rem);
}

.hp-kboard-gallery-load-more__btn {
	min-width: 8rem;
}

/* Pagination */
#kboard-gallery-list .kboard-pagination {
	padding: var(--hp-space-5, 1.5rem) 0 var(--hp-space-2, 0.5rem);
}

#kboard-gallery-list .kboard-pagination-pages {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--hp-space-1, 0.25rem);
	margin: 0;
	padding: 0;
	list-style: none;
}

#kboard-gallery-list .kboard-pagination-pages li a,
#kboard-gallery-list .kboard-pagination-pages li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.75rem;
	min-height: 2.75rem;
	padding: 0 var(--hp-space-2, 0.5rem);
	font-size: var(--hp-font-size-sm, 0.875rem);
	color: var(--hp-color-text-muted, #8a7b82);
	background: var(--hp-color-bg-subtle, #fff8f0);
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-full, 999px);
	text-decoration: none;
}

#kboard-gallery-list .kboard-pagination-pages li.active a {
	color: var(--hp-color-accent, #e891a8);
	background: var(--hp-pink-50, #fff5f8);
	border-color: var(--hp-pink-200, #ffd0de);
	font-weight: var(--hp-font-weight-semibold, 600);
}

/* Document — gallery viewer */
.hp-kboard-gallery-document {
	overflow: hidden;
}

.hp-kboard-gallery-viewer {
	margin: 0 0 var(--hp-space-5, 1.5rem);
}

.hp-kboard-gallery-viewer__stage {
	position: relative;
	overflow: hidden;
	background: var(--hp-color-bg-subtle, #fff8f0);
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-xl, 1rem);
}

.hp-kboard-gallery-viewer__track {
	position: relative;
	width: 100%;
	aspect-ratio: 4 / 5;
	max-height: min(72vh, 960px);
}

.hp-kboard-gallery-viewer__slide {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--hp-transition-fast, 0.15s ease);
}

.hp-kboard-gallery-viewer__slide.is-active {
	opacity: 1;
	pointer-events: auto;
}

.hp-kboard-gallery-viewer__slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: var(--hp-color-bg-subtle, #fff8f0);
}

.hp-kboard-gallery-viewer__nav {
	position: absolute;
	top: 50%;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	font-size: 1.5rem;
	line-height: 1;
	color: var(--hp-color-text, #4a3f47);
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-full, 999px);
	box-shadow: var(--hp-shadow-sm, 0 1px 2px rgba(232, 145, 168, 0.2));
	cursor: pointer;
	transform: translateY(-50%);
}

.hp-kboard-gallery-viewer__nav:hover,
.hp-kboard-gallery-viewer__nav:focus-visible {
	color: var(--hp-color-accent, #e891a8);
	border-color: var(--hp-pink-200, #ffd0de);
}

.hp-kboard-gallery-viewer__nav--prev {
	left: var(--hp-space-3, 0.75rem);
}

.hp-kboard-gallery-viewer__nav--next {
	right: var(--hp-space-3, 0.75rem);
}

.hp-kboard-gallery-viewer__counter {
	position: absolute;
	right: var(--hp-space-3, 0.75rem);
	bottom: var(--hp-space-3, 0.75rem);
	z-index: 2;
	padding: 0.25rem 0.65rem;
	font-size: var(--hp-font-size-xs, 0.75rem);
	font-weight: var(--hp-font-weight-semibold, 600);
	font-variant-numeric: tabular-nums;
	color: #fff;
	background: rgba(74, 63, 71, 0.72);
	border-radius: var(--hp-radius-full, 999px);
}

.hp-kboard-gallery-viewer__thumbs-wrap {
	display: flex;
	justify-content: center;
	margin-top: var(--hp-space-3, 0.75rem);
}

.hp-kboard-gallery-viewer__thumbs {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--hp-space-2, 0.5rem);
	justify-content: center;
	width: fit-content;
	max-width: 100%;
	margin: 0 auto;
	padding-bottom: var(--hp-space-1, 0.25rem);
	overflow-x: auto;
	scrollbar-width: thin;
	scrollbar-color: var(--hp-pink-200, #ffd0de) transparent;
}

.hp-kboard-gallery-viewer__thumbs::-webkit-scrollbar {
	height: 6px;
}

.hp-kboard-gallery-viewer__thumbs::-webkit-scrollbar-thumb {
	background: var(--hp-pink-200, #ffd0de);
	border-radius: var(--hp-radius-full, 999px);
}

.hp-kboard-gallery-viewer__thumb {
	flex: 0 0 auto;
	width: 4.5rem;
	height: 4.5rem;
	padding: 0;
	overflow: hidden;
	background: var(--hp-color-bg-subtle, #fff8f0);
	border: 2px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-md, 0.5rem);
	cursor: pointer;
	transition:
		border-color var(--hp-transition-fast, 0.15s ease),
		box-shadow var(--hp-transition-fast, 0.15s ease);
}

.hp-kboard-gallery-viewer__thumb.is-active {
	border-color: var(--hp-color-accent, #e891a8);
	box-shadow: 0 0 0 2px var(--hp-pink-50, #fff5f8);
}

.hp-kboard-gallery-viewer__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hp-kboard-document__head {
	margin-bottom: var(--hp-space-5, 1.5rem);
	padding-bottom: var(--hp-space-4, 1rem);
	border-bottom: 1px solid var(--hp-color-border, #ffe4ec);
}

.hp-kboard-document__title {
	margin: 0 0 var(--hp-space-3, 0.75rem);
	font-size: var(--hp-font-size-2xl, 1.5rem);
	font-weight: var(--hp-font-weight-extrabold, 800);
	line-height: var(--hp-line-height-tight, 1.25);
}

.hp-kboard-document__title-link {
	color: inherit;
	text-decoration: none;
	transition: color var(--hp-transition-fast, 0.15s ease);
}

.hp-kboard-document__title-link:hover,
.hp-kboard-document__title-link:focus-visible {
	color: var(--hp-color-accent, #e891a8);
}

.hp-kboard-document__meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--hp-space-2, 0.5rem) var(--hp-space-4, 1rem);
	font-size: var(--hp-font-size-sm, 0.875rem);
	color: var(--hp-color-text-muted, #8a7b82);
}

.hp-kboard-document__figure {
	margin: 0;
	overflow: hidden;
	border-radius: var(--hp-radius-xl, 1rem);
	border: 1px solid var(--hp-color-border, #ffe4ec);
}

.hp-kboard-document__figure img {
	width: 100%;
	height: auto;
}

.hp-kboard-document__body .content-view {
	font-size: var(--hp-font-size-base, 1rem);
	line-height: 1.75;
}

.hp-kboard-document__body .content-view img {
	max-width: 100%;
	height: auto;
	border-radius: var(--hp-radius-lg, 0.75rem);
}

.hp-kboard-document__actions,
.hp-kboard-document__control,
.hp-kboard-editor__control {
	display: flex;
	flex-wrap: wrap;
	gap: var(--hp-space-2, 0.5rem);
	align-items: center;
	justify-content: space-between;
	margin-top: var(--hp-space-5, 1.5rem);
	padding-top: var(--hp-space-4, 1rem);
	border-top: 1px solid var(--hp-color-border, #ffe4ec);
}

.hp-kboard-document__actions {
	justify-content: center;
	width: 100%;
}

.hp-kboard-document__control .left,
.hp-kboard-document__control .right,
.hp-kboard-editor__control .left,
.hp-kboard-editor__control .right {
	display: flex;
	flex-wrap: wrap;
	gap: var(--hp-space-2, 0.5rem);
}

.hp-kboard-document__nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--hp-space-3, 0.75rem);
	margin-top: var(--hp-space-5, 1.5rem);
	padding-top: var(--hp-space-4, 1rem);
	border-top: 1px solid var(--hp-color-border, #ffe4ec);
}

.hp-kboard-document__nav a {
	display: flex;
	flex-direction: column;
	gap: var(--hp-space-1, 0.25rem);
	padding: var(--hp-space-3, 0.75rem);
	font-size: var(--hp-font-size-sm, 0.875rem);
	color: var(--hp-color-text, #4a3f47);
	background: var(--hp-color-bg-subtle, #fff8f0);
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-lg, 0.75rem);
	text-decoration: none;
}

.hp-kboard-document__nav .kboard-next-document a {
	text-align: right;
}

.hp-kboard-document__nav .navi-label {
	font-size: var(--hp-font-size-xs, 0.75rem);
	font-weight: var(--hp-font-weight-semibold, 600);
	color: var(--hp-color-text-muted, #8a7b82);
}

/* Editor */
.hp-kboard-panel__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--hp-space-3, 0.75rem);
	margin-bottom: var(--hp-space-4, 1rem);
}

.hp-kboard-panel__title-link {
	color: inherit;
	text-decoration: none;
}

.hp-kboard-editor-list {
	margin-top: var(--hp-space-6, 2rem);
}

.hp-kboard-editor .kboard-attr-row {
	padding: var(--hp-space-3, 0.75rem) 0;
	border-bottom: 1px solid var(--hp-color-border, #ffe4ec);
}

.hp-kboard-editor .attr-name {
	display: block;
	margin-bottom: var(--hp-space-2, 0.5rem);
	font-size: var(--hp-font-size-sm, 0.875rem);
	font-weight: var(--hp-font-weight-semibold, 600);
}

.hp-kboard-editor input[type="text"],
.hp-kboard-editor input[type="password"],
.hp-kboard-editor input[type="email"],
.hp-kboard-editor select,
.hp-kboard-editor textarea,
.hp-kboard-editor .editor-textarea {
	width: 100%;
	box-sizing: border-box;
	min-height: 2.75rem;
	padding: var(--hp-space-2, 0.5rem) var(--hp-space-3, 0.75rem);
	font-family: inherit;
	font-size: var(--hp-font-size-sm, 0.875rem);
	border: 1px solid var(--hp-color-border, #ffe4ec);
	border-radius: var(--hp-radius-lg, 0.75rem);
	background: var(--hp-color-bg-subtle, #fff8f0);
}

.hp-kboard-editor .editor-textarea,
.hp-kboard-editor textarea {
	min-height: 12rem;
}

/* Latest widget — reuses list-card grid (streamer page / kboard_latest) */
.hp-kboard-gallery-latest.hp-kboard-gallery-grid {
	width: 100%;
}

.hp-kboard-gallery-latest .hp-kboard-gallery-card {
	display: flex;
	min-width: 0;
	height: 100%;
}

.hp-kboard-gallery-latest .hp-kboard-gallery-card__link {
	display: flex;
	flex-direction: column;
	width: 100%;
	min-width: 0;
	height: 100%;
}

.hp-kboard-gallery-latest .hp-kboard-gallery-card__thumb {
	aspect-ratio: 1 / 1;
}

.hp-kboard-gallery-latest .hp-kboard-gallery-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Icons */
.kboard-icon-lock {
	display: inline-block;
	width: 14px;
	height: 16px;
	margin-right: 4px;
	vertical-align: middle;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e891a8'%3E%3Cpath d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z'/%3E%3C/svg%3E") center/contain no-repeat;
}

.kboard-avatar-poweredby {
	display: none;
}

.hp-kboard-document__control--pre-comments {
	margin-top: var(--hp-space-5, 1.5rem);
	margin-bottom: var(--hp-space-4, 1rem);
	padding-top: var(--hp-space-4, 1rem);
	border-top: 1px solid var(--hp-color-border, #ffe4ec);
}

.hp-kboard-comments-area {
	width: 100%;
	margin-bottom: var(--hp-space-5, 1.5rem);
	--hp-comment-img-size: 160px;
}

.hp-kboard-comments-area .comments-list-content img,
.hp-kboard-comments-area .comments-list-image1 img {
	display: block;
	width: min(100%, var(--hp-comment-img-size));
	height: auto;
	aspect-ratio: 1 / 1;
	max-width: var(--hp-comment-img-size);
	max-height: var(--hp-comment-img-size);
	object-fit: cover;
}

/* KBoard Comments default skin — HappyPaws pink theme */
.hp-kboard-panel .kboard-comments-default,
.hp-kboard-comments-area .kboard-comments-default,
.hp-page--kboard .kboard-comments-default {
	--kboard-comments-primary: var(--hp-color-accent, #e891a8);
	--kboard-comments-primary-hover: var(--hp-pink-600, #d67a94);
	--kboard-comments-text: var(--hp-color-text, #4a3f47);
	--kboard-comments-text-muted: var(--hp-color-text-muted, #8a7b82);
	--kboard-comments-bg: var(--hp-color-surface, #fff);
	--kboard-comments-bg-alt: var(--hp-color-bg-subtle, #fff8f0);
	--kboard-comments-border: var(--hp-color-border, #ffe4ec);
	--kboard-comments-border-light: var(--hp-pink-50, #fff5f8);
	--kboard-comments-radius: var(--hp-radius-lg, 0.75rem);
	margin-top: var(--hp-space-5, 1.5rem);
	padding-top: var(--hp-space-4, 1rem);
	border-top: 1px solid var(--hp-color-border, #ffe4ec);
	font-family: var(--hp-font-family, "Nunito", system-ui, sans-serif);
	color: var(--hp-color-text, #4a3f47);
}

.hp-kboard-panel .kboard-comments-default .comments-count .comments-total-count,
.hp-kboard-comments-area .kboard-comments-default .comments-count .comments-total-count,
.hp-page--kboard .kboard-comments-default .comments-count .comments-total-count {
	color: var(--hp-color-accent, #e891a8);
}

.hp-kboard-panel .kboard-comments-default .comments-submit-button input[type="submit"],
.hp-kboard-comments-area .kboard-comments-default .comments-submit-button input[type="submit"],
.hp-page--kboard .kboard-comments-default .comments-submit-button input[type="submit"] {
	min-height: 2.75rem;
	padding: var(--hp-space-2, 0.5rem) var(--hp-space-5, 1.5rem);
	font-family: inherit;
	font-size: var(--hp-font-size-sm, 0.875rem);
	font-weight: var(--hp-font-weight-semibold, 600);
	color: #fff;
	background: linear-gradient(135deg, var(--hp-pink-400, #f0a0b4), var(--hp-pink-500, #e891a8));
	border: none;
	border-radius: var(--hp-radius-full, 999px);
	cursor: pointer;
}

@media (min-width: 768px) {
	.hp-kboard-gallery-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: var(--hp-space-4, 1rem);
	}

	.hp-kboard-gallery-card--hidden {
		display: flex;
	}

	.hp-kboard-gallery-load-more {
		display: none;
	}
}

@media (max-width: 767px) {
	#kboard-gallery-list .kboard-category.category-mobile {
		display: block;
	}

	#kboard-gallery-list .kboard-category.category-pc {
		display: none;
	}

	.hp-kboard-toolbar__form {
		flex-wrap: wrap;
	}

	.hp-kboard-toolbar__select,
	.hp-kboard-toolbar__input {
		flex: 1 1 100%;
		width: 100%;
	}

	.hp-kboard-toolbar__btn,
	.hp-kboard-toolbar__write {
		flex: 1 1 calc(50% - var(--hp-space-1, 0.25rem));
	}

	.hp-kboard-document__title {
		font-size: var(--hp-font-size-xl, 1.25rem);
	}

	.hp-kboard-document__meta {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--hp-space-1, 0.25rem);
	}

	.hp-kboard-document__control,
	.hp-kboard-editor__control {
		flex-direction: column;
		align-items: stretch;
	}

	.hp-kboard-document__control .left,
	.hp-kboard-document__control .right,
	.hp-kboard-editor__control .left,
	.hp-kboard-editor__control .right {
		width: 100%;
		justify-content: center;
	}

	.hp-kboard-document__nav {
		grid-template-columns: 1fr;
	}

	.hp-kboard-document__nav .kboard-next-document a {
		text-align: left;
	}

	.hp-kboard-gallery-viewer__track {
		max-height: 70vh;
	}

	.hp-kboard-gallery-viewer__nav {
		width: 2.25rem;
		height: 2.25rem;
		font-size: 1.25rem;
	}

	.hp-kboard-gallery-viewer__thumb {
		width: 3.75rem;
		height: 3.75rem;
	}
}
