/* KlikOto Core — UI wishlist, quick view, dialog, WhatsApp. Memakai
   variabel tema bila ada, dengan fallback agar tetap rapi di tema lain. */
.ktoc-icon-btn, .ktoc-wl-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	border: 0; cursor: pointer; font: inherit; color: var(--wp--preset--color--contrast, #172033);
}
.ktoc-card-actions {
	position: absolute; top: 10px; right: 10px; z-index: 3; display: flex; flex-direction: column; gap: 8px;
}
.ktoc-card-actions .ktoc-icon-btn {
	width: 40px; height: 40px; border-radius: 50%; background: var(--wp--preset--color--base, #fff);
	box-shadow: 0 1px 2px rgba(15,23,42,.08), 0 4px 12px rgba(15,23,42,.08);
	transition: transform 160ms ease, opacity 160ms ease, background-color 160ms ease;
}
.ktoc-card-actions .ktoc-icon-btn:hover { transform: scale(1.06); }
.ktoc-card-actions .ktoc-icon-btn:focus-visible { outline: 2px solid var(--wp--preset--color--primary, #2563eb); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) {
	.ktoc-card-actions .ktoc-qv-btn { opacity: 0; transform: translateX(6px); }
	.kto-card:hover .ktoc-qv-btn, .wc-block-product:hover .ktoc-qv-btn, .ktoc-qv-btn:focus-visible { opacity: 1; transform: none; }
}
.ktoc-wl-btn.is-active .ktoc-heart { fill: var(--wp--preset--color--sale, #dc2626); stroke: var(--wp--preset--color--sale, #dc2626); }
.ktoc-wl-btn--label {
	min-height: 44px; padding: 0 14px; background: transparent; border: 1px solid var(--wp--preset--color--border, #e2e8f0);
	border-radius: var(--wp--custom--radius--button, 6px); font-weight: 600;
}
.ktoc-wl-btn--label:hover { border-color: currentColor; }
.ktoc-wl-link { position: relative; }
.ktoc-wl-count {
	position: absolute; top: 4px; right: 2px; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 9px;
	background: var(--wp--preset--color--primary, #2563eb); color: var(--wp--preset--color--on-primary, #fff);
	font-size: 11px; font-weight: 700; line-height: 18px; text-align: center;
}
.ktoc-link-btn {
	display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 4px; background: none; border: 0;
	font: inherit; font-weight: 600; color: var(--wp--preset--color--contrast, #172033); text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.ktoc-toast {
	position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 100000;
	background: var(--wp--preset--color--contrast, #172033); color: var(--wp--preset--color--base, #fff);
	padding: 10px 16px; border-radius: 8px; font-size: 15px; box-shadow: 0 10px 30px rgba(0,0,0,.2);
	animation: ktoc-in 180ms ease-out;
}
.ktoc-toast.is-out { opacity: 0; transition: opacity 400ms; }
@keyframes ktoc-in { from { opacity: 0; transform: translate(-50%, 8px); } to { opacity: 1; transform: translate(-50%, 0); } }

/* Dialog (quick view & size guide) */
.ktoc-dialog {
	width: min(920px, calc(100vw - 32px)); max-height: calc(100vh - 48px); padding: 0; border: 0;
	border-radius: var(--wp--custom--radius--large, 12px); background: var(--wp--preset--color--base, #fff);
	color: var(--wp--preset--color--contrast, #172033); box-shadow: 0 24px 60px rgba(15,23,42,.25); overflow: auto;
}
.ktoc-dialog::backdrop { background: rgba(15, 23, 42, .55); }
.ktoc-dialog[open] { animation: ktoc-pop 180ms ease-out; }
@keyframes ktoc-pop { from { opacity: 0; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: none; } }
html.ktoc-modal-open { overflow: hidden; }
.ktoc-dialog__close {
	position: absolute; top: 10px; right: 10px; z-index: 2; width: 44px; height: 44px; border: 0; border-radius: 50%;
	background: var(--wp--preset--color--surface, #f5f7fa); color: inherit; font-size: 26px; line-height: 1; cursor: pointer;
}
.ktoc-dialog__head { position: sticky; top: 0; background: inherit; display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; border-bottom: 1px solid var(--wp--preset--color--border, #e2e8f0); }
.ktoc-dialog__head .ktoc-dialog__close { position: static; }
.ktoc-dialog__title { margin: 0; font-size: 1.25rem; }
.ktoc-dialog__body { padding: 20px; }
.ktoc-dialog--sheet { width: min(720px, calc(100vw - 32px)); }

.ktoc-qv__body { padding: 0; }
.ktoc-qv__loading { padding: 48px; text-align: center; }
.ktoc-qv__grid { display: grid; grid-template-columns: 1fr 1fr; }
.ktoc-qv__media { background: var(--wp--preset--color--surface, #f5f7fa); }
.ktoc-qv__media img { width: 100%; height: 100%; max-height: 620px; object-fit: cover; display: block; }
.ktoc-qv__info { padding: 32px 28px; display: flex; flex-direction: column; gap: 14px; }
.ktoc-qv__title { margin: 0; padding-right: 40px; font-size: 1.5rem; line-height: 1.25; }
.ktoc-qv__price { font-size: 1.25rem; font-weight: 600; }
.ktoc-qv__short p { margin: 0; color: var(--wp--preset--color--muted, #64748b); }
.ktoc-qv__attr { border: 0; padding: 0; margin: 0 0 14px; }
.ktoc-qv__attr legend { font-weight: 600; margin-bottom: 8px; padding: 0; }
.ktoc-qv__opts { display: flex; flex-wrap: wrap; gap: 8px; }
.ktoc-qv__opts input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.ktoc-qv__opts label {
	min-width: 48px; min-height: 44px; padding: 0 14px; display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid var(--wp--preset--color--border, #e2e8f0); border-radius: var(--wp--custom--radius--small, 4px); cursor: pointer; font-weight: 500;
}
.ktoc-qv__opts input:checked + label { background: var(--wp--preset--color--contrast, #172033); color: var(--wp--preset--color--base, #fff); border-color: var(--wp--preset--color--contrast, #172033); }
.ktoc-qv__opts input:focus-visible + label { outline: 2px solid var(--wp--preset--color--primary, #2563eb); outline-offset: 2px; }
.ktoc-qv__row { display: flex; gap: 10px; }
.ktoc-qv__qty { width: 76px; min-height: 48px; text-align: center; }
.ktoc-qv__add { flex: 1; min-height: 48px; border: 0; cursor: pointer; }
.ktoc-qv__add:disabled { opacity: .5; cursor: not-allowed; }
.ktoc-qv__msg { margin: 0; min-height: 1.5em; color: var(--wp--preset--color--muted, #64748b); font-size: .9375rem; }
.ktoc-qv__more { font-weight: 600; }
@media (max-width: 700px) {
	.ktoc-qv__grid { grid-template-columns: 1fr; }
	.ktoc-qv__media img { max-height: 46vh; }
	.ktoc-qv__info { padding: 20px; }
}

/* Wishlist page */
.ktoc-wishlist__note { padding: 12px 16px; background: var(--wp--preset--color--surface, #f5f7fa); border-radius: 8px; font-size: .9375rem; }
.ktoc-wishlist__list { list-style: none; margin: 0; padding: 0; }
.ktoc-wishlist__item { display: grid; grid-template-columns: 96px 1fr auto; gap: 16px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--wp--preset--color--border, #e2e8f0); }
.ktoc-wishlist__img img { width: 96px; height: 96px; object-fit: cover; border-radius: 6px; display: block; background: #f1f5f9; }
.ktoc-wishlist__info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ktoc-wishlist__name { font-weight: 600; text-decoration: none; }
.ktoc-wishlist__stock { color: var(--wp--preset--color--sale, #dc2626); font-weight: 600; font-size: .9375rem; }
.ktoc-wishlist__actions { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.ktoc-wishlist__add { min-height: 44px; border: 0; cursor: pointer; white-space: nowrap; text-decoration: none; }
.ktoc-wishlist__add.is-secondary { background: transparent !important; color: var(--wp--preset--color--contrast, #172033) !important; border: 1px solid currentColor !important; }
.ktoc-wishlist__empty { text-align: center; padding: 56px 16px; border: 1px dashed var(--wp--preset--color--border, #e2e8f0); border-radius: 12px; }
.ktoc-wishlist__empty-title { font-size: 1.25rem; font-weight: 700; margin: 0 0 4px; }
@media (max-width: 600px) {
	.ktoc-wishlist__item { grid-template-columns: 72px 1fr; }
	.ktoc-wishlist__img img { width: 72px; height: 72px; }
	.ktoc-wishlist__actions { grid-column: 1 / -1; flex-direction: row; justify-content: space-between; align-items: center; }
}

/* WhatsApp */
.ktoc-wa-btn {
	display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border-radius: var(--wp--custom--radius--button, 6px);
	border: 1px solid #1f7a45; color: #14613a; text-decoration: none; font-weight: 600; background: transparent;
}
.ktoc-wa-btn:hover { background: #1f7a45; color: #fff; }
.kto-wa-float {
	position: fixed; right: 16px; bottom: 16px; z-index: 45; width: 56px; height: 56px; border-radius: 50%;
	display: grid; place-items: center; background: #1f7a45; color: #fff; box-shadow: 0 8px 24px rgba(0,0,0,.2);
}
.kto-wa-float svg { width: 28px; height: 28px; }

/* Pembayaran & demo notice */
.ktoc-payments { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 0; font-size: .875rem; color: var(--wp--preset--color--muted, #64748b); }
.ktoc-payments__item { border: 1px solid var(--wp--preset--color--border, #e2e8f0); border-radius: 4px; padding: 2px 8px; background: var(--wp--preset--color--base, #fff); color: var(--wp--preset--color--contrast, #172033); }
.ktoc-demo-notice { margin-top: 16px; font-size: .875rem; color: var(--wp--preset--color--muted, #64748b); border-inline-start: 3px solid var(--wp--preset--color--primary, #2563eb); padding-inline-start: 12px; }
.ktoc-editor-placeholder { padding: 8px 12px; border: 1px dashed #94a3b8; border-radius: 4px; font-size: 13px; }

/* --- Form inquiry ------------------------------------------------------ */
.ktoc-form { --ktoc-gap: 16px; }
.ktoc-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--ktoc-gap); }
.ktoc-form--newsletter .ktoc-form__grid { grid-template-columns: 1fr; }
.ktoc-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ktoc-field--wide, .ktoc-field--textarea, .ktoc-field--checkbox { grid-column: 1 / -1; }
.ktoc-field label { font-weight: 600; font-size: 0.9375rem; }
.ktoc-field input:not([type=checkbox]), .ktoc-field select, .ktoc-field textarea {
	width: 100%; min-height: 48px; padding: 10px 14px; font: inherit; font-size: 1rem; box-sizing: border-box;
	color: var(--wp--preset--color--contrast, #172033); background: var(--wp--preset--color--base, #fff);
	border: 1px solid var(--wp--preset--color--muted, #64748b); border-radius: var(--wp--custom--radius--medium, 8px);
}
.ktoc-field textarea { min-height: 140px; resize: vertical; }
.ktoc-field input:focus-visible, .ktoc-field select:focus-visible, .ktoc-field textarea:focus-visible { outline: 2px solid var(--wp--preset--color--primary, #2563eb); outline-offset: 1px; border-color: var(--wp--preset--color--primary, #2563eb); }
.ktoc-field.has-error input, .ktoc-field.has-error select, .ktoc-field.has-error textarea { border-color: var(--wp--preset--color--sale, #dc2626); }
.ktoc-field__error { margin: 0; color: var(--wp--preset--color--sale, #b91c1c); font-size: 0.875rem; font-weight: 600; }
.ktoc-check { display: flex; gap: 10px; align-items: flex-start; font-weight: 400 !important; }
.ktoc-check input { width: 22px; height: 22px; margin-top: 2px; accent-color: var(--wp--preset--color--primary, #2563eb); }
.ktoc-req { color: var(--wp--preset--color--sale, #b91c1c); }
.ktoc-form__hp { position: absolute !important; inset-inline-start: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ktoc-form__note, .ktoc-form__privacy { font-size: 0.875rem; color: var(--wp--preset--color--muted, #64748b); margin: 12px 0; }
.ktoc-form__submit { min-height: 48px; margin-top: 4px; cursor: pointer; }
.ktoc-form__notice { padding: 14px 16px; border-radius: var(--wp--custom--radius--medium, 8px); margin-bottom: 16px; border-inline-start: 4px solid; }
.ktoc-form__notice--ok { background: #ECFDF3; border-color: #15803D; color: #14532D; }
.ktoc-form__notice--error { background: #FEF2F2; border-color: #B91C1C; color: #7F1D1D; }
@media (max-width: 600px) { .ktoc-form__grid { grid-template-columns: 1fr; } }

/* --- Countdown --------------------------------------------------------- */
.ktoc-countdown { text-align: center; }
.ktoc-countdown__label { margin: 0 0 8px; font-weight: 600; letter-spacing: .02em; }
.ktoc-countdown__units { display: inline-flex; gap: 10px; flex-wrap: wrap; justify-content: center; }
.ktoc-countdown__unit { display: flex; flex-direction: column; align-items: center; min-width: 64px; padding: 10px 8px; border-radius: var(--wp--custom--radius--medium, 8px); background: rgba(255,255,255,.14); border: 1px solid rgba(127,127,127,.35); }
.ktoc-countdown__num { font-size: clamp(1.5rem, 4vw, 2.25rem); font-weight: 800; line-height: 1.1; font-variant-numeric: tabular-nums; }
.ktoc-countdown__u { font-size: 0.8125rem; text-transform: uppercase; letter-spacing: .06em; }
.ktoc-countdown__date { margin: 10px 0 0; font-size: 0.875rem; opacity: .85; }
.ktoc-countdown__ended { margin: 0; font-weight: 700; }
/* ===== KlikOto: stok mobil, pencarian, filter, kredit, layanan & booking =====
   Memakai properti logis (inline/block) agar tata letak ikut terbalik di situs RTL. */
:root{--ktoc-line:var(--wp--preset--color--border,#e3e5ea);--ktoc-soft:var(--wp--preset--color--surface,#f4f5f7);--ktoc-muted:var(--wp--preset--color--muted,#5b6270);--ktoc-acc:var(--wp--preset--color--primary,#e8590c);--ktoc-acc-text:color-mix(in srgb,var(--wp--preset--color--primary,#e8590c) 55%,var(--wp--preset--color--contrast,#11151c));--ktoc-r:var(--wp--custom--radius--medium,10px)}
.ktoc-icon{display:block;width:100%;height:100%}
.ktoc-tag{display:inline-block;font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--ktoc-acc);color:var(--wp--preset--color--on-primary,#fff);margin-inline-end:6px}
.ktoc-empty{padding:24px;border:1px dashed var(--ktoc-line);border-radius:var(--ktoc-r);text-align:center}
.ktoc-more{margin:24px 0 0}
.ktoc-more__link,.ktoc-btn-link{font-weight:700;color:inherit;text-underline-offset:3px}
.ktoc-dl{margin:0;display:grid;gap:0;border:1px solid var(--ktoc-line);border-radius:var(--ktoc-r);overflow:hidden;background:var(--wp--preset--color--base,#fff)}
.ktoc-dl>div{display:grid;grid-template-columns:minmax(90px,42%) 1fr;gap:12px;padding:11px 16px;border-block-end:1px solid var(--ktoc-line)}
.ktoc-dl>div:last-child{border-block-end:0}
.ktoc-dl dt{font-size:.875rem;color:var(--ktoc-muted);align-self:center}
.ktoc-dl dd{margin:0;font-weight:600}
.ktoc-checks{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.ktoc-checks li{position:relative;padding-inline-start:26px}
.ktoc-checks li::before{content:"";position:absolute;inset-inline-start:2px;top:.45em;width:12px;height:6px;border:2px solid var(--ktoc-acc-text);border-top:0;border-inline-end:0;transform:rotate(-45deg)}
.ktoc-sec__h{font-size:1.375rem;margin:36px 0 12px}
.ktoc-insp>.ktoc-sec__h:first-child{margin-top:0}
.ktoc-side__h{font-size:1rem;margin:20px 0 10px}

/* Bilah pencarian */
.ktoc-sf{background:var(--wp--preset--color--base,#fff);color:var(--wp--preset--color--contrast,#11151c);border-radius:var(--wp--custom--radius--large,14px);padding:18px 20px 20px;box-shadow:0 18px 50px rgba(8,12,20,.22);text-align:start}
.ktoc-sf--dark{background:rgba(12,16,24,.82);color:#fff;backdrop-filter:blur(6px)}
.ktoc-sf__title{margin:0 0 10px;font-size:1.25rem}
.ktoc-sf__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;align-items:end}
.ktoc-sf__field{display:flex;flex-direction:column;gap:6px;min-width:0}
.ktoc-sf__field label{font-size:.8125rem;font-weight:700;letter-spacing:.02em}
.ktoc-sf__field input,.ktoc-sf__field select{width:100%;min-height:48px;padding:8px 12px;box-sizing:border-box;font:inherit;font-size:1rem;color:var(--wp--preset--color--contrast,#11151c);background:var(--wp--preset--color--base,#fff);border:1px solid var(--ktoc-muted);border-radius:var(--ktoc-r)}
.ktoc-sf__btn{min-height:48px;width:100%;border:0;cursor:pointer;font-weight:700;white-space:normal;line-height:1.2;padding:8px 12px !important;letter-spacing:.02em !important}
.ktoc-sf--dark .ktoc-sf__field input,.ktoc-sf--dark .ktoc-sf__field select{border-color:rgba(255,255,255,.4)}

/* Filter arsip */
.ktoc-filter__box{background:var(--ktoc-soft);border-radius:var(--ktoc-r);padding:4px 18px}
.ktoc-filter__h{cursor:pointer;font-weight:800;font-size:1.0625rem;padding:12px 0;list-style-position:inside}
.ktoc-filter__form{display:grid;gap:12px;padding-block-end:18px}
@media (min-width:782px){.ktoc-filter__h{list-style:none;cursor:default;pointer-events:none}.ktoc-filter__h::-webkit-details-marker{display:none}}

/* Kartu mobil */
.ktoc-cars__count{margin:0 0 18px;color:var(--ktoc-muted);font-size:.9375rem}
.ktoc-cars__count a{color:inherit;font-weight:700}
.ktoc-cars__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.ktoc-car{display:flex;flex-direction:column;background:var(--wp--preset--color--base,#fff);border:1px solid var(--ktoc-line);border-radius:var(--ktoc-r);overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}
.ktoc-car:hover{box-shadow:0 14px 34px rgba(12,18,28,.12);transform:translateY(-2px)}
.ktoc-car__img{position:relative;display:block;aspect-ratio:16/10;background:var(--ktoc-soft);overflow:hidden}
.ktoc-car__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.ktoc-car:hover .ktoc-car__img img{transform:scale(1.04)}
.ktoc-car__img .ktoc-tag{position:absolute;top:12px;inset-inline-start:12px}
.ktoc-car__img .ktoc-status{position:absolute;top:12px;inset-inline-end:12px}
.ktoc-car.is-sold .ktoc-car__img img{filter:grayscale(1);opacity:.7}
.ktoc-car__ph{display:grid;place-items:center;width:100%;height:100%;color:var(--ktoc-muted)}
.ktoc-car__ph svg{width:64px;height:64px}
.ktoc-car__body{display:flex;flex-direction:column;gap:10px;padding:18px 20px 20px;flex:1}
.ktoc-car__title{margin:0;font-size:1.25rem;line-height:1.25}
.ktoc-car__title a{color:inherit;text-decoration:none}
.ktoc-car__title a:hover,.ktoc-car__title a:focus-visible{text-decoration:underline}
.ktoc-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.875rem;color:var(--ktoc-muted)}
.ktoc-chips li{display:inline-flex;align-items:center;gap:6px}
.ktoc-chip__i{width:18px;height:18px;color:var(--ktoc-acc-text)}
.ktoc-car__foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--ktoc-line);display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center;justify-content:space-between}
.ktoc-car__price{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;font-size:.875rem;color:var(--ktoc-muted)}
.ktoc-car__price strong{font-size:1.25rem;color:var(--wp--preset--color--contrast,#11151c);white-space:nowrap}
.ktoc-car__inst{margin:0;flex:1 1 100%;font-size:.8125rem;color:var(--ktoc-muted)}
.ktoc-car__price{flex:0 1 auto}

/* Spesifikasi */
.ktoc-specs__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.ktoc-specs__list li{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:12px;border:1px solid var(--ktoc-line);border-radius:var(--ktoc-r);background:var(--wp--preset--color--base,#fff)}
.ktoc-spec__i{grid-row:1/3;width:40px;height:40px;padding:8px;box-sizing:border-box;border-radius:10px;background:color-mix(in srgb,var(--ktoc-acc) 12%,transparent);color:var(--ktoc-acc-text)}
.ktoc-spec__l{font-size:.75rem;color:var(--ktoc-muted);text-transform:uppercase;letter-spacing:.06em}

/* Formulir */
.ktoc-form__ref{margin:0;padding:12px 14px;border-radius:8px;background:var(--ktoc-soft);display:flex;flex-direction:column;gap:2px}
.ktoc-form__ref span{font-size:.8125rem;color:var(--ktoc-muted)}
.ktoc-form__heading{margin:0 0 14px;font-size:1.375rem}


/* Status stok */
.ktoc-status{display:inline-block;font-size:.75rem;font-weight:800;padding:4px 10px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase}
.ktoc-status--reserved{background:#FEF3C7;color:#78350F}
.ktoc-status--sold{background:#1F2937;color:#fff}

/* Merek (teks, tanpa logo) */
.ktoc-brands__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.ktoc-brand{display:flex;flex-direction:column;gap:2px;padding:18px 20px;border:1px solid var(--ktoc-line);border-radius:var(--ktoc-r);background:var(--wp--preset--color--base,#fff);color:inherit;text-decoration:none;transition:border-color .2s ease,transform .2s ease}
.ktoc-brand:hover,.ktoc-brand:focus-visible{border-color:var(--ktoc-acc);transform:translateY(-2px)}
.ktoc-brand__name{font-weight:800;font-size:1.125rem}
.ktoc-brand__n{font-size:.875rem;color:var(--ktoc-muted)}

/* Panel harga & kredit */
.ktoc-cp{display:grid;gap:14px;scroll-margin-top:96px}
.ktoc-cp .ktoc-status{justify-self:start}
.ktoc-cp__price{margin:0;display:flex;align-items:baseline;gap:6px 10px;flex-wrap:wrap;color:var(--ktoc-muted)}
.ktoc-cp__price strong{font-size:2rem;line-height:1.1;color:var(--wp--preset--color--contrast,#11151c)}
.ktoc-cp__sold{margin:0;padding:12px 14px;border-radius:8px;background:var(--ktoc-soft)}
.ktoc-cp__btns{display:grid;gap:10px}
.ktoc-cp__btn{min-height:48px;display:inline-flex !important;align-items:center;justify-content:center;text-decoration:none;font-weight:700}
.ktoc-cp__btn.is-secondary{background:transparent !important;color:inherit !important;border:2px solid currentColor !important}
.ktoc-credit{display:grid;gap:10px;padding:14px 16px;border-radius:var(--ktoc-r);background:var(--ktoc-soft)}
.ktoc-credit .ktoc-side__h{margin:0}
.ktoc-credit__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ktoc-credit__dl{margin:0;display:grid;gap:4px}
.ktoc-credit__dl>div{display:flex;justify-content:space-between;gap:12px}
.ktoc-credit__dl dt{color:var(--ktoc-muted);font-size:.9375rem}
.ktoc-credit__dl dd{margin:0;font-weight:700;white-space:nowrap}
.ktoc-credit__mon{padding-top:8px;margin-top:4px;border-top:1px solid var(--ktoc-line);font-size:1.0625rem}
.ktoc-credit__mon dd{color:var(--ktoc-acc-text)}
.ktoc-credit__note{margin:0;font-size:.8125rem;color:var(--ktoc-muted)}

/* Inspeksi */
.ktoc-dl--insp dd{font-weight:500}
.ktoc-note{font-size:.875rem;color:var(--ktoc-muted);margin:10px 0 0}

/* Layanan */
.ktoc-svcs__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.ktoc-svc{display:flex;flex-direction:column;background:var(--wp--preset--color--base,#fff);border:1px solid var(--ktoc-line);border-radius:var(--ktoc-r);overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}
.ktoc-svc:hover{box-shadow:0 14px 34px rgba(12,18,28,.1);transform:translateY(-2px)}
.ktoc-svc--icons{padding:22px}
.ktoc-svc__icon{display:block;width:52px;height:52px;padding:11px;box-sizing:border-box;border-radius:14px;background:color-mix(in srgb,var(--ktoc-acc) 14%,transparent);color:var(--ktoc-acc-text)}
.ktoc-svc__img{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--ktoc-soft)}
.ktoc-svc__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.ktoc-svc:hover .ktoc-svc__img img{transform:scale(1.04)}
.ktoc-svc__body{display:flex;flex-direction:column;gap:8px;flex:1}
.ktoc-svc--icons .ktoc-svc__body{margin-top:14px}
.ktoc-svc--photo .ktoc-svc__body{padding:18px 20px 20px}
.ktoc-svc__title{margin:0;font-size:1.1875rem;line-height:1.3}
.ktoc-svc__title a{color:inherit;text-decoration:none}
.ktoc-svc__title a:hover,.ktoc-svc__title a:focus-visible{text-decoration:underline}
.ktoc-svc__text{margin:0;color:var(--ktoc-muted);font-size:.9375rem}
.ktoc-svc__meta{margin:auto 0 0;padding-top:10px;font-weight:700;font-size:.9375rem;color:var(--ktoc-acc-text)}

/* Panel harga layanan */
.ktoc-svp{display:grid;gap:12px}
.ktoc-svp .ktoc-side__h{margin:6px 0 0}
.ktoc-svp__dur{margin:0;display:flex;align-items:center;gap:8px;font-weight:600}
.ktoc-checks--one{grid-template-columns:1fr;margin:0}
.ktoc-notes{margin:0;padding-inline-start:18px;font-size:.875rem;color:var(--ktoc-muted)}
.ktoc-dl--prices dd{white-space:nowrap}

/* Slot booking */
.ktoc-slot-msg{font-size:.875rem;color:var(--ktoc-muted);margin:6px 0 0}
