/* Collector — application métier / catalogue d'archives. */
:root {
	--collector-blue: #073b69;
	--collector-blue-light: #0d528b;
	--collector-red: #ba1518;
	--collector-green: #388c3c;
	--collector-yellow: #f2c94c;
	--collector-paper: #eee6cb;
	--collector-paper-dark: #d9cfad;
	--collector-ink: #171811;
	--collector-rule: #77705c;
}

.collector-term-info {
	position: relative;
	display: inline-grid;
	place-items: center;
	width: 1.15rem;
	height: 1.15rem;
	margin-left: .2rem;
	color: var(--collector-blue);
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: .72rem;
	font-weight: 800;
	font-style: normal;
	line-height: 1;
	cursor: help;
}
.collector-term-info::after {
	position: absolute;
	z-index: 20;
	left: 50%;
	bottom: calc(100% + .55rem);
	width: max-content;
	max-width: min(19rem, 72vw);
	padding: .55rem .7rem;
	background: var(--collector-ink);
	color: #fff8df;
	border: 1px solid #000;
	box-shadow: 0 3px 8px rgba(0,0,0,.25);
	content: attr(data-tooltip);
	font-size: .75rem;
	font-weight: 500;
	line-height: 1.35;
	text-align: left;
	text-transform: none;
	transform: translateX(-50%) translateY(.2rem);
	opacity: 0;
	pointer-events: none;
	transition: opacity .15s ease, transform .15s ease;
}
.collector-term-info:hover::after,
.collector-term-info:focus::after,
.collector-term-info:focus-visible::after {
	transform: translateX(-50%) translateY(0);
	opacity: 1;
}

body.lf-collector {
	background-color: var(--collector-paper-dark);
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0)),
		repeating-linear-gradient(0deg, transparent 0, transparent 3px, rgba(23, 24, 17, 0.018) 4px);
}

.collector-site-header { position: sticky; z-index: 30; top: 0; background: var(--collector-paper-dark); border-bottom: 2px solid var(--collector-ink); box-shadow: 0 3px 0 rgba(23,24,17,.14); }
.collector-site-header__command { display: grid; grid-template-columns: minmax(230px,.62fr) minmax(340px,1.65fr) minmax(310px,.78fr); gap: 1rem; align-items: center; width: min(100% - 2rem,96rem); min-height: 4.75rem; margin-inline: auto; }
.collector-header-search { display: flex; min-width: 0; padding: .3rem; background: var(--collector-paper); border: 1px solid var(--collector-ink); box-shadow: inset 0 1px 2px rgba(23,24,17,.15); }
.collector-header-search input { flex: 1; min-width: 0; padding: .55rem .65rem; background: #fffdf3; border: 1px solid var(--collector-rule); }
.collector-header-search button { padding: .55rem .8rem; background: var(--collector-blue); color: #fff8df; border: 1px solid #042746; font-weight: 700; text-transform: uppercase; }
.collector-header-access { text-align: right; text-transform: uppercase; }
.collector-header-access span { display: block; font-size: .62rem; letter-spacing: .06em; }
.collector-header-access strong { display: inline-block; margin-top: .2rem; padding: .3rem .5rem; background: var(--collector-ink); color: var(--collector-yellow); font-size: .72rem; }
.collector-header-meta { display: flex; align-items: center; justify-content: flex-end; gap: .55rem; min-width: 0; overflow: hidden; }
.collector-header-system { display: inline-flex; align-items: center; gap: .3rem; color: var(--collector-muted,#5f5c4e); font-size: .58rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.collector-header-system i { width: .45rem; height: .45rem; background: var(--collector-green); border: 1px solid #206127; border-radius: 50%; box-shadow: 0 0 0 2px rgba(56,140,60,.13); }
.collector-header-propose { padding: .38rem .55rem; background: var(--collector-red); color: #fff8df; border: 1px solid #7d0d0f; font-size: .68rem; font-weight: 700; line-height: 1; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.collector-header-propose:hover { background: #d31b1f; color: #fff; }

@media (max-width: 1120px) and (min-width: 821px) {
	.collector-site-header__command { grid-template-columns: minmax(200px,.55fr) minmax(300px,1.5fr) minmax(230px,.7fr); gap: .65rem; }
	.collector-header-system span { display: none; }
	.collector-header-propose { max-width: 7.5rem; overflow: hidden; text-overflow: ellipsis; }
}
.collector-header-nav { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); width: min(100% - 2rem,96rem); margin-inline: auto; background: var(--collector-paper); border: 1px solid var(--collector-ink); border-bottom: 0; }
.collector-header-nav a { padding: .65rem .8rem; color: var(--collector-ink); font-weight: 700; text-align: center; text-decoration: none; text-transform: uppercase; border-right: 1px solid var(--collector-rule); }
.collector-header-nav a:last-child { border-right: 0; }
.collector-header-nav a:hover,.collector-header-nav a[aria-current="page"] { background: var(--collector-blue); color: #fff8df; }

.lf-collector .lf-c-branding {
	min-width: min(32vw, 21rem);
}

.lf-collector .lf-collector-site-logo {
	width: auto;
	max-width: min(32vw, 21rem);
	object-fit: contain;
}

@media (max-width: 680px) {
	.lf-collector .lf-c-branding,
	.lf-collector .lf-collector-site-logo {
		min-width: 0;
		max-width: min(62vw, 17rem);
	}
}

@media (max-width: 820px) {
	.collector-site-header { position: static; }
	.collector-site-header__command { grid-template-columns: 1fr auto; width: min(100% - 1rem,96rem); padding-block: .5rem; }
	.collector-header-search { grid-column: 1 / -1; grid-row: 2; }
	.collector-header-system span { display: none; }
	.collector-header-propose { font-size: .6rem; }
	.collector-header-nav { display: flex; width: min(100% - 1rem,96rem); overflow-x: auto; }
	.collector-header-nav a { flex: 1 0 auto; }
}

.collector-collection__header { padding: clamp(1rem,3vw,2rem); background: var(--collector-paper); border: 1px solid var(--collector-rule); }
.collector-collection__header h1 { max-width: 24ch; margin: .3rem 0; font-size: clamp(1.85rem,3.6vw,3.75rem); line-height: .95; overflow-wrap: anywhere; }
.collector-collection__header--filtered { display:flex; align-items:center; justify-content:space-between; gap:clamp(1rem,4vw,4rem); }
.collector-collection__heading-copy { min-width:0; }
.collector-collection__universe-logo { display:grid; place-items:center; flex:0 0 clamp(6rem,13vw,12rem); min-height:6rem; color:var(--collector-blue); text-decoration:none; }
.collector-collection__universe-logo img { display:block; width:100%; max-height:7rem; object-fit:contain; }
.collector-collection__universe-logo span { font-size:3.5rem; line-height:1; }
.collector-collection__universe-logo small { font-weight:700; text-transform:uppercase; }
.collector-catalog-sort { display:flex; justify-content:flex-end; gap:.6rem; align-items:center; margin:.75rem 0; padding:.6rem .75rem; background:var(--collector-paper); border:1px solid var(--collector-rule); }
.collector-catalog-sort label { font-weight:700; text-transform:uppercase; }
.collector-catalog-sort select,.collector-catalog-sort button { padding:.45rem .6rem; background:#fffdf3; border:1px solid var(--collector-rule); }
@media (max-width:620px) { .collector-collection__header--filtered { align-items:flex-start; } .collector-collection__universe-logo { flex-basis:5rem; } .collector-catalog-sort { justify-content:space-between; } }
.collector-taxonomy-path { display:flex; flex-wrap:wrap; gap:.35rem; align-items:center; margin-bottom:.7rem; font-size:.76rem; text-transform:uppercase; }
.collector-taxonomy-path a { color:var(--collector-blue); font-weight:700; }
.collector-taxonomy-path strong { color:var(--collector-ink); }
.collector-branches { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:.55rem; margin-top:.65rem; }
.collector-branches a { display:flex; justify-content:space-between; gap:.75rem; padding:.8rem; background:var(--collector-paper); color:var(--collector-ink); border:1px solid var(--collector-rule); box-shadow:0 2px 0 rgba(23,24,17,.16); text-decoration:none; text-transform:uppercase; }
.collector-branches a:hover { background:var(--collector-blue); color:#fff8df; }
.collector-branches span { font-size:.72rem; white-space:nowrap; }
.collector-view-switch { display: inline-flex; gap: .25rem; margin-top: .75rem; padding: .25rem; background: var(--collector-paper-dark); border: 1px solid var(--collector-rule); }
.collector-view-switch button { padding: .45rem .7rem; background: transparent; color: var(--collector-ink); border: 1px solid transparent; font-weight: 700; text-transform: uppercase; cursor: pointer; }
.collector-view-switch button[aria-pressed="true"] { background: var(--collector-blue); color: #fff8df; border-color: #042746; }
.collector-list { display: grid; gap: .6rem; margin-top: .65rem; }
.collector-list-card { display: grid; grid-template-columns: 9rem minmax(0,1fr) auto; gap: 1rem; align-items: center; min-height: 8rem; padding: .6rem; background: var(--collector-paper); border: 1px solid var(--collector-rule); box-shadow: 0 2px 0 rgba(23,24,17,.16); }
.collector-list-card__media { display: grid; place-items: center; width: 9rem; height: 7rem; background: var(--collector-paper-dark); border: 1px solid var(--collector-rule); overflow: hidden; }
.collector-list-card__media img { width: 100%; height: 100%; object-fit: cover; }
.collector-list-card__media span { font-size: .7rem; text-transform: uppercase; }
.collector-list-card__body p { margin: .2rem 0; text-transform: uppercase; }
.collector-list-card__body h2 { margin: .2rem 0; font-size: clamp(1.5rem,3vw,2.5rem); }
.collector-list-card__body h2 a { text-decoration: none; }
.collector-list-card__action { padding: .7rem .9rem; background: var(--collector-blue); color: #fff8df; font-weight: 700; text-decoration: none; text-transform: uppercase; }
.collector-collection .collector-list-card { grid-template-columns: 6.5rem minmax(0,1fr) auto; min-height: 5.8rem; padding: .45rem; }
.collector-collection .collector-list-card__media { width: 6.5rem; height: 5rem; }
.collector-collection .collector-list-card__body h2 { font-size: clamp(1.15rem,2vw,1.65rem); }
.collector-collection .collector-list-card__body p { font-size: .72rem; }
.collector-collection .collector-list-card__action { padding: .5rem .65rem; font-size: .72rem; }
.collector-pmc { display: inline-flex; gap: .25rem; align-items: center; margin-top: .25rem; padding: .16rem .35rem; background: rgba(242,201,76,.2); color: var(--collector-ink); border: 1px solid #9e7c0e; font-size: .68rem; font-weight: 700; line-height: 1; cursor: help; }
.collector-pmc abbr { color: var(--collector-red); text-decoration: none; }
.collector-acquisition-card { align-items: start; }
.collector-acquisition-card__facts { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .55rem; }
.collector-acquisition-card__facts > span { display: grid; gap: .05rem; min-width: 6.5rem; padding: .35rem .5rem; background: var(--collector-paper-dark); border: 1px solid var(--collector-rule); }
.collector-acquisition-card__facts small { font-size: .62rem; letter-spacing: .06em; text-transform: uppercase; }
.collector-acquisition-card__alert { padding: .35rem .5rem; background: rgba(186,21,24,.1); border-left: 3px solid var(--collector-red); }
.collector-acquisition-card__note { color: var(--collector-muted,#5f5c4e); font-style: italic; text-transform: none!important; }
.collector-champion-badge { display: inline-flex; align-items: center; gap: .3rem; padding: .2rem .38rem; background: rgba(242,201,76,.18); color: #6f5200; border: 1px solid #9e7c0e; font-size: .72rem; font-weight: 700; line-height: 1.2; }
.collector-champion-badge b { color: #9e7100; letter-spacing: .05em; }
@media (max-width:620px) { .collector-list-card { grid-template-columns: 6rem minmax(0,1fr); } .collector-list-card__media { width:6rem;height:5rem; } .collector-list-card__action { grid-column:1 / -1;text-align:center; } }

.collector-object-results[data-view="cards"] { grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }
.collector-object-results[data-view="cards"] .collector-list-card { display: flex; flex-direction: column; align-items: stretch; min-width: 0; padding: 0; overflow: hidden; }
.collector-object-results[data-view="cards"] .collector-list-card__media { width: 100%; height: auto; aspect-ratio: 4 / 3; border: 0; border-bottom: 1px solid var(--collector-rule); }
.collector-object-results[data-view="cards"] .collector-list-card__body { flex: 1; padding: .8rem; }
.collector-object-results[data-view="cards"] .collector-list-card__body h2 {
	display: -webkit-box;
	overflow: hidden;
	margin: .3rem 0;
	font-size: clamp(.95rem,1.15vw,1.15rem);
	line-height: 1.08;
	overflow-wrap: anywhere;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}
.collector-object-results[data-view="cards"] .collector-list-card__action { margin: 0 .8rem .8rem; text-align: center; }
.collector-collection .collector-object-results[data-view="cards"] { grid-template-columns: repeat(auto-fill,minmax(150px,180px)); align-items: stretch; }
.collector-collection .collector-object-results[data-view="cards"] .collector-list-card__body { padding: .55rem; }
.collector-collection .collector-object-results[data-view="cards"] .collector-list-card__action { margin: 0 .55rem .55rem; }
@media (max-width:1000px) { .collector-object-results[data-view="cards"] { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .collector-object-results[data-view="cards"] { grid-template-columns: 1fr; } }
.collector-public-champions { margin: 1rem 0; padding: clamp(1rem,3vw,1.5rem); background: var(--collector-paper); border: 2px solid #9e7c0e; box-shadow: 0 3px 0 rgba(23,24,17,.18); }
.collector-public-champions > header { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: .5rem 1rem; margin-bottom: .8rem; }
.collector-public-champions > header p { margin: 0; color: var(--collector-red); font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.collector-public-champions > header h2 { margin: 0; font-size: clamp(1.5rem,4vw,2.6rem); }
.collector-public-champions__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.collector-public-champion { display: grid; grid-template-columns: minmax(90px,28%) 1fr; gap: .8rem; align-items: center; min-height: 8rem; background: var(--collector-paper-dark); border: 1px solid var(--collector-rule); overflow: hidden; }
.collector-public-champion__media { display: grid; place-items: center; height: 100%; min-height: 8rem; background: var(--collector-blue); color: #f2c94c; font-size: 1.1rem; letter-spacing: .06em; }
.collector-public-champion__media img { width: 100%; height: 100%; min-height: 8rem; object-fit: cover; }
.collector-public-champion > div:last-child { padding: .7rem .8rem .7rem 0; }
.collector-public-champion p { margin: 0 0 .25rem; color: #765800; font-size: .72rem; font-weight: 800; text-transform: uppercase; }
.collector-public-champion p span { letter-spacing: .04em; }
.collector-public-champion h3 { margin: 0; font-size: clamp(1.2rem,3vw,2rem); }
.collector-public-champion h3 a { color: var(--collector-blue); text-decoration: none; }
.collector-public-champion small { color: var(--collector-muted,#5f5c4e); }
.collector-public-champion--wanted { border-top: 4px solid var(--collector-red); }
.collector-public-champion--acquired { border-top: 4px solid var(--collector-blue); }
@media (max-width:700px) { .collector-public-champions__grid { grid-template-columns: 1fr; } }
/* Signed 18+ gate for the explicit Collector branch. */
.collector-adult-gate { display:grid; min-height:70vh; padding:clamp(1rem,5vw,4rem); place-items:center; }
.collector-adult-gate .age-gate { width:min(44rem,100%); padding:clamp(1.5rem,5vw,3.5rem); background:var(--collector-paper); border:3px solid var(--collector-red); box-shadow:0 12px 0 rgba(23,24,17,.18); text-align:center; }
.collector-adult-gate h1 { margin:.35rem 0 1rem; color:var(--collector-red); font-size:clamp(2rem,6vw,4rem); line-height:.95; }
.collector-adult-gate form { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; margin:1.5rem 0; }
.collector-adult-gate .age-gate__button,.collector-adult-gate__leave { padding:.8rem 1rem; border:1px solid var(--collector-ink); font-weight:800; text-decoration:none; text-transform:uppercase; }
.collector-adult-gate .age-gate__button { background:var(--collector-red); color:#fff8df; cursor:pointer; }
.collector-adult-gate__leave { background:var(--collector-paper-dark); color:var(--collector-ink); }
.collector-adult-gate .age-gate__additional-information { margin:1rem 0 0; color:var(--collector-rule); font-size:.8rem; }
.collector-adult-thumbnail { filter:blur(14px); transform:scale(1.08); }
.lf-collector :where(h1, h2, h3, h4, h5, h6, .lf-c-button) {
	font-family: "Roboto Condensed", "Arial Narrow", ui-sans-serif, system-ui, sans-serif;
	letter-spacing: 0.02em;
}

.lf-collector :where(h1, h2, h3) {
	text-transform: uppercase;
}

.lf-collector .lf-c-header {
	border-bottom: 2px solid var(--collector-ink);
	box-shadow: 0 3px 0 rgba(23, 24, 17, 0.16);
}

.lf-collector .lf-c-button {
	border-width: 1px;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.22), 0 2px 0 rgba(23, 24, 17, 0.28);
}

.lf-collector :where(.lf-c-card, .wp-block-group.has-background) {
	border: 1px solid var(--collector-rule);
	box-shadow: 0 2px 0 rgba(23, 24, 17, 0.18);
}

.lf-collector :where(input, select, textarea) {
	border-width: 1px;
	box-shadow: inset 0 1px 2px rgba(23, 24, 17, 0.16);
}

.lf-collector .collector-panel-title {
	margin: 0;
	padding: 0.45rem 0.7rem;
	background: linear-gradient(180deg, var(--collector-blue-light), var(--collector-blue));
	color: #fff8df;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	border-bottom: 1px solid var(--collector-ink);
}

.lf-collector .collector-status {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.2rem 0.45rem;
	background: var(--collector-green);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	border: 1px solid #206127;
	border-radius: 2px;
}

.lf-collector .collector-status--alert {
	background: var(--collector-red);
	border-color: #7d0d0f;
}

.lf-collector .collector-status--classified {
	background: var(--collector-yellow);
	border-color: #9e7c0e;
	color: var(--collector-ink);
}

@media (prefers-reduced-motion: reduce) {
	.lf-collector *,
	.lf-collector *::before,
	.lf-collector *::after {
		scroll-behavior: auto !important;
	}
}

.collector-app {
	width: min(100% - 1.25rem, 1600px);
	margin: 0.65rem auto 1.5rem;
	color: var(--collector-ink);
}

.collector-commandbar {
	display: grid;
	grid-template-columns: minmax(220px, 1fr) minmax(320px, 1.7fr) minmax(160px, 0.65fr);
	gap: 1rem;
	align-items: center;
	padding: 0.75rem 1rem;
	background: var(--collector-paper);
	border: 1px solid var(--collector-ink);
	box-shadow: inset 0 0 0 3px rgba(255, 255, 255, 0.28);
}

.collector-commandbar h1 {
	margin: 0;
	font-size: clamp(2.2rem, 5vw, 4.6rem);
	font-style: italic;
	line-height: 0.82;
	letter-spacing: -0.055em;
	color: var(--collector-blue);
}

.collector-commandbar h1::after {
	content: ".";
	color: var(--collector-red);
}

.collector-commandbar p { margin: 0.35rem 0 0; }
.collector-eyebrow { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }
.collector-search label { display: block; padding: 0.4rem 0.65rem; background: var(--collector-blue); color: #fff8df; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; }
.collector-search > div { display: flex; padding: 0.35rem; border: 1px solid var(--collector-ink); border-top: 0; }
.collector-search input { flex: 1; min-width: 0; }
.collector-search button { padding-inline: 0.8rem; background: var(--collector-paper-dark); border: 1px solid var(--collector-rule); font-weight: 700; text-transform: uppercase; }
.collector-access { text-align: right; text-transform: uppercase; }
.collector-access span { display: block; font-size: 0.7rem; }
.collector-access strong { display: inline-block; margin-top: 0.25rem; padding: 0.3rem 0.5rem; background: var(--collector-ink); color: var(--collector-yellow); font-size: 0.78rem; }

.collector-tabs { display: flex; overflow-x: auto; margin-top: 0.3rem; background: var(--collector-paper); border: 1px solid var(--collector-ink); }
.collector-tabs a { flex: 1 0 auto; padding: 0.75rem 1rem; color: var(--collector-ink); font-weight: 700; text-align: center; text-decoration: none; text-transform: uppercase; border-right: 1px solid var(--collector-rule); }
.collector-tabs a:hover, .collector-tabs a.is-active { background: var(--collector-blue); color: #fff8df; }

.collector-dashboard { display: grid; grid-template-columns: minmax(215px, 0.58fr) minmax(520px, 2.7fr); gap: 0.65rem; margin-top: 0.65rem; }
.collector-stack { display: grid; align-content: start; gap: 0.65rem; }
.collector-panel { overflow: hidden; background: rgba(238, 230, 203, 0.9); border: 1px solid var(--collector-rule); border-radius: 3px; box-shadow: 0 2px 0 rgba(23, 24, 17, 0.18); }
.collector-universes { margin: 0; padding: 0.4rem 0.75rem; list-style: none; }
.collector-universes li { min-height: 3.2rem; border-bottom: 1px dotted var(--collector-rule); text-transform: uppercase; }
.collector-universes__link { display: flex; align-items: center; justify-content: space-between; gap: .65rem; width: 100%; min-height: 3.2rem; padding: .4rem .15rem; color: inherit; text-decoration: none; }
a.collector-universes__link:hover { background: rgba(7,59,105,.1); color: var(--collector-blue); }
.collector-universes__identity { display: grid; grid-template-columns: 3.25rem minmax(0,1fr); gap: .55rem; align-items: center; min-width: 0; font-weight: 700; }
.collector-universes__identity img { width: 3.25rem; height: 2.25rem; object-fit: contain; mix-blend-mode: multiply; }
.collector-universes__identity span { line-height: 1.05; }
.collector-stats { margin: 0; padding: 0.4rem 0.75rem; }
.collector-stats div, .collector-system p { display: flex; justify-content: space-between; gap: 0.7rem; margin: 0; padding: 0.55rem 0; border-bottom: 1px dotted var(--collector-rule); }
.collector-stats dt { text-transform: uppercase; }
.collector-stats dd { margin: 0; font-weight: 700; }
.collector-primary { display: grid; align-content: start; gap: .65rem; min-width: 0; }
.collector-intro { padding: clamp(1.5rem, 4vw, 4rem); background: linear-gradient(135deg, rgba(255,255,255,.55), transparent 60%); }
.collector-kicker { display: inline-block; padding: 0.25rem 0.45rem; border: 1px solid var(--collector-rule); font-family: ui-monospace, monospace; font-size: 0.72rem; text-transform: uppercase; }
.collector-intro h2 { max-width: 760px; margin: 1rem 0; font-size: clamp(2rem, 4.5vw, 4.8rem); line-height: 0.92; }
.collector-intro > p:not(.collector-kicker) { max-width: 760px; font-size: 1.12rem; }
.collector-actions { display: flex; flex-wrap: wrap; gap: 0.65rem; margin-top: 1.5rem; }
.collector-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.5rem; padding: 0.65rem; }
.collector-feature-grid article { padding: 1rem; background: var(--collector-paper-dark); border: 1px solid var(--collector-rule); }
.collector-feature-grid article > span { color: var(--collector-red); font-family: ui-monospace, monospace; font-weight: 700; }
.collector-feature-grid h3 { margin: 0.4rem 0 0.25rem; text-transform: uppercase; }
.collector-feature-grid p { margin: 0; }
.collector-system, .collector-panel blockquote { margin: 0; padding: 0.8rem; }
.collector-panel blockquote { font-size: 1.05rem; font-weight: 700; line-height: 1.35; }

.collector-home-section { margin-top: .8rem; }
.collector-home-section > header { display: flex; align-items: end; justify-content: space-between; gap: 1rem; padding: .8rem 1rem; background: var(--collector-paper); border: 1px solid var(--collector-rule); }
.collector-home-section > header h2 { margin: .1rem 0 0; font-size: clamp(2rem,4vw,4rem); line-height: .9; }
.collector-home-section > header p { margin: 0; }
.collector-home-section > header > a { font-weight: 700; text-transform: uppercase; }
.collector-card-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .7rem; margin-top: .7rem; }
.collector-page-card-grid { grid-template-columns: repeat(auto-fill,minmax(150px,180px)); align-items: start; }
.collector-explore-card { overflow: hidden; background: var(--collector-paper); border: 1px solid var(--collector-rule); box-shadow: 0 2px 0 rgba(23,24,17,.16); }
.collector-explore-card__media { display: grid; place-items: center; aspect-ratio: 4 / 3; overflow: hidden; background: var(--collector-paper-dark); border-bottom: 1px solid var(--collector-rule); }
.collector-explore-card__media img { width: 100%; height: 100%; object-fit: cover; }
.collector-explore-card__body { padding: .8rem; }
.collector-explore-card__body h3 {
	display: -webkit-box;
	overflow: hidden;
	margin: .45rem 0 .2rem;
	font-size: clamp(1rem,1.35vw,1.25rem);
	line-height: 1.08;
	overflow-wrap: anywhere;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}
.collector-explore-card__body h3 a { text-decoration: none; }
.collector-explore-card__body p { margin: 0; text-transform: uppercase; }
.collector-explore-card__badges { display: flex; flex-wrap: wrap; gap: .3rem; }
.collector-card-complete { padding: .2rem .45rem; background: var(--collector-yellow); border: 1px solid #9e7c0e; font-size: .75rem; font-weight: 700; text-transform: uppercase; }
.collector-home-section--compact { margin-top: 0; padding-bottom: .55rem; background: rgba(238,230,203,.95); }
.collector-home-section--compact + .collector-home-section--compact { margin-top: 0; }
.collector-home-section--compact > header { display: flex; align-items: end; padding: .65rem .75rem; background: linear-gradient(180deg,var(--collector-blue-light),var(--collector-blue)); color: #fff8df; border: 0; border-bottom: 1px solid var(--collector-ink); }
.collector-home-section--compact > header .collector-eyebrow { color: var(--collector-yellow); }
.collector-home-section--compact > header h2 { font-size: clamp(1.65rem,3vw,2.7rem); }
.collector-home-section--compact > header > a { width: fit-content; padding: .45rem .65rem; background: #fff8df; color: var(--collector-blue); border: 1px solid #042746; text-decoration: none; }
.collector-home-section--compact > header > a:hover { background: var(--collector-yellow); color: var(--collector-ink); }
.collector-home-section--compact .collector-card-grid { grid-template-columns: repeat(4,minmax(130px,180px)); gap: .5rem; margin: .55rem; }
.collector-home-section--compact .collector-explore-card__body { padding: .45rem; }
.collector-home-section--compact .collector-explore-card__body h3 { margin: .35rem 0 .12rem; font-size: 1rem; line-height: 1; }
.collector-home-section--compact .collector-explore-card__body p { font-size: .68rem; }
.collector-home-section--compact .collector-status,.collector-home-section--compact .collector-card-complete { padding: .14rem .28rem; font-size: .6rem; }
.collector-home-section--compact .collector-empty { margin: .55rem; padding: .8rem; background: var(--collector-paper-dark); border: 1px dashed var(--collector-rule); }
.collector-home-resources { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; margin-top: .8rem; }
.collector-home-resources .collector-panel > div { padding: 1rem; }
.collector-home-resources .collector-panel p { margin-top: 0; }
.collector-home-resources .collector-panel span { color: var(--collector-red); font-weight: 700; text-transform: uppercase; }
.collector-home-resources .collector-panel a { color: var(--collector-red); font-weight: 700; text-transform: uppercase; }
@media (max-width:900px) { .collector-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .collector-card-grid,.collector-home-resources { grid-template-columns: 1fr; } .collector-home-section > header { display: grid; } }

@media (max-width: 980px) {
	.collector-commandbar { grid-template-columns: 1fr; }
	.collector-access { text-align: left; }
	.collector-dashboard { grid-template-columns: 1fr 2fr; }
	.collector-home-section--compact .collector-card-grid { grid-template-columns: repeat(2,minmax(120px,180px)); }
}

@media (max-width: 680px) {
	.collector-app { width: min(100% - 0.6rem, 1600px); }
	.collector-dashboard { grid-template-columns: 1fr; }
	.collector-primary { grid-row: 1; min-height: 0; }
	.collector-home-section--compact .collector-card-grid { grid-template-columns: repeat(2,minmax(110px,180px)); }
	.collector-feature-grid { grid-template-columns: 1fr; }
}

@media (max-width: 420px) { .collector-home-section--compact .collector-card-grid { grid-template-columns: 1fr; } }
.collector-home-v2 { display: grid; gap: clamp(1.1rem,3vw,2rem); }
.collector-home-world { --world-accent: var(--collector-blue); --world-accent-dark: #042746; --world-soft: rgba(7,59,105,.09); }
.collector-home-world--wanted { --world-accent: var(--collector-red); --world-accent-dark: #7d0d0f; --world-soft: rgba(186,21,24,.09); }
.collector-home-world__heading { padding: .75rem 1rem; border-top: 5px solid var(--world-accent); border-bottom: 1px solid var(--collector-rule); background: linear-gradient(90deg,var(--world-soft),transparent 72%); }
.collector-home-world__heading p { margin: 0; color: var(--world-accent); font-size: .74rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.collector-home-world__heading h1,.collector-home-world__heading h2 { margin: .2rem 0 0; font-size: clamp(1.65rem,3.2vw,3.25rem); line-height: .95; }
.collector-home-world__heading .collector-home-world__description { margin: .45rem 0 0; color: var(--collector-ink); font-size: .92rem; font-weight: 500; letter-spacing: 0; text-transform: none; }
.collector-home-world__layout { display: grid; grid-template-columns: minmax(210px,1fr) minmax(0,3fr); gap: .7rem; margin-top: .7rem; }
.collector-home-universes .collector-panel-title { background: var(--world-accent); color: #fff8df; }
.collector-home-universes .collector-universes__link strong { color: var(--world-accent); font-size: 1.05rem; }
.collector-home-world a.collector-universes__link:hover { background: var(--world-soft); color: var(--world-accent-dark); }
.collector-home-selection { padding-bottom: .7rem; }
.collector-home-selection > header { display: flex; justify-content: space-between; align-items: end; gap: 1rem; padding: .8rem 1rem; color: #fff8df; background: linear-gradient(180deg,var(--world-accent),var(--world-accent-dark)); }
.collector-home-selection > header p { margin: 0; color: var(--collector-yellow); }
.collector-home-selection > header h2 { margin: .12rem 0; font-size: clamp(1.7rem,3.2vw,3rem); line-height: .9; }
.collector-home-selection > header h3 { margin: .45rem 0 0; font-size: .76rem; letter-spacing: .12em; text-transform: uppercase; }
.collector-home-selection > header > a { max-width: 15rem; padding: .5rem .7rem; color: var(--world-accent-dark); background: #fff8df; border: 1px solid var(--world-accent-dark); font-size: .72rem; font-weight: 800; line-height: 1.2; text-decoration: none; text-transform: uppercase; }
.collector-home-selection .collector-card-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: .55rem; margin: .7rem; }
.collector-home-selection .collector-explore-card { min-width: 0; }
.collector-home-selection .collector-explore-card--priority { border: 2px solid var(--world-accent); box-shadow: 0 4px 0 var(--world-soft); }
.collector-home-selection .collector-explore-card--priority .collector-explore-card__media { aspect-ratio: 16 / 11; }
.collector-home-selection .collector-explore-card__body { padding: .6rem; }
.collector-home-selection .collector-explore-card__body h3 { margin: .45rem 0 .15rem; font-size: clamp(1rem,1.7vw,1.45rem); line-height: 1; }
.collector-home-selection .collector-explore-card__body > p { font-size: .68rem; }
.collector-public-rank { display: inline-flex; padding: .22rem .38rem; background: var(--world-accent); color: #fff8df; border: 1px solid var(--world-accent-dark); font-size: .64rem; font-weight: 900; line-height: 1.1; text-transform: uppercase; }
.collector-priority-stars { margin-top: .45rem; color: #9e7100; font-size: 1rem; font-weight: 900; letter-spacing: .08em; }
.collector-home-world--wanted .collector-status--alert { background: var(--collector-red); color: #fff8df; }
.collector-home-information > header { margin-bottom: .7rem; padding-bottom: .55rem; border-bottom: 3px solid var(--collector-ink); }
.collector-home-information > header p,.collector-home-information > header h2 { margin: 0; }
.collector-home-information > header h2 { font-size: clamp(1.5rem,3vw,2.6rem); }
.collector-home-information .collector-home-resources { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 0; }
.collector-home-information .collector-panel-title { margin: 0; }
.collector-home-information .collector-stats { padding: .75rem 1rem; }
.collector-home-information .collector-panel > div { min-height: 8rem; }
.collector-home-selection .collector-empty { margin: .7rem; padding: 1rem; background: var(--collector-paper-dark); border: 1px dashed var(--world-accent); }
@media (max-width:980px) { .collector-home-selection .collector-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) { .collector-home-world__layout { grid-template-columns: 1fr; } .collector-home-universes .collector-universes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); } .collector-home-information .collector-home-resources { grid-template-columns: 1fr; } }
@media (max-width:480px) { .collector-home-selection > header { display: grid; } .collector-home-selection .collector-card-grid,.collector-home-universes .collector-universes { grid-template-columns: 1fr; } }
.collector-universes__symbol { display:grid; width:2.5rem; height:2.5rem; place-items:center; background:var(--collector-blue); color:#fff8df; border:1px solid var(--collector-ink); font-size:1.45rem; }
.collector-resource-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(260px,1fr)); gap: .7rem; margin-top: .7rem; }
.collector-resource-card__media { display: grid; place-items: center; aspect-ratio: 4 / 3; overflow: hidden; background: var(--collector-paper-dark); border-bottom: 1px solid var(--collector-rule); }
.collector-resource-card__media img { width: 100%; height: 100%; object-fit: cover; }
.collector-resource-card__media span { color: var(--collector-blue); font-size: 2rem; font-weight: 700; text-transform: uppercase; }
.collector-resource-card__body { padding: .9rem; }
.collector-resource-card__body h2 { margin: .3rem 0; font-size: 1.6rem; line-height: 1; }
.collector-resource-card__body h2 a { text-decoration: none; }
.collector-resource-card__action { font-weight: 700; text-transform: uppercase; }
.collector-resource-single__header { padding: clamp(1rem,3vw,2rem); border-bottom: 1px solid var(--collector-rule); }
.collector-resource-single__header h1 { max-width: 1000px; margin: .25rem 0; font-size: clamp(2.2rem,5vw,5rem); line-height: .9; }
.collector-resource-single__media { margin: 0; padding: .7rem; background: var(--collector-paper-dark); border-bottom: 1px solid var(--collector-rule); text-align: center; }
.collector-resource-single__media img { display: block; width: min(100%,1100px); max-height: 760px; margin-inline: auto; object-fit: contain; }
.collector-resource-single__layout { display: grid; grid-template-columns: minmax(0,2fr) minmax(240px,.75fr); gap: .7rem; padding: .7rem; }
.collector-resource-single__content,.collector-resource-single__layout aside { padding: 1rem; background: rgba(255,255,255,.22); border: 1px solid var(--collector-rule); }
.collector-resource-single__layout aside h2 { margin-top: 0; }
.collector-resource-single__layout dl div { padding: .45rem 0; border-bottom: 1px dotted var(--collector-rule); }
.collector-resource-single__layout dt { font-size: .68rem; font-weight: 700; text-transform: uppercase; }
.collector-resource-single__layout dd { margin: .15rem 0 0; }
.collector-proposal { max-width: 980px; }
.collector-proposal__form { margin-top: .7rem; }
.collector-proposal__form > div { padding: clamp(1rem,3vw,2rem); }
.collector-proposal .ff-el-form-control { background: #fffdf3; border: 1px solid var(--collector-rule); border-radius: 2px; }
.collector-proposal .ff-btn-submit { background: var(--collector-blue)!important; color: #fff8df!important; border: 1px solid #042746!important; border-radius: 2px!important; font-weight: 700!important; text-transform: uppercase; }
@media (max-width:760px) { .collector-resource-single__layout { grid-template-columns:1fr; } }

.collector-object__back { margin-bottom: .55rem; font-weight: 700; text-transform: uppercase; }
.collector-object__sheet { background: rgba(238,230,203,.45); border: 1px solid var(--collector-ink); }
.collector-object__header { display: grid; grid-template-columns: minmax(210px,.8fr) minmax(300px,2fr) minmax(180px,.72fr); gap: 1.4rem; align-items: center; padding: 1.2rem; border-bottom: 1px solid var(--collector-rule); }
.collector-object__header h1 { max-width: 22ch; margin: .35rem 0; font-size: clamp(2rem,3.7vw,4.25rem); line-height: .94; overflow-wrap: anywhere; }
.collector-object__header p { margin: 0; font-weight: 700; text-transform: uppercase; }
.collector-object__personal-status { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .75rem; }
.collector-status--catalogue { background: var(--collector-paper-dark); color: var(--collector-ink); border-color: var(--collector-rule); }
.collector-object__identity,.collector-object__affiliation { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .5rem; align-items: end; }
.collector-object__identity figure,.collector-object__affiliation figure { margin: 0; }
.collector-object__identity figure,.collector-object__affiliation figure { display: grid; gap: .25rem; }
.collector-object__identity a,.collector-object__affiliation a { color: inherit; text-decoration: none; }
.collector-object__identity a:hover,.collector-object__affiliation a:hover,.collector-object__identity a:focus-visible,.collector-object__affiliation a:focus-visible { color: var(--collector-blue); text-decoration: underline; }
.collector-entity-logos { display: flex; gap: .35rem; align-items: center; }
.collector-entity-logo-link { display: block; flex: 1; min-width: 0; }
.collector-object__identity span,.collector-object__affiliation span { font-size: .62rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.collector-object__identity strong,.collector-object__affiliation strong { min-height: 1.15rem; font-size: .78rem; line-height: 1.05; text-transform: uppercase; }
.collector-object__identity img,.collector-object__affiliation img { display: block; width: 100%; height: 66px; object-fit: contain; object-position: left center; }
.collector-object__affiliation img { object-position: center; }
.collector-object__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: .65rem; padding: .65rem; }
.collector-object__media img { display: block; width: 100%; height: auto; }
.collector-object__packaging img { display: block; width: 100%; height: auto; object-fit: contain; background: var(--collector-paper-dark); }
.collector-media-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); background: var(--collector-paper-dark); border-bottom: 1px solid var(--collector-ink); }
.collector-media-tabs button { padding: .6rem .8rem; background: transparent; color: var(--collector-ink); border: 0; border-right: 1px solid var(--collector-rule); font-weight: 700; text-transform: uppercase; cursor: pointer; }
.collector-media-tabs button:last-child { border-right: 0; }
.collector-media-tabs button[aria-selected="true"] { background: var(--collector-blue); color: #fff8df; }
.collector-media-tabs button:disabled { opacity: .45; cursor: not-allowed; }
.collector-object__media [data-media-panel="packaging"] img { width: 100%; aspect-ratio: 4 / 3; object-fit: contain; background: var(--collector-paper-dark); }
.collector-object__placeholder { display: grid; place-content: center; min-height: 420px; text-align: center; background: radial-gradient(circle,#f8f2dc 0,#d7cdaa 72%); }
.collector-object__placeholder strong { font-size: clamp(2.5rem,6vw,6rem); font-style: italic; }
.collector-object__placeholder span { text-transform: uppercase; }
.collector-object__specs dl { margin: 0; padding: .7rem; }
.collector-object__specs dl div { display: flex; justify-content: space-between; gap: 1rem; padding: .48rem 0; border-bottom: 1px dotted var(--collector-rule); }
.collector-object__specs dt { font-weight: 700; text-transform: uppercase; }
.collector-object__specs dd { margin: 0; text-align: right; }
.collector-prices { display: grid; grid-template-columns: repeat(3,1fr); gap: .35rem; padding: .7rem; }
.collector-prices span { padding: .55rem; background: var(--collector-ink); color: var(--collector-yellow); text-align: center; font-weight: 700; }
.collector-prices-label { margin: .35rem .7rem 0; padding: .4rem .55rem; background: rgba(242,201,76,.18); border-left: 3px solid var(--collector-yellow); font-size: .75rem; text-transform: uppercase; }
.collector-prices-label strong { color: var(--collector-red); }
.collector-breadcrumb { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .55rem; margin: 0; padding: .8rem; list-style: none; counter-reset: collector-level; }
.collector-breadcrumb li { position: relative; display: grid; gap: .15rem; min-width: 0; padding: .65rem .75rem; background: var(--collector-paper-dark); border: 1px solid var(--collector-rule); counter-increment: collector-level; }
.collector-breadcrumb li:not(:last-child)::after { content: "›"; position: absolute; z-index: 2; top: 50%; right: -.48rem; translate: 0 -50%; display: grid; place-items: center; width: .9rem; height: 1.5rem; background: var(--collector-red); color: #fff; font-weight: 700; }
.collector-breadcrumb small { color: var(--collector-muted,#5f5c4e); font-size: .65rem; letter-spacing: .08em; text-transform: uppercase; }
.collector-breadcrumb strong { overflow: hidden; text-overflow: ellipsis; line-height: 1.1; text-transform: uppercase; white-space: nowrap; }
.collector-breadcrumb strong a { color:inherit; text-decoration:none; }
.collector-breadcrumb strong a:hover { color:var(--collector-blue); text-decoration:underline; }
.collector-classification-empty { margin:0; padding:.8rem; }
.collector-tags { display: grid; gap: .45rem; padding: 0 .8rem .8rem; }
.collector-tags__label { font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.collector-tags > div { display: flex; flex-wrap: wrap; gap: .35rem; }
.collector-tags span { padding: .25rem .45rem; background: rgba(255,255,255,.28); border: 1px solid var(--collector-rule); font-size: .72rem; text-transform: uppercase; }
.collector-checklist__summary { display: flex; justify-content: space-between; gap: 1rem; padding: .65rem .8rem; background: rgba(242,201,76,.18); border-bottom: 1px solid var(--collector-rule); }
.collector-checklist__summary span { font-weight: 700; text-transform: uppercase; }
.collector-checklist__summary small { color: var(--collector-muted,#5f5c4e); }
.collector-completeness { display: inline-flex; align-items: center; width: fit-content; padding: .28rem .5rem; color: #fff; border: 1px solid transparent; border-radius: 2px; line-height: 1; }
.collector-completeness.is-complete { background: var(--collector-green); border-color: #206127; }
.collector-completeness.is-incomplete { background: var(--collector-red); border-color: #7d0d0f; }
.collector-completeness.is-unknown { background: var(--collector-yellow); color: var(--collector-ink); border-color: #9e7c0e; }
.collector-checklist, .collector-object__links ul { margin: 0; padding: .8rem; list-style: none; }
.collector-checklist { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .35rem .75rem; }
.collector-checklist li { display: grid; grid-template-columns: 1rem minmax(0,1fr); gap: .35rem; padding: .35rem; border-bottom: 1px dotted var(--collector-rule); }
.collector-checklist li > span:first-child { color: var(--collector-green); font-weight: 700; }
.collector-object__links { display: grid; grid-template-columns: .7fr 1.3fr; gap: .65rem; padding: 0 .65rem .65rem; }
.collector-object__links ul { display: grid; grid-template-columns: repeat(auto-fit,minmax(170px,1fr)); gap: .45rem; }
.collector-object__links a { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .1rem .5rem; min-height: 3.4rem; padding: .55rem .65rem; background: rgba(255,255,255,.24); border: 1px solid var(--collector-rule); font-weight: 700; text-decoration: none; }
.collector-object__links a:hover { background: var(--collector-blue); color: #fff8df; border-color: var(--collector-blue); }
.collector-object__links a small { grid-column: 1; overflow: hidden; color: var(--collector-muted,#5f5c4e); font-weight: 400; text-overflow: ellipsis; white-space: nowrap; }
.collector-object__links a:hover small { color: #eee6cb; }
.collector-object__links a b { grid-column: 2; grid-row: 1 / span 2; align-self: center; color: var(--collector-red); }
.collector-object__links a:hover b { color: var(--collector-yellow); }
@media (max-width:900px) { .collector-breadcrumb { grid-template-columns: repeat(2,minmax(0,1fr)); } .collector-breadcrumb li::after { display:none!important; } }
@media (max-width:760px) { .collector-object__header,.collector-object__grid,.collector-object__links { grid-template-columns:1fr; } .collector-object__identity,.collector-object__affiliation { max-width: 360px; } }
@media (max-width:520px) { .collector-breadcrumb,.collector-checklist { grid-template-columns:1fr; } .collector-checklist__summary { display:grid; } }
.collector-champion-public { grid-column: 1 / -1; padding: clamp(1rem,3vw,1.6rem); background: linear-gradient(135deg,rgba(242,201,76,.22),var(--collector-paper)); border: 2px solid #9e7c0e; }
.collector-champion-public__eyebrow { margin: 0; color: var(--collector-red); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.collector-champion-public h2 { margin: .25rem 0; font-size: clamp(1.6rem,4vw,2.8rem); }
.collector-champion-public h2 span { color: #9e7100; letter-spacing: .06em; }
.collector-champion-public > p:not(.collector-champion-public__eyebrow) { margin: .25rem 0 1rem; }
.collector-champion-public__titles { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: .5rem; }
.collector-champion-public__titles span { display: grid; gap: .2rem; padding: .65rem; background: rgba(255,253,243,.78); border-left: 4px solid #9e7c0e; }
.collector-champion-public__titles strong { color: var(--collector-red); text-transform: uppercase; }
.collector-champion-public__titles small { color: var(--collector-ink); }
