/* Composants de progression isolés — même langage visuel qu’Agòra 0.12.0. */
.alb-progress-rank,
.alb-progress-card,
.alb-progress-quest {
	padding: clamp(18px,2.6vw,30px);
	border: 1px solid var(--agora-line);
	background: #fff;
	box-shadow: none;
}
.alb-progress-rank { display: flex; align-items: center; gap: 18px; }
.alb-progress-rank > div { display: flex; flex-direction: column; }
.alb-progress-icon { width: 72px; height: 72px; object-fit: contain; border: 1px solid var(--agora-line); background: #fff; }
.alb-progress-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.alb-progress-card { display: flex; gap: 14px; }
.alb-progress-card p { margin: .4rem 0; color: var(--agora-muted); }
.alb-progress-placeholder { display: grid; place-items: center; width: 72px; height: 72px; border: 1px solid var(--agora-line); background: var(--agora-paper-2); font-size: 2rem; }
.alb-progress-quantity { margin-left: .5rem; }
.alb-progress-objectives { list-style: none; padding: 0; margin: 1rem 0 0; }
.alb-progress-objectives li { display: flex; gap: .75rem; padding: .75rem 0; border-top: 1px solid var(--agora-line); }
.alb-progress-objectives li > span { font-size: 1.25rem; }
.alb-progress-objectives li.is-complete strong { color: var(--agora-muted); text-decoration: line-through; }
.alb-progress-objectives p { margin: .25rem 0; }
.alb-progress-action { margin: 1rem 0; }
.alb-progress-action.is-done { padding: 18px; border: 1px solid var(--agora-line); border-left: 5px solid var(--agora-success); background: #fff; }
.alb-progress-empty { color: var(--agora-muted); font-style: italic; }
@media(max-width:1080px){.alb-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.alb-progress-grid{grid-template-columns:1fr}.alb-progress-rank,.alb-progress-card{align-items:flex-start;flex-direction:column}}

.alb-progress-historical { display:inline-block; margin-left:8px; padding:2px 6px; border:1px solid currentColor; font-size:11px; font-weight:700; text-transform:uppercase; opacity:.75; }

/* 0.9.2 — aperçu complet des rangs et badges. */
.alb-progress-rank-list {
	display:grid;
	grid-template-columns:repeat(5,minmax(0,1fr));
	gap:10px;
	margin-top:14px;
}
.alb-progress-rank-step {
	display:flex;
	min-width:0;
	flex-direction:column;
	gap:4px;
	padding:12px;
	border:1px solid var(--agora-line);
	background:#fff;
}
.alb-progress-rank-step.is-current { border-top:4px solid var(--agora-primary); }
.alb-progress-rank-step.is-reached { background:var(--agora-paper-2); }
.alb-progress-rank-step.is-locked { opacity:.6; }
.alb-progress-card.is-earned { border-top:4px solid var(--agora-success); }
.alb-progress-card.is-locked { opacity:.62; }
.alb-progress-placeholder.is-emoji { line-height:1; }
@media(max-width:1080px){.alb-progress-rank-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.alb-progress-rank-list{grid-template-columns:1fr}}

/* Material Symbols — rangs 0.9.15 */
.alb-rank-admin-identity{display:flex;align-items:center;gap:10px}.alb-rank-admin-icon{flex:0 0 auto}.alb-progress-advanced-visual{margin:12px 0}.alb-progress-advanced-visual>summary{cursor:pointer;font-weight:600}.alb-progress-advanced-visual .alb-field-row{margin-top:12px}.alb-progress-placeholder.alb-material-symbol,.alb-eco-rank__symbol.alb-material-symbol,.alb-eco-rank-step__media.alb-material-symbol{display:inline-flex;align-items:center;justify-content:center}

/* 0.9.17 — synthèse monétaire */
.alb-eco-money-balance{padding:22px 24px;border:1px solid rgba(9,75,77,.14);border-radius:18px;background:rgba(9,75,77,.045);margin-bottom:16px}.alb-eco-money-balance strong{display:block;font-size:clamp(2rem,5vw,3.6rem);line-height:1.05;margin:.2rem 0}.alb-eco-money-balance p{margin:.5rem 0 0}.alb-eco-tax-alert{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px 18px;margin-top:16px;border-radius:14px;background:rgba(181,112,0,.08);border:1px solid rgba(181,112,0,.18)}.alb-eco-tax-alert.is-clear{background:rgba(20,112,82,.06);border-color:rgba(20,112,82,.16)}@media(max-width:700px){.alb-eco-tax-alert{align-items:flex-start;flex-direction:column}}
