/*
 * Blocks - product boxes, pros/cons, accordion-blocks, quick answer, comparison tables, single/page.
 */

/* product box variants */
.kwm-product-box { display: grid; grid-template-columns: 60px 1fr; gap: 14px; background: #fff; border: 1px solid var(--kwm-line); border-radius: 18px; padding: 18px; transition: transform .15s ease, box-shadow .2s ease; }
.kwm-product-box:hover { transform: translateY(-2px); box-shadow: 0 18px 40px -24px rgba(46,42,38,.3); }
.kwm-product-box__icon { width: 50px; height: 50px; border-radius: 14px; background: var(--kwm-peach); color: var(--kwm-terra); display: inline-flex; align-items: center; justify-content: center; }
.kwm-product-box__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; flex-wrap: wrap; margin-bottom: 6px; }
.kwm-product-box__title { margin: 0; font-size: 1.1rem; }
.kwm-product-box__best-for { font-size: .92rem; color: #5a5550; margin: 0 0 6px; }
.kwm-product-box__pc { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 8px 0; }
.kwm-product-box__pc ul { margin: 0; padding-left: 18px; font-size: .88rem; }
.kwm-product-box__pc .kwm-pros li { color: #45562d; }
.kwm-product-box__pc .kwm-cons li { color: #6a2a1e; }
.kwm-product-box__note { display: flex; gap: 6px; align-items: flex-start; font-size: .85rem; color: #5e3a22; background: #fff7ee; border-left: 3px solid var(--kwm-amber); padding: 8px 10px; border-radius: 8px; }
.kwm-product-box__cta { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 10px; }

.kwm-product-box--hero { background: linear-gradient(135deg, var(--kwm-peach), #fff 70%); border-radius: 24px; padding: 28px; }
.kwm-product-box--hero .kwm-product-box__icon { width: 64px; height: 64px; }
.kwm-product-box--hero .kwm-product-box__title { font-size: 1.55rem; }

.kwm-product-box--compact { padding: 12px 14px; grid-template-columns: 40px 1fr; }
.kwm-product-box--compact .kwm-product-box__icon { width: 36px; height: 36px; }
.kwm-product-box--compact .kwm-product-box__title { font-size: 1rem; }
.kwm-product-box--compact .kwm-product-box__cta { margin-top: 6px; }

.kwm-product-box--card { padding: 18px; }
.kwm-product-box--card .kwm-product-box__title { font-size: 1.05rem; }

/* pros / cons block */
.kwm-proscons { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 18px 0; }
.kwm-proscons__col { background: #fff; border: 1px solid var(--kwm-line); border-radius: 14px; padding: 14px 16px; }
.kwm-proscons__col h3 { font-size: 1rem; margin-bottom: 8px; font-family: 'Manrope', sans-serif; }
.kwm-proscons__col--pros { border-color: #cfe2bd; background: #f7fbf2; }
.kwm-proscons__col--cons { border-color: #f3c8be; background: #fef3f0; }

/* quick answer */
.kwm-quick-answer { background: var(--kwm-cream); border-left: 5px solid var(--kwm-terra); padding: 14px 18px; border-radius: 12px; margin: 18px 0; }
.kwm-quick-answer h3 { margin-bottom: 6px; font-size: 1.05rem; }

/* faq block */
.kwm-faq-block { margin: 18px 0; }
.kwm-faq-block h2 { margin-bottom: 12px; }

/* comparison table (server-rendered) */
.kwm-compare-row + .kwm-compare-row { margin-top: 22px; }
.kwm-compare-row__title { margin-bottom: 12px; }
.kwm-compare-table { background: #fff; border: 1px solid var(--kwm-line); border-radius: 16px; overflow: hidden; }
.kwm-compare-table__head, .kwm-compare-table__row { display: grid; grid-template-columns: 1.5fr 1.5fr .9fr 1fr 1fr 1.3fr; gap: 12px; padding: 12px 14px; align-items: center; }
.kwm-compare-table__head { background: var(--kwm-cream); font-weight: 700; font-size: .85rem; color: #6b655f; text-transform: uppercase; letter-spacing: .03em; }
.kwm-compare-table__row + .kwm-compare-table__row { border-top: 1px solid var(--kwm-line); }
.kwm-compare-table__cta { display: flex; gap: 8px; justify-content: flex-end; flex-wrap: wrap; }

/* single + page */
.kwm-single, .kwm-page { padding: 36px 0; }
.kwm-single__title, .kwm-page__title { margin-bottom: 10px; }
.kwm-single__meta { color: #8a857f; font-size: .9rem; display: flex; gap: 8px; flex-wrap: wrap; }
.kwm-single__media { margin: 18px 0; border-radius: 18px; overflow: hidden; }
.kwm-single__content { max-width: 740px; margin: 0 auto; }
.kwm-single__content h2 { margin-top: 1.4em; }
.kwm-single__content img { border-radius: 14px; }
.kwm-page__content--tool { width: min(1200px, 92vw); margin: 0 auto; }

/* archive / search */
.kwm-archive, .kwm-search { padding-top: 36px; }
.kwm-pagination { margin-top: 24px; text-align: center; }
.kwm-pagination .page-numbers { display: inline-block; padding: 6px 12px; border-radius: 8px; border: 1px solid var(--kwm-line); margin: 0 2px; color: var(--kwm-ink); }
.kwm-pagination .current { background: var(--kwm-terra); color: #fff; border-color: var(--kwm-terra); }

/* 404 */
.kwm-404 { padding: 56px 0 80px; }
.kwm-404__product { margin-bottom: 28px; }
.kwm-404__head { text-align: center; max-width: 700px; margin: 0 auto 24px; }
.kwm-404__tools { display: grid; gap: 14px; margin-bottom: 32px; max-width: 700px; margin-left: auto; margin-right: auto; }
.kwm-search-form { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.kwm-search-form input { padding: 12px 14px; border-radius: 12px; border: 1px solid var(--kwm-line); }
.kwm-404__quick { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.kwm-404__cats-title { text-align: center; margin-bottom: 16px; }

/* widgets */
.kwm-widget { background: #fff; border: 1px solid var(--kwm-line); border-radius: 14px; padding: 16px 18px; margin-bottom: 16px; }
.kwm-widget__title { margin-bottom: 10px; }

/* hero card categories */
@media (max-width: 980px) {
	.kwm-compare-table__head { display: none; }
	.kwm-compare-table__row { grid-template-columns: 1fr; gap: 6px; padding: 14px; }
	.kwm-proscons { grid-template-columns: 1fr; }
}
