
	.title-row.svelte-75i7xh { display:flex; justify-content:space-between; align-items:center; padding:20px 0 30px; flex-wrap:wrap; gap:12px; }
	.title-actions.svelte-75i7xh { display:flex; gap:10px; flex-wrap:wrap; }
	.title-icon.svelte-75i7xh { width:32px; height:32px; vertical-align:middle; margin-right:8px; filter: var(--filter-icon-gold); }
	.btn-icon.svelte-75i7xh { width:16px; height:16px; vertical-align:middle; margin-right:4px; filter: var(--filter-icon-gold); }

	/* State cards (empty / error) */
	.state-card.svelte-75i7xh {
		text-align: center;
		padding: 80px 40px;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 12px;
		max-width: 480px;
		margin: 40px auto;
	}
	.state-icon.svelte-75i7xh { width: 72px; height: 72px; margin-bottom: 8px; }
	.state-msg.svelte-75i7xh { color: var(--text-pri); font-size: 17px; }
	.state-sub.svelte-75i7xh { color: var(--text-sec); font-size: 13px; line-height: 1.6; }
	.state-actions.svelte-75i7xh { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; margin-top: 8px; }

	/* Character grid */
	.char-grid.svelte-75i7xh { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px; }
	.char-card.svelte-75i7xh { overflow:visible; position:relative; }
	.edition-badge.svelte-75i7xh { position:absolute; top:12px; right:14px; width:26px; height:26px; border-radius:50%; background:var(--bg-elevated); border:1px solid var(--border-strong); display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; color:var(--gold); font-family:var(--font-mono); z-index:1; }
	.char-link.svelte-75i7xh { display:flex; align-items:center; gap:16px; padding:18px 20px; text-decoration:none; color:inherit; }
	.char-link.svelte-75i7xh:hover { background:rgba(201,169,110,0.03); }
	.char-portrait.svelte-75i7xh { width:56px; height:56px; border-radius:50%; overflow:hidden; flex-shrink:0; border:2px solid var(--border-vis); }
	.char-portrait.svelte-75i7xh img:where(.svelte-75i7xh) { width:100%; height:100%; object-fit:cover; }
	.portrait-placeholder.svelte-75i7xh { width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:var(--bg-elevated); }
	.portrait-placeholder.svelte-75i7xh img:where(.svelte-75i7xh) { width:28px; height:28px; opacity:0.4; filter: var(--filter-icon-gold); }
	.char-info.svelte-75i7xh h3:where(.svelte-75i7xh) { font-size:16px; color:var(--text-pri); font-family:var(--font-cjk); }
	.char-occ.svelte-75i7xh { font-size:12px; color:var(--text-sec); }
	.char-actions.svelte-75i7xh { display:flex; gap:8px; padding:0 20px 14px; }
	.btn-sm.svelte-75i7xh { padding:6px 14px; font-size:12px; }

	@media (max-width: 600px) {
		.title-row.svelte-75i7xh { padding: 16px 0 20px; }
		.title-actions.svelte-75i7xh { gap: 8px; }
	}

	/* ── Corner decorations ── */
	.corner.svelte-75i7xh {
		position: absolute;
		background-repeat: no-repeat;
		pointer-events: none;
		z-index: 5;
	}
	/* border9 — 6版 left-top only */
	.b2-tl.svelte-75i7xh {
		top: -10px; left: -10px;
		width: 55px; height: 55px;
		background-image: url('../../../icons/border9.png');
		background-size: 55px 55px;
	}
	/* border5 — 7版 left-top only */
	.b5-tl.svelte-75i7xh {
		top: -10px; left: -10px;
		width: 55px; height: 55px;
		background-image: url('../../../icons/border5.png');
		background-size: 55px 55px;
	}
