/* 100K Kids partial-funding companion layer. The locked V12 theme stylesheet remains the visual authority. */
.kksinglemission,
.kksinglemission button,
.kksinglemission input,
.kksinglemission select,
.kksinglemission output {
	font-family:"Archivo",Arial,sans-serif;
}

.kksinglemission .mission-core__grid {
	align-items:stretch;
}

.kksinglemission .mission-photo {
	height:auto;
	min-height:0;
	align-self:stretch;
}

.kksinglemission .mission-photo img {
	width:100%;
	height:100%;
	min-height:100%;
	object-fit:cover;
}

.kksinglemission .funding-panel {
	height:auto;
	min-height:0;
}

.kksinglemission .requested-list {
	flex:0 1 auto;
	min-height:0;
	max-height:none;
	overflow:visible;
	scrollbar-width:thin;
	scrollbar-color:#bdb7b2 transparent;
}

.kksinglemission .requested-list.is-capped {
	max-height:calc(var(--kk100-pf-row-height, 68px) * 3.5);
	overflow-y:auto;
	overscroll-behavior:contain;
}

.kksinglemission .requested-list.is-capped::-webkit-scrollbar { width:7px; }
.kksinglemission .requested-list.is-capped::-webkit-scrollbar-track { background:transparent; }
.kksinglemission .requested-list.is-capped::-webkit-scrollbar-thumb { background:#bdb7b2;border-radius:10px; }

.kksinglemission .book-row {
	grid-template-columns:44px minmax(0,1fr) auto;
}

.kksinglemission .book-qty {
	min-width:90px;
}

.kksinglemission .quantity-stepper {
	display:inline-grid;
	grid-template-columns:30px 32px 30px;
	align-items:stretch;
	border:1px solid var(--line);
	background:#fff;
}

.kksinglemission .quantity-stepper__button,
.kksinglemission .quantity-stepper__value {
	height:34px;
	margin:0;
	padding:0;
	display:grid;
	place-items:center;
	border:0;
	border-radius:0;
	background:#fff;
	color:var(--ink);
	font:inherit;
	line-height:1;
}

.kksinglemission .quantity-stepper__button {
	width:30px;
	font-size:16px;
	cursor:pointer;
}

.kksinglemission .quantity-stepper__value {
	width:32px;
	border-inline:1px solid var(--line);
	font-size:11px;
	font-weight:900;
}

.kksinglemission .quantity-stepper__button:hover,
.kksinglemission .quantity-stepper__button:focus-visible {
	background:var(--ink);
	color:#fff;
	outline:none;
}

.kksinglemission .quantity-stepper__button:focus-visible {
	box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ink);
	position:relative;
	z-index:2;
}

.kksinglemission .quantity-stepper__button:disabled {
	cursor:not-allowed;
	background:#fff;
	color:#aaa;
}

.kksinglemission .panel-footer {
	margin-top:auto;
}

.kksinglemission .panel-summary {
	align-items:center;
	padding:8px 0;
}

.kksinglemission .panel-summary > span {
	display:flex;
	gap:6px;
	align-items:baseline;
}

.kksinglemission .panel-summary > span strong {
	color:var(--ink);
	font-size:10px;
}

.kksinglemission .panel-summary > strong {
	font-size:13px;
	white-space:nowrap;
}

.kksinglemission .fund-button {
	min-height:54px;
	margin-top:10px;
	padding:10px 14px;
	cursor:pointer;
	transition:background .18s ease,border-color .18s ease,opacity .18s ease;
}

.kksinglemission .fund-button:not(:disabled):hover,
.kksinglemission .bottom-primary:not(:disabled):hover {
	background:var(--red-hover);
}

.kksinglemission .fund-button:disabled,
.kksinglemission .bottom-primary:disabled,
.kksinglemission .fund-button.is-disabled,
.kksinglemission .bottom-primary.is-disabled {
	cursor:not-allowed;
	opacity:.55;
}

.kksinglemission .fund-button:focus-visible,
.kksinglemission .bottom-primary:focus-visible,
.kksinglemission .bottom-secondary-btn:focus-visible {
	outline:2px solid var(--ink);
	outline-offset:3px;
}

.kksinglemission .bottom-primary {
	min-height:58px;
	padding:0 22px;
	cursor:pointer;
	transition:background .18s ease,border-color .18s ease,opacity .18s ease;
}

.kksinglemission .bottom-secondary-btn {
	min-height:50px;
	padding:0 16px;
	cursor:pointer;
}

.kksinglemission .share-feedback {
	grid-column:1/-1;
	margin:0;
	color:var(--muted);
	font-size:10px;
	line-height:1.4;
}

.kksinglemission .kk100-pf-notice {
	width:min(1240px,calc(100% - 64px));
	margin:18px auto 0;
	padding:12px 0;
	border-top:1px solid var(--line);
	border-bottom:1px solid var(--line);
	color:var(--ink);
	font-size:12px;
	line-height:1.5;
}

@media (max-width:1050px) {
	.kksinglemission .mission-photo { min-height:360px; }
	.kksinglemission .panel-footer { margin-top:0; }
}

@media (max-width:700px) {
	.kksinglemission .kk100-pf-notice { width:min(100% - 30px,1240px); }
	.kksinglemission .mission-photo { min-height:300px; }
	.kksinglemission .requested-list { max-height:none; }
	.kksinglemission .requested-list.is-capped { max-height:calc(var(--kk100-pf-row-height, 68px) * 3.5); }
	.kksinglemission .book-row { grid-template-columns:38px minmax(0,1fr) auto;gap:9px; }
	.kksinglemission .book-qty { min-width:86px; }
	.kksinglemission .quantity-stepper { grid-template-columns:28px 30px 28px; }
	.kksinglemission .quantity-stepper__button { width:28px;height:32px; }
	.kksinglemission .quantity-stepper__value { width:30px;height:32px; }
	.kksinglemission .fund-button { min-height:50px;padding:10px 12px; }
	.kksinglemission .bottom-primary { min-height:52px;padding:0 16px; }
	.kksinglemission .bottom-secondary-btn { min-height:48px;padding:0 14px; }
}

@media (prefers-reduced-motion:reduce) {
	.kksinglemission *,
	.kksinglemission *::before,
	.kksinglemission *::after { scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important; }
}
