/* PC Kurdu Core — ön yüz bileşenleri (inceleme, ürün, karşılaştırma, rehber).
   Yalnızca ilgili sayfalarda yüklenir. Tema değişkenlerini kullanır; tema yoksa yedek değerler devreye girer. */
.pk-review-summary, .pk-review-details, .pk-build, .pk-compare, .pk-visitor-rating, .pk-shop, .pk-specs {
	--_bg: var(--pk-surface, #fff); --_text: var(--pk-text, #1b1f27); --_muted: var(--pk-muted, #5b6270);
	--_border: var(--pk-border, #dcdfe5); --_accent: var(--pk-accent, #1a5fe0); --_soft: var(--pk-accent-soft, #e8f0fd);
	--_radius: var(--pk-radius, 10px);
}

/* Puan kartı + artı/eksi */
.pk-review-summary { display: grid; grid-template-columns: minmax(160px, 220px) 1fr; gap: 1.25rem; align-items: start; margin: 1.5rem 0; padding: 1.25rem; background: var(--_bg); border: 1px solid var(--_border); border-radius: var(--_radius); }
.pk-rvscore { text-align: center; }
.pk-rvscore-num { line-height: 1; }
.pk-rvscore-value { font-size: 3.2rem; font-weight: 800; color: var(--_accent); }
.pk-rvscore-max { font-size: 1.1rem; color: var(--_muted); margin-left: .1rem; }
.pk-rvscore-label { margin-top: .35rem; font-weight: 700; }
.pk-rvscore-label small { display: block; font-weight: 400; color: var(--_muted); }
.pk-rvscore-bar, .pk-crit-bar { display: block; height: 8px; background: var(--_soft); border-radius: 99px; overflow: hidden; margin-top: .6rem; }
.pk-rvscore-bar > span, .pk-crit-bar > span { display: block; height: 100%; background: var(--_accent); border-radius: 99px; }
.pk-proscons { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.pk-proscons h3 { margin: 0 0 .4rem; font-size: 1rem; }
.pk-proscons ul { margin: 0; padding-left: 1.2rem; }
.pk-pros h3::before { content: "+ "; color: #0f7a3a; }
.pk-cons h3::before { content: "− "; color: #b42318; }
@media (max-width: 680px) { .pk-review-summary, .pk-proscons { grid-template-columns: 1fr; } }

/* İnceleme ayrıntıları */
.pk-review-details .pk-h2 { margin-top: 2rem; }
.pk-dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .75rem 1.5rem; margin: 1rem 0; }
.pk-dl dt { font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; color: var(--_muted); }
.pk-dl dd { margin: 0; font-weight: 600; }
.pk-criteria { list-style: none; padding: 0; margin: 1rem 0; display: grid; gap: .6rem; }
.pk-criteria li { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(80px, 2fr) auto; gap: .75rem; align-items: center; }
.pk-criteria .pk-crit-bar { margin: 0; }
.pk-crit-score { font-weight: 700; font-variant-numeric: tabular-nums; }
.pk-verdict { padding: 1rem 1.25rem; border-left: 4px solid var(--_accent); background: var(--_soft); border-radius: 0 var(--_radius) var(--_radius) 0; }
.pk-price-info { color: var(--_muted); font-size: .95rem; }
.pk-test-system { color: var(--_muted); }

/* Tablolar: teknik özellik, ölçüm, karşılaştırma */
.pk-table-wrap { overflow-x: auto; max-width: 100%; margin: 1rem 0; border: 1px solid var(--_border); border-radius: var(--_radius); background: var(--_bg); }
.pk-table-wrap table { border-collapse: collapse; width: 100%; min-width: 360px; margin: 0; }
.pk-table-wrap caption { text-align: left; font-weight: 700; padding: .75rem 1rem; }
.pk-table-wrap th, .pk-table-wrap td { padding: .6rem .9rem; border-bottom: 1px solid var(--_border); text-align: left; vertical-align: top; }
.pk-table-wrap tbody tr:last-child > * { border-bottom: 0; }
.pk-table-wrap thead th { background: var(--_soft); }
.pk-spec-table th[scope=row] { width: 38%; font-weight: 600; color: var(--_muted); }
.pk-missing { color: var(--_muted); font-style: italic; }
.pk-chip { display: inline-block; margin-left: .4rem; padding: .05rem .5rem; font-size: .75rem; border: 1px solid var(--_border); border-radius: 99px; color: var(--_muted); background: var(--_bg); font-style: normal; }
.pk-unit { color: var(--_muted); font-weight: 400; }

/* Karşılaştırma */
.pk-compare-tools { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; margin: 1rem 0 .4rem; }
.pk-share-url input { min-width: min(320px, 70vw); max-width: 100%; padding: .45rem .6rem; border: 1px solid var(--_border); border-radius: 6px; background: var(--_bg); color: var(--_text); font: inherit; }
.pk-compare-legend, .pk-shop-note, .pk-compat-note { font-size: .85rem; color: var(--_muted); margin: .4rem 0; }
.pk-best-sample { background: var(--_soft); color: var(--_accent); font-weight: 700; padding: 0 .35rem; border-radius: 4px; }
.pk-compare-table { min-width: 520px; }
.pk-compare-table th[scope=row] { position: sticky; left: 0; z-index: 1; background: var(--_bg); min-width: 140px; box-shadow: 1px 0 0 var(--_border); }
.pk-compare-table thead th, .pk-compare-corner { background: var(--_soft); }
.pk-compare-product { min-width: 160px; }
.pk-compare-product img { display: block; margin: 0 0 .4rem; max-width: 72px; height: auto; border-radius: 6px; }
.pk-compare-product a { font-weight: 700; color: inherit; text-decoration: none; }
.pk-compare-table td.pk-best { background: var(--_soft); color: var(--_accent); font-weight: 700; }
.pk-compare-table tr.is-highlight th, .pk-compare-table tr.is-highlight td { font-weight: 700; border-bottom-color: var(--_accent); }
.pk-compare-table.is-diff-only tbody tr.is-same:not(.pk-compare-links) { display: none; }
.pk-compare-form fieldset { border: 1px solid var(--_border); border-radius: var(--_radius); padding: 1rem; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .75rem 1rem; align-items: end; }
.pk-compare-form legend { padding: 0 .4rem; font-weight: 700; }
.pk-compare-form label { display: grid; gap: .25rem; font-weight: 600; }
.pk-compare-form select { padding: .55rem; border: 1px solid var(--_border); border-radius: 6px; background: var(--_bg); color: var(--_text); font: inherit; min-height: 44px; }

/* Alışveriş bağlantıları */
.pk-shop { margin: 1.25rem 0; padding: 1rem 1.25rem; border: 1px solid var(--_border); border-radius: var(--_radius); background: var(--_bg); }
.pk-shop-title { margin: 0 0 .6rem; font-size: 1.05rem; }
.pk-shop-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.pk-shop-price { font-weight: 700; }
.pk-shop-meta { color: var(--_muted); font-size: .85rem; }
.pk-shop-disclosure { font-size: .9rem; padding: .6rem .8rem; background: var(--_soft); border-radius: 6px; }
.pk-btn--small { min-height: 40px; padding: .4rem .9rem; font-size: .9rem; }

/* Toplama rehberi */
.pk-build-list { list-style: none; padding: 0; margin: 1rem 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1rem; }
.pk-build-part { padding: 1rem 1.1rem; border: 1px solid var(--_border); border-radius: var(--_radius); background: var(--_bg); }
.pk-build-part h3 { margin: 0 0 .35rem; font-size: .9rem; text-transform: uppercase; letter-spacing: .04em; color: var(--_muted); }
.pk-build-name { margin: 0 0 .4rem; font-size: 1.1rem; font-weight: 700; }
.pk-build-meta, .pk-build-note { color: var(--_muted); }
.pk-compat { list-style: none; padding: 0; margin: 1rem 0; display: grid; gap: .5rem; }
.pk-compat li { padding: .65rem .9rem; border-radius: 8px; border: 1px solid var(--_border); border-left-width: 5px; background: var(--_bg); }
.pk-compat--ok { border-left-color: #0f7a3a; }
.pk-compat--fail { border-left-color: #b42318; }
.pk-compat--unknown { border-left-color: #b7791f; }
.pk-compat-detail { color: var(--_muted); }

/* Ziyaretçi puanı */
.pk-visitor-rating { margin: 2rem 0; padding: 1rem 1.25rem; border: 1px dashed var(--_border); border-radius: var(--_radius); }
.pk-vr-note { color: var(--_muted); font-size: .9rem; margin: .2rem 0 .6rem; }
.pk-vr-form { display: flex; flex-wrap: wrap; gap: .25rem; align-items: center; }
.pk-vr-form[hidden] { display: none; }
.pk-star { min-width: 44px; min-height: 44px; font-size: 1.6rem; line-height: 1; border: 1px solid var(--_border); background: var(--_bg); color: var(--_muted); border-radius: 8px; cursor: pointer; }
.pk-star.is-on { color: #d99100; border-color: #d99100; }
.pk-star:focus-visible { outline: 3px solid var(--_accent); outline-offset: 2px; }
.pk-vr-status { margin-left: .6rem; color: var(--_muted); }

.pk-demo-note, .pk-notice { padding: .7rem 1rem; border: 1px solid var(--_border); border-left: 4px solid #b7791f; border-radius: 8px; background: var(--_bg); }
.pk-notice--success { border-left-color: #0f7a3a; }
.pk-notice--error { border-left-color: #b42318; }
.pk-contact-form { display: grid; gap: .25rem; max-width: 640px; }
.pk-contact-form label { display: block; font-weight: 600; margin-bottom: .25rem; }
.pk-contact-form input[type=text], .pk-contact-form input[type=email], .pk-contact-form textarea { width: 100%; padding: .6rem .75rem; border: 1px solid var(--_border); border-radius: 6px; background: var(--_bg); color: var(--_text); font: inherit; min-height: 44px; }
.pk-form-note { font-size: .85rem; color: var(--_muted); }

/* Yumuşak geçişler (tema yokken de) */
.pk-btn, .pk-star, .pk-shop a, .pk-compare-table td, .pk-compare-table th, .pk-build-part, .pk-share-url input, .pk-compare-form select {
	transition: color .24s cubic-bezier(.22,.61,.36,1), background-color .24s cubic-bezier(.22,.61,.36,1), border-color .24s cubic-bezier(.22,.61,.36,1), box-shadow .24s cubic-bezier(.22,.61,.36,1), transform .24s cubic-bezier(.22,.61,.36,1), opacity .24s cubic-bezier(.22,.61,.36,1);
}
.pk-rvscore-bar > span, .pk-crit-bar > span { transition: width .6s cubic-bezier(.22,.61,.36,1); }
@media (prefers-reduced-motion: reduce) { .pk-btn, .pk-star, .pk-shop a, .pk-compare-table td, .pk-compare-table th, .pk-build-part, .pk-rvscore-bar > span, .pk-crit-bar > span { transition: none; } }
