/* =====================================================================
 * SC Bienpreter — feuille de style (scopée .sc-bp-wrap)
 * Cohérente avec SC Avis / SC Home : palette pastel + finance, Orbitron,
 * effet "wow" sobre, layouts denses et ergonomiques.
 * ===================================================================== */

.sc-bp-wrap {
	/* Palette */
	--scbp-bg:        #0e1525;
	--scbp-bg-2:      #131c30;
	--scbp-card:      #18233c;
	--scbp-card-2:    #1d2a47;
	--scbp-line:      rgba(255,255,255,.08);
	--scbp-line-2:    rgba(255,255,255,.14);
	--scbp-text:      #e8edf7;
	--scbp-text-2:    #aeb9d0;
	--scbp-muted:     #7b88a6;

	/* Accents pastel */
	--scbp-mint:      #8ad7c2;
	--scbp-sky:       #93c5fd;
	--scbp-lilac:     #c4b5fd;
	--scbp-peach:     #fbc89a;
	--scbp-rose:      #f4a9c0;
	--scbp-green:     #6fd1a6;
	--scbp-amber:     #f2cf6b;
	--scbp-orange:    #f0a868;
	--scbp-red-soft:  #ef8f8f;
	--scbp-red:       #e5687a;

	--scbp-grad-1: linear-gradient(135deg, #8ad7c2 0%, #93c5fd 100%);
	--scbp-grad-2: linear-gradient(135deg, #c4b5fd 0%, #93c5fd 100%);
	--scbp-grad-gold: linear-gradient(135deg, #fbc89a 0%, #f4a9c0 100%);

	--scbp-radius: 18px;
	--scbp-radius-sm: 12px;
	--scbp-shadow: 0 18px 50px -20px rgba(0,0,0,.55);

	--scbp-font-head: 'Orbitron', system-ui, sans-serif;
	--scbp-font-body: var(--sc-font-body, 'Inter', system-ui, -apple-system, sans-serif);

	font-family: var(--scbp-font-body);
	color: var(--scbp-text);
	background:
		radial-gradient(1100px 480px at 12% -8%, rgba(138,215,194,.10), transparent 60%),
		radial-gradient(900px 460px at 95% 0%, rgba(196,181,253,.10), transparent 55%),
		linear-gradient(180deg, var(--scbp-bg) 0%, var(--scbp-bg-2) 100%);
	border-radius: 24px;
	padding: clamp(18px, 3.5vw, 40px);
	margin: 28px 0;
	position: relative;
	overflow: hidden;
	line-height: 1.55;
	box-shadow: var(--scbp-shadow);
	border: 1px solid var(--scbp-line);
}
.sc-bp-wrap * { box-sizing: border-box; }
.sc-bp-wrap::before {
	content: "";
	position: absolute; inset: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.025'/%3E%3C/svg%3E");
	pointer-events: none; opacity: .6; mix-blend-mode: overlay;
}
.sc-bp-wrap > * { position: relative; z-index: 1; }

.sc-bp-wrap h2, .sc-bp-wrap h1 { color: var(--scbp-text); }
.sc-bp-wrap a { color: var(--scbp-sky); text-decoration: none; }
.sc-bp-wrap a:hover { text-decoration: underline; }

/* Page virtuelle : intégrée au thème WordPress */
body.sc-bp-page-body {
	min-height: 100vh;
}
body.sc-bp-page-body .scbp-theme-content .sc-bp-wrap {
	max-width: none;
	margin: 0;
}

/* ----------------------- HERO PLATEFORME ----------------------- */
.scbp-hero {
	position: relative;
	background: linear-gradient(160deg, rgba(29,42,71,.9), rgba(20,28,48,.9));
	border: 1px solid var(--scbp-line-2);
	border-radius: var(--scbp-radius);
	padding: clamp(20px, 3vw, 34px);
	overflow: hidden;
	margin-bottom: 22px;
}
.scbp-hero-glow {
	position: absolute; inset: -40% -10% auto auto;
	width: 60%; height: 200%;
	background: radial-gradient(closest-side, rgba(138,215,194,.18), transparent);
	pointer-events: none;
}
.scbp-hero-top {
	display: flex; gap: 28px; justify-content: space-between;
	flex-wrap: wrap; align-items: flex-start;
}
.scbp-hero-id { display: flex; gap: 18px; align-items: center; min-width: 260px; }
.scbp-logo {
	width: 70px; height: 70px; border-radius: 16px;
	background: #fff; display: grid; place-items: center;
	padding: 8px; flex-shrink: 0;
	box-shadow: 0 10px 30px -12px rgba(0,0,0,.6);
}
.scbp-logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.scbp-kicker {
	font-family: var(--scbp-font-head);
	font-size: .68rem; letter-spacing: .14em; text-transform: uppercase;
	color: var(--scbp-mint); margin-bottom: 6px;
}
.scbp-hero-title {
	font-family: var(--scbp-font-head);
	font-size: clamp(1.7rem, 3.4vw, 2.6rem);
	font-weight: 800; margin: 0; line-height: 1.05;
	background: var(--scbp-grad-1); -webkit-background-clip: text;
	background-clip: text; -webkit-text-fill-color: transparent;
}
.scbp-hero-sub { color: var(--scbp-text-2); font-size: .92rem; margin-top: 6px; }

/* Offre parrainage */
.scbp-offer {
	background: linear-gradient(150deg, rgba(251,200,154,.12), rgba(244,169,192,.08));
	border: 1px solid rgba(251,200,154,.3);
	border-radius: var(--scbp-radius-sm);
	padding: 18px 20px; min-width: 260px; max-width: 360px;
	display: flex; flex-direction: column; gap: 8px;
}
.scbp-offer-tag {
	font-family: var(--scbp-font-head); font-size: .62rem; letter-spacing: .12em;
	text-transform: uppercase; color: var(--scbp-peach);
}
.scbp-offer-amount { font-size: 1.15rem; font-weight: 700; }
.scbp-offer-amount strong, .scbp-offer-detail strong { color: var(--scbp-peach); }
.scbp-offer-detail { font-size: .86rem; color: var(--scbp-text-2); }
.scbp-offer-detail ul { margin: 4px 0; padding-left: 18px; }
.scbp-offer-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 4px; }
.scbp-offer-avis { font-size: .85rem; margin-top: 2px; }
.scbp-offer-note { font-size: .7rem; color: var(--scbp-muted); }

.scbp-btn-primary {
	display: inline-block; font-family: var(--scbp-font-head);
	font-size: .8rem; font-weight: 600; letter-spacing: .02em;
	padding: 10px 16px; border-radius: 10px;
	background: var(--scbp-grad-gold); color: #2a1a12 !important;
	text-decoration: none !important; transition: transform .15s, box-shadow .15s;
	box-shadow: 0 8px 22px -10px rgba(251,200,154,.7);
}
.scbp-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 12px 28px -10px rgba(251,200,154,.85); }
.scbp-btn-ghost {
	display: inline-block; font-size: .8rem; font-weight: 600;
	padding: 10px 16px; border-radius: 10px;
	border: 1px solid var(--scbp-line-2); color: var(--scbp-text) !important;
	text-decoration: none !important; transition: border-color .15s, background .15s;
}
.scbp-btn-ghost:hover { border-color: var(--scbp-mint); background: rgba(138,215,194,.08); }

/* Bandeau indicateurs plateforme */
.scbp-perf-strip {
	display: flex; flex-wrap: wrap; gap: 10px;
	margin-top: 22px; padding-top: 20px;
	border-top: 1px solid var(--scbp-line);
	align-items: stretch;
}
.scbp-perf-item {
	flex: 1 1 130px; background: rgba(255,255,255,.03);
	border: 1px solid var(--scbp-line); border-radius: 12px;
	padding: 12px 14px; display: flex; flex-direction: column; gap: 2px;
}
.scbp-perf-val { font-family: var(--scbp-font-head); font-weight: 700; font-size: 1.05rem; }
.scbp-perf-lbl { font-size: .72rem; color: var(--scbp-text-2); }
.scbp-perf-date {
	flex: 1 1 100%; font-size: .72rem; color: var(--scbp-muted);
	text-align: right; align-self: center;
}

/* ----------------------- KPI GRID ----------------------- */
.scbp-kpi-grid {
	display: grid; gap: 14px;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	margin-bottom: 22px;
}
.scbp-kpi {
	background: linear-gradient(160deg, var(--scbp-card), var(--scbp-card-2));
	border: 1px solid var(--scbp-line); border-radius: var(--scbp-radius-sm);
	padding: 18px; position: relative; overflow: hidden;
	transition: transform .15s, border-color .15s;
}
.scbp-kpi::after {
	content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
	background: var(--scbp-mint);
}
.scbp-kpi:hover { transform: translateY(-3px); border-color: var(--scbp-line-2); }
.scbp-kpi-val { font-family: var(--scbp-font-head); font-size: 1.45rem; font-weight: 700; line-height: 1.1; }
.scbp-kpi-lbl { font-size: .82rem; color: var(--scbp-text-2); margin-top: 6px; }
.scbp-kpi-hint { font-size: .72rem; color: var(--scbp-muted); margin-top: 4px; }
.scbp-kpi-mint::after  { background: var(--scbp-mint); }
.scbp-kpi-sky::after   { background: var(--scbp-sky); }
.scbp-kpi-lilac::after { background: var(--scbp-lilac); }
.scbp-kpi-peach::after { background: var(--scbp-peach); }
.scbp-kpi-green::after { background: var(--scbp-green); }
.scbp-kpi-rose::after  { background: var(--scbp-rose); }

/* ----------------------- CARDS & CHARTS ----------------------- */
.scbp-card {
	background: linear-gradient(160deg, var(--scbp-card), var(--scbp-card-2));
	border: 1px solid var(--scbp-line); border-radius: var(--scbp-radius);
	padding: clamp(16px, 2.4vw, 24px); margin-bottom: 18px;
}
.scbp-h2 {
	font-family: var(--scbp-font-head); font-size: 1.05rem; font-weight: 600;
	margin: 0 0 4px; letter-spacing: .01em;
}
.scbp-card-sub { font-size: .84rem; color: var(--scbp-text-2); margin: 0 0 14px; }

.scbp-charts {
	display: grid; gap: 18px;
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 18px;
}
.scbp-charts .scbp-card { margin-bottom: 0; }
.scbp-col-2 { grid-column: span 2; }

.scbp-canvas-wrap { position: relative; width: 100%; height: 300px; }
.scbp-canvas-wrap.scbp-canvas-sm { height: 230px; }
.scbp-canvas-wrap canvas { position: absolute; inset: 0; width: 100% !important; height: 100% !important; }

/* ----------------------- EXPLORERS (tables interactives) ----------------------- */
.scbp-explorer-head {
	display: flex; justify-content: space-between; align-items: flex-end;
	gap: 16px; flex-wrap: wrap; margin-bottom: 16px;
}
.scbp-controls { display: flex; gap: 8px; flex-wrap: wrap; }
.scbp-search, .scbp-select {
	font-family: var(--scbp-font-body); font-size: .85rem;
	background: rgba(255,255,255,.04); color: var(--scbp-text);
	border: 1px solid var(--scbp-line-2); border-radius: 10px;
	padding: 9px 12px; outline: none; transition: border-color .15s;
}
.scbp-search { min-width: 220px; }
.scbp-search::placeholder { color: var(--scbp-muted); }
.scbp-search:focus, .scbp-select:focus { border-color: var(--scbp-mint); }
.scbp-select option { background: var(--scbp-bg-2); color: var(--scbp-text); }

.scbp-table-scroll { overflow-x: auto; border-radius: var(--scbp-radius-sm); }
.scbp-table {
	width: 100%; border-collapse: collapse; font-size: .86rem;
	min-width: 640px;
}
.scbp-table thead th {
	font-family: var(--scbp-font-head); font-weight: 600; font-size: .72rem;
	letter-spacing: .04em; text-transform: uppercase; color: var(--scbp-text-2);
	text-align: left; padding: 12px 12px; border-bottom: 1px solid var(--scbp-line-2);
	white-space: nowrap;
}
.scbp-table th.scbp-num, .scbp-table td.scbp-num { text-align: right; }
.scbp-table tbody td {
	padding: 11px 12px; border-bottom: 1px solid var(--scbp-line); vertical-align: middle;
}
.scbp-table tbody tr:last-child td { border-bottom: none; }
.scbp-table-hover tbody tr { transition: background .12s; cursor: pointer; }
.scbp-table-hover tbody tr:hover { background: rgba(138,215,194,.06); }
.scbp-table a { color: var(--scbp-text); font-weight: 600; }
.scbp-table a:hover { color: var(--scbp-mint); }
.scbp-cell-emp { display: flex; align-items: center; gap: 8px; }
.scbp-flag { font-size: 1.05rem; }
.scbp-pos { color: var(--scbp-muted); font-family: var(--scbp-font-head); font-size: .78rem; margin-right: 4px; }

/* Pager */
.scbp-pager {
	display: flex; gap: 6px; justify-content: center; align-items: center;
	flex-wrap: wrap; margin-top: 16px;
}
.scbp-pager button {
	font-family: var(--scbp-font-body); font-size: .82rem;
	background: rgba(255,255,255,.04); color: var(--scbp-text);
	border: 1px solid var(--scbp-line-2); border-radius: 8px;
	padding: 7px 12px; cursor: pointer; transition: all .12s;
}
.scbp-pager button:hover:not(:disabled) { border-color: var(--scbp-mint); background: rgba(138,215,194,.1); }
.scbp-pager button.is-active {
	background: var(--scbp-grad-1); color: #0e1525; border-color: transparent; font-weight: 700;
}
.scbp-pager button:disabled { opacity: .4; cursor: default; }
.scbp-pager-info { font-size: .8rem; color: var(--scbp-muted); margin: 0 8px; }
.scbp-empty { padding: 30px; text-align: center; color: var(--scbp-muted); }

/* ----------------------- BADGES & STARS ----------------------- */
.scbp-badge {
	display: inline-block; font-size: .7rem; font-weight: 600;
	padding: 3px 9px; border-radius: 20px; white-space: nowrap;
	border: 1px solid transparent;
}
.scbp-b-green { background: rgba(111,209,166,.14); color: var(--scbp-green); border-color: rgba(111,209,166,.3); }
.scbp-b-sky   { background: rgba(147,197,253,.14); color: var(--scbp-sky);   border-color: rgba(147,197,253,.3); }
.scbp-b-red   { background: rgba(229,104,122,.14); color: var(--scbp-red);   border-color: rgba(229,104,122,.3); }
.scbp-b-muted { background: rgba(255,255,255,.05); color: var(--scbp-text-2); border-color: var(--scbp-line-2); }

.scbp-stars { display: inline-flex; gap: 1px; letter-spacing: 1px; }
.scbp-star { color: rgba(255,255,255,.18); font-size: 1rem; }
.scbp-star-full { color: var(--scbp-amber); }
.scbp-star-half { position: relative; color: rgba(255,255,255,.18); }
.scbp-star-half::before {
	content: "★"; position: absolute; left: 0; top: 0; width: 50%;
	overflow: hidden; color: var(--scbp-amber);
}
.scbp-stars-empty { color: var(--scbp-muted); }

/* ----------------------- DISCLAIMER ----------------------- */
.scbp-disclaimer {
	font-size: .78rem; color: var(--scbp-muted); line-height: 1.6;
	background: rgba(255,255,255,.02); border: 1px solid var(--scbp-line);
	border-radius: var(--scbp-radius-sm); padding: 16px 18px; margin-top: 8px;
}
.scbp-disclaimer strong { color: var(--scbp-text-2); }

/* ----------------------- PAGES VIRTUELLES ----------------------- */
.scbp-crumb { font-size: .8rem; color: var(--scbp-muted); margin-bottom: 16px; }
.scbp-crumb a { color: var(--scbp-text-2); }
.scbp-vhero {
	position: relative; overflow: hidden;
	background: linear-gradient(160deg, rgba(29,42,71,.92), rgba(20,28,48,.92));
	border: 1px solid var(--scbp-line-2); border-radius: var(--scbp-radius);
	padding: clamp(22px, 3.5vw, 38px); margin-bottom: 22px;
	display: flex; gap: 20px; align-items: center;
}
.scbp-vhero-glow {
	position: absolute; inset: -50% auto auto -10%; width: 50%; height: 200%;
	background: radial-gradient(closest-side, rgba(196,181,253,.18), transparent);
	pointer-events: none;
}
.scbp-vhero-flag { font-size: 3rem; line-height: 1; }
.scbp-vtitle {
	font-family: var(--scbp-font-head); font-weight: 800;
	font-size: clamp(1.6rem, 4vw, 2.7rem); margin: 4px 0 8px; line-height: 1.05;
}
.scbp-vmeta { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; color: var(--scbp-text-2); font-size: .9rem; }
.scbp-vhero-proj .scbp-vtitle { background: var(--scbp-grad-2); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.scbp-link { color: var(--scbp-mint); }

.scbp-vcols { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.scbp-vcols .scbp-card { margin-bottom: 0; }
.scbp-legend { list-style: none; padding: 0; margin: 12px 0 0; display: flex; flex-direction: column; gap: 6px; font-size: .85rem; color: var(--scbp-text-2); }
.scbp-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 6px; }
.scbp-dot-green { background: var(--scbp-green); }
.scbp-dot-sky { background: var(--scbp-sky); }
.scbp-dot-red { background: var(--scbp-red-soft); }

.scbp-community .scbp-comm-row { display: flex; gap: 28px; flex-wrap: wrap; align-items: center; }
.scbp-comm-note { text-align: center; }
.scbp-comm-val { font-family: var(--scbp-font-head); font-size: 2rem; font-weight: 800; }
.scbp-comm-val span { font-size: 1rem; color: var(--scbp-muted); }
.scbp-comm-sub { font-size: .8rem; color: var(--scbp-text-2); }
.scbp-comm-intent { flex: 1; min-width: 220px; }
.scbp-intent-lbl { font-size: .85rem; color: var(--scbp-text-2); margin-bottom: 8px; }
.scbp-intent-bar { height: 10px; border-radius: 6px; background: rgba(255,255,255,.08); overflow: hidden; }
.scbp-intent-bar span { display: block; height: 100%; background: var(--scbp-grad-1); }
.scbp-intent-meta { font-size: .82rem; color: var(--scbp-text-2); margin-top: 8px; }
.scbp-intent-meta strong { color: var(--scbp-mint); }

.scbp-deflist { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin: 0; background: var(--scbp-line); border-radius: var(--scbp-radius-sm); overflow: hidden; }
.scbp-deflist > div { background: var(--scbp-card); padding: 12px 16px; }
.scbp-deflist dt { font-size: .72rem; text-transform: uppercase; letter-spacing: .04em; color: var(--scbp-muted); margin-bottom: 3px; }
.scbp-deflist dd { margin: 0; font-weight: 600; font-size: .92rem; }

.scbp-emp-recall-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.scbp-emp-recall-flag { font-size: 2.2rem; }
.scbp-emp-recall-name { font-family: var(--scbp-font-head); font-weight: 700; font-size: 1.1rem; }
.scbp-emp-recall-meta { font-size: .82rem; color: var(--scbp-text-2); }
.scbp-emp-recall-row .scbp-btn-ghost { margin-left: auto; }

.scbp-mini-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.scbp-mini-card {
	display: block; background: rgba(255,255,255,.03); border: 1px solid var(--scbp-line);
	border-radius: var(--scbp-radius-sm); padding: 14px; text-decoration: none !important;
	transition: transform .15s, border-color .15s;
}
.scbp-mini-card:hover { transform: translateY(-2px); border-color: var(--scbp-mint); }
.scbp-mini-title { font-weight: 600; color: var(--scbp-text); margin-bottom: 4px; }
.scbp-mini-meta { font-size: .8rem; color: var(--scbp-text-2); margin-bottom: 8px; }
.scbp-back { margin-top: 16px; }


/* ----------------------- ONGLETS EXPLORERS ----------------------- */
.scbp-explorer-tabs {
	padding: clamp(14px, 2vw, 20px);
}
.scbp-tabs-head {
	display: inline-flex;
	gap: 8px;
	padding: 6px;
	margin-bottom: 16px;
	background: rgba(255,255,255,.035);
	border: 1px solid var(--scbp-line);
	border-radius: 14px;
	flex-wrap: wrap;
}
.scbp-tab-btn {
	appearance: none;
	border: 1px solid transparent;
	border-radius: 10px;
	padding: 10px 16px;
	cursor: pointer;
	background: transparent;
	color: var(--scbp-text-2);
	font-family: var(--scbp-font-head);
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .03em;
	transition: background .15s, color .15s, transform .15s;
}
.scbp-tab-btn:hover { color: var(--scbp-text); background: rgba(255,255,255,.05); }
.scbp-tab-btn.is-active {
	background: var(--scbp-grad-1);
	color: #0e1525;
	box-shadow: 0 10px 24px -16px rgba(138,215,194,.95);
}
.scbp-tab-panel[hidden] { display: none !important; }
.scbp-explorer-inner {
	margin-bottom: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}
.scbp-explorer-tabs .scbp-explorer-head { padding-top: 4px; }

/* ----------------------- PAGES EMPRUNTEURS : NOTES / GARANTIES / HISTORIQUES ----------------------- */
.scbp-offer-vpage {
	max-width: none;
	width: 100%;
	margin: 0 0 18px;
	background:
		radial-gradient(560px 140px at 94% 20%, rgba(251,200,154,.18), transparent 60%),
		linear-gradient(150deg, rgba(251,200,154,.13), rgba(244,169,192,.08));
}
.scbp-offer-vpage .scbp-offer-actions { margin-top: 8px; }
.scbp-vcols-info { margin-bottom: 18px; }
.scbp-note-bars { display: flex; flex-direction: column; gap: 10px; margin-top: 12px; }
.scbp-note-bar-row {
	display: grid;
	grid-template-columns: 54px 1fr 64px;
	gap: 10px;
	align-items: center;
	font-size: .86rem;
}
.scbp-note-label {
	font-family: var(--scbp-font-head);
	font-weight: 800;
	color: var(--scbp-peach);
}
.scbp-note-track {
	height: 10px;
	border-radius: 999px;
	background: rgba(255,255,255,.07);
	overflow: hidden;
}
.scbp-note-track span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--scbp-grad-gold);
}
.scbp-note-pct { color: var(--scbp-text-2); text-align: right; }
.scbp-garantie-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.scbp-garantie-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 10px;
	border-radius: 999px;
	background: rgba(147,197,253,.10);
	border: 1px solid rgba(147,197,253,.22);
	color: var(--scbp-text);
	font-size: .82rem;
}
.scbp-garantie-chip em {
	font-style: normal;
	color: var(--scbp-sky);
	font-weight: 800;
}
.scbp-history-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 14px;
}
.scbp-history-card {
	background: rgba(255,255,255,.025);
	border: 1px solid var(--scbp-line);
	border-radius: var(--scbp-radius-sm);
	padding: 14px;
}
.scbp-history-card h3 {
	margin: 0 0 10px;
	font-family: var(--scbp-font-head);
	font-size: .86rem;
	letter-spacing: .04em;
	color: var(--scbp-text-2);
}
.scbp-empty-soft {
	border: 1px dashed var(--scbp-line-2);
	border-radius: var(--scbp-radius-sm);
	padding: 16px;
	color: var(--scbp-muted);
	font-size: .86rem;
	text-align: center;
	background: rgba(255,255,255,.02);
}


/* ----------------------- LAYOUT THEME DES PAGES VIRTUELLES ----------------------- */
.scbp-theme-layout {
	width: min(1320px, calc(100% - 36px));
	margin: 30px auto;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 30px;
	align-items: start;
}
.scbp-theme-content { min-width: 0; }
.scbp-theme-content .sc-bp-wrap {
	margin-top: 0;
	margin-bottom: 0;
}
.scbp-theme-sidebar {
	background: #fff;
	border-radius: 18px;
	padding: 18px;
	box-shadow: 0 14px 38px -24px rgba(0,0,0,.35);
}
.scbp-theme-sidebar:empty { display: none; }
.scbp-theme-sidebar .widget,
.scbp-theme-sidebar section {
	margin-bottom: 22px;
}

/* ----------------------- BANDEAU EMPRUNTEUR : JAUGES COMMUNAUTAIRES ----------------------- */
.scbp-vhero-with-scores {
	align-items: stretch;
	gap: 22px;
}
.scbp-vhero-with-scores .scbp-vhero-id {
	flex: 1 1 360px;
	align-self: center;
}
.scbp-country-flag {
	font-size: 1.15em;
	line-height: 1;
	vertical-align: -0.08em;
}
.scbp-vhero-scores {
	margin-left: auto;
	display: flex;
	gap: 14px;
	align-items: stretch;
	justify-content: flex-end;
	flex-wrap: wrap;
}
.scbp-score-card {
	width: 158px;
	min-height: 216px;
	padding: 14px 12px;
	border-radius: 18px;
	background:
		radial-gradient(160px 120px at 50% 0%, rgba(147,197,253,.14), transparent 70%),
		linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
	border: 1px solid rgba(255,255,255,.10);
	box-shadow: 0 16px 42px -28px rgba(0,0,0,.75);
	text-align: center;
}
.scbp-score-ring {
	width: 116px;
	height: 116px;
	margin: 0 auto 10px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: conic-gradient(var(--scbp-mint) var(--scbp-score-pct), rgba(255,255,255,.12) 0);
	position: relative;
}
.scbp-score-percent .scbp-score-ring { background: conic-gradient(var(--scbp-peach) var(--scbp-score-pct), rgba(255,255,255,.12) 0); }
.scbp-score-ring::before {
	content: "";
	position: absolute;
	inset: 14px;
	border-radius: 50%;
	background: #18233c;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
}
.scbp-score-core {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 2px;
}
.scbp-score-core strong {
	font-family: var(--scbp-font-head);
	font-size: 2rem;
	font-weight: 800;
	line-height: 1;
	color: var(--scbp-text);
}
.scbp-score-core span {
	font-family: var(--scbp-font-head);
	font-size: .9rem;
	font-weight: 800;
	color: var(--scbp-text-2);
}
.scbp-score-stars { margin: 2px 0 7px; justify-content: center; color: var(--scbp-amber); }
.scbp-score-stars .scbp-stars { justify-content: center; }
.scbp-score-title {
	font-family: var(--scbp-font-head);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--scbp-text);
	margin-top: 6px;
}
.scbp-score-sub {
	font-size: .78rem;
	line-height: 1.35;
	color: var(--scbp-text-2);
	margin-top: 5px;
}

/* ----------------------- RESPONSIVE ----------------------- */
@media (max-width: 1100px) {
	.scbp-theme-layout { grid-template-columns: 1fr; }
	.scbp-theme-sidebar { display: block; }
}
@media (max-width: 900px) {
	.scbp-charts { grid-template-columns: 1fr 1fr; }
	.scbp-col-2 { grid-column: span 2; }
}
@media (max-width: 680px) {
	.scbp-charts { grid-template-columns: 1fr; }
	.scbp-col-2 { grid-column: span 1; }
	.scbp-vcols { grid-template-columns: 1fr; }
	.scbp-deflist { grid-template-columns: 1fr; }
	.scbp-hero-top { flex-direction: column; }
	.scbp-offer { max-width: none; width: 100%; }
	.scbp-explorer-head { flex-direction: column; align-items: stretch; }
	.scbp-search { min-width: 0; width: 100%; }
	.scbp-controls { flex-direction: column; }
	.scbp-controls .scbp-select { width: 100%; }
	.scbp-tabs-head { display: flex; width: 100%; }
	.scbp-tab-btn { flex: 1 1 100%; }
	.scbp-history-grid { grid-template-columns: 1fr; }
	.scbp-note-bar-row { grid-template-columns: 46px 1fr 58px; }
	.scbp-theme-layout { width: min(100% - 16px, 100%); margin: 12px auto; }
	.scbp-vhero-with-scores { flex-direction: column; align-items: stretch; }
	.scbp-vhero-scores { width: 100%; margin-left: 0; justify-content: center; }
	.scbp-score-card { flex: 1 1 145px; max-width: 180px; }
	.scbp-vhero-flag { align-self: flex-start; }
}

/* Accessibilité : focus visible + reduced motion */
.sc-bp-wrap a:focus-visible, .sc-bp-wrap button:focus-visible,
.sc-bp-wrap input:focus-visible, .sc-bp-wrap select:focus-visible {
	outline: 2px solid var(--scbp-mint); outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
	.sc-bp-wrap * { transition: none !important; animation: none !important; }
}


/* Badges pays */
.scbp-country-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid var(--scbp-line);color:var(--scbp-text);line-height:1.1;vertical-align:middle;max-width:100%;}
.scbp-country-badge-flag,.scbp-country-flag{font-size:1.1em;line-height:1;}
.scbp-country-badge-name{white-space:nowrap;}
.scbp-vmeta .scbp-country-badge{padding:5px 10px;}
.scbp-kpi-val .scbp-country-badge{justify-content:center;}
.scbp-emp-recall-meta .scbp-country-badge{margin-right:4px;}

.scbp-country-badge-img{
	display:inline-block;
	width:24px;
	height:18px;
	border-radius:3px;
	object-fit:cover;
	box-shadow:0 0 0 1px rgba(255,255,255,.18);
	flex:0 0 auto;
	background:#fff;
}


/* Drapeaux FlagCDN dans le dashboard */
.scbp-flag-img,
.scbp-country-badge-img {
	display: inline-block;
	width: 24px;
	height: 18px;
	object-fit: cover;
	border-radius: 3px;
	box-shadow: 0 0 0 1px rgba(255,255,255,.35), 0 4px 12px rgba(0,0,0,.22);
	vertical-align: -3px;
	flex: 0 0 auto;
}
.scbp-flag-placeholder {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 18px;
	font-size: 16px;
	line-height: 1;
	vertical-align: -3px;
}
.scbp-country-mini {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
}
.scbp-country-mini span:last-child {
	white-space: nowrap;
}
.scbp-country-bars-wrap {
	height: auto !important;
	min-height: 300px;
}
.scbp-country-bars {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 6px 0 2px;
}
.scbp-country-bar-row {
	display: grid;
	grid-template-columns: minmax(118px, 170px) 1fr minmax(34px, auto);
	align-items: center;
	gap: 12px;
	font-size: .86rem;
	color: var(--scbp-text-2);
}
.scbp-country-bar-label {
	min-width: 0;
	font-weight: 700;
	color: var(--scbp-text);
}
.scbp-country-bar-track {
	height: 12px;
	border-radius: 999px;
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.08);
	overflow: hidden;
}
.scbp-country-bar-track span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--scbp-mint), var(--scbp-sky));
	box-shadow: 0 0 18px rgba(138,215,194,.25);
}
.scbp-country-bar-value {
	font-family: var(--scbp-font-head);
	font-weight: 700;
	color: var(--scbp-text);
	text-align: right;
}
@media (max-width: 620px) {
	.scbp-country-bar-row {
		grid-template-columns: 1fr auto;
		gap: 8px;
	}
	.scbp-country-bar-track {
		grid-column: 1 / -1;
		order: 3;
	}
}
