/* SyncNet Patch Radar – neutral styles, inherit fonts and colours from the theme. */
.cpr {
	--cpr-accent: #2271b1;
	--cpr-warn: #b42318;
	--cpr-warn-bg: #fdecea;
	--cpr-line: rgba(127, 127, 127, 0.3);
	--cpr-soft: rgba(127, 127, 127, 0.08);
	--cpr-muted: inherit;
}
.cpr *, .cpr *::before, .cpr *::after { box-sizing: border-box; }

.cpr-intro { font-size: 1.1em; opacity: 0.85; }
.cpr-list { display: flex; flex-direction: column; gap: 16px; margin: 1.5em 0; }
.cpr-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: 16px; margin: 1em 0; }

.cpr-card {
	border: 1px solid var(--cpr-line);
	border-left: 4px solid var(--cpr-warn);
	border-radius: 10px;
	padding: 18px 22px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	scroll-margin-top: 30vh;
	transition: box-shadow .3s, background-color .3s;
}
.cpr-card > * { margin: 0 !important; }
.cpr-card:target, .cpr-card.is-selected { box-shadow: 0 0 0 3px var(--cpr-accent); background: var(--cpr-soft); }
.cpr-card[hidden] { display: none !important; }
.cpr-title { font-size: 1.1em !important; line-height: 1.35 !important; }
.cpr-title a { color: inherit; text-decoration: none; }
.cpr-title a:hover { text-decoration: underline; }
.cpr-text { font-size: 0.95em; opacity: 0.85; }
.cpr-source, .cpr-share-note, .cpr-footnote, .cpr-credit, .cpr-note, .cpr-hits { font-size: 0.82em; opacity: 0.75; }
.cpr-source a, .cpr-footnote a, .cpr-credit a { color: inherit; }

.cpr-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-size: 0.85em; }
.cpr-badge { display: inline-block; padding: 1px 9px; border-radius: 999px; font-size: 0.78em; font-weight: 600; letter-spacing: 0.03em; text-transform: uppercase; line-height: 1.7; }
.cpr-badge-crit { background: var(--cpr-warn-bg); color: var(--cpr-warn); }
.cpr-badge-ransom { background: var(--cpr-warn); color: #fff; }
.cpr-badge-soft { border: 1px solid var(--cpr-line); }

.cpr-more a, .cpr-back a, .cpr-group summary, .cpr-help summary { color: var(--cpr-accent); font-weight: 600; text-decoration: none; cursor: pointer; }
.cpr-group-list { list-style: none; padding: 0 !important; margin: 8px 0 0 !important; display: grid; grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr)); gap: 2px 16px; font-size: 0.88em; }
.cpr-group-list li { display: flex; gap: 8px; align-items: baseline; padding: 4px 0; border-bottom: 1px solid var(--cpr-line); }
.cpr-group-list a { font-weight: 600; color: inherit; }
.cpr-gl-score { color: var(--cpr-warn); font-size: 0.9em; }
.cpr-gl-date { margin-left: auto; opacity: 0.7; font-size: 0.9em; }

.cpr-btn {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 5px 13px; border: 1px solid var(--cpr-line); border-radius: 999px;
	background: transparent; color: inherit; font: inherit; font-size: 0.92em; line-height: 1.4;
	text-decoration: none; cursor: pointer;
}
.cpr-btn:hover { border-color: var(--cpr-accent); }
.cpr-btn.cpr-native, .cpr-chip[aria-pressed="true"] { background: var(--cpr-accent); border-color: var(--cpr-accent); color: #fff; }
.cpr-link { background: none; border: 0; padding: 0; margin-left: 6px; font: inherit; color: var(--cpr-accent); text-decoration: underline; cursor: pointer; }
.cpr-link[hidden], .cpr-search[hidden], .cpr-none[hidden], .cpr-vendor-feed[hidden] { display: none !important; }

.cpr-search { margin: 1.5em 0 0; }
.cpr-search-label { display: block; font-weight: 700; margin-bottom: 6px; }
.cpr-search-field { width: 100%; font: inherit; padding: 10px 16px; border: 1px solid var(--cpr-line); border-radius: 999px; background: transparent; color: inherit; }
.cpr-search-field:focus { outline: none; border-color: var(--cpr-accent); box-shadow: 0 0 0 3px var(--cpr-accent); }
.cpr-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.cpr-chip-count { opacity: 0.7; font-size: 0.85em; }
.cpr-hits { margin: 10px 0 0 !important; }

.cpr-share { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 1.5em 0 0.4em; }
.cpr-share-label { font-weight: 600; }
.cpr-quote { border-left: 3px solid var(--cpr-line); margin: 1em 0; padding: 2px 0 2px 14px; font-style: italic; opacity: 0.85; }
.cpr-lead { font-size: 1.1em; }
.cpr-single { max-width: 50rem; }

.cpr-subscribe, .cpr-cta { border: 1px solid var(--cpr-line); border-radius: 10px; padding: 18px 22px; background: var(--cpr-soft); margin: 1.5em 0; }
.cpr-subscribe > *, .cpr-cta > * { margin: 0 0 8px !important; }
.cpr-subscribe > *:last-child, .cpr-cta > *:last-child { margin-bottom: 0 !important; }
.cpr-box-title { font-weight: 700; }
.cpr-feed-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.cpr-feed { border: 1px solid var(--cpr-line); border-radius: 6px; padding: 3px 9px; font-size: 0.85em; word-break: break-all; }
.cpr-vendor-feed { border-top: 1px solid var(--cpr-line); padding-top: 10px; }
.cpr-vendor-feed > * { margin: 0 0 8px !important; }
.cpr-vendor-list { list-style: none; padding: 0 !important; margin: 8px 0 0 !important; columns: 2 12rem; }
.cpr-empty, .cpr-none { padding: 16px 20px; border: 1px dashed var(--cpr-line); border-radius: 10px; }

.cpr-latest { margin: 1em 0 0; font-size: 0.95em; }
.cpr-latest a { color: inherit; text-decoration: none; }
.cpr-latest a:hover .cpr-latest-title { text-decoration: underline; }
.cpr-dot { display: inline-block; width: 8px; height: 8px; border-radius: 4px; background: var(--cpr-warn); margin-right: 8px; position: relative; top: -1px; }
.cpr-latest-label { font-weight: 600; }
.cpr-latest-title, .cpr-latest-date { opacity: 0.8; }
.cpr-latest-date { white-space: nowrap; }

@media (max-width: 600px) {
	.cpr-card, .cpr-subscribe, .cpr-cta { padding: 14px 16px; }
	.cpr-share-label { width: 100%; }
}
.cpr-group-names { grid-template-columns: 1fr; }
.cpr-group-names li { flex-wrap: wrap; }

/* Red dot on the menu item (outside .cpr, so variables are repeated). */
.cpr-menu-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #b42318; margin-left: 5px; vertical-align: super; }
.cpr-urgent .wp-block-navigation__responsive-container-open { position: relative; }
.cpr-urgent .wp-block-navigation__responsive-container-open::after { content: ""; position: absolute; top: 2px; right: 0; width: 8px; height: 8px; border-radius: 50%; background: #b42318; }

/* Compact variants (position "above and below") */
.cpr-subscribe-compact { padding: 10px 16px; }
.cpr-subscribe-compact .cpr-feed-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 !important; }
.cpr-share-top .cpr-share { margin: 0.6em 0 1.2em; }
