
	.cropper-overlay.svelte-hinp9y {
		position: fixed; inset: 0; z-index: 1000;
		background: rgba(0, 0, 0, 0.7);
		display: flex; align-items: center; justify-content: center;
		backdrop-filter: blur(4px);
	}
	.cropper-modal.svelte-hinp9y {
		background: var(--bg-card, #1a1714);
		border: 1px solid var(--border-vis);
		border-radius: 12px;
		padding: 24px;
		display: flex; flex-direction: column; align-items: center; gap: 12px;
		max-width: 90vw;
	}
	.cropper-modal.svelte-hinp9y h3:where(.svelte-hinp9y) { font-size: 16px; margin: 0; }
	.cropper-hint.svelte-hinp9y { font-size: 12px; color: var(--text-sec); opacity: 0.7; margin: 0; }

	.cropper-viewport.svelte-hinp9y {
		position: relative;
		overflow: hidden;
		border-radius: 4px;
		cursor: grab;
		touch-action: none;
		user-select: none;
		background: #111;
	}
	.cropper-viewport.svelte-hinp9y:active { cursor: grabbing; }

	.cropper-img.svelte-hinp9y {
		position: absolute;
		pointer-events: none;
	}

	.cropper-mask.svelte-hinp9y {
		position: absolute; inset: 0;
		pointer-events: none;
		width: 100%; height: 100%;
	}

	.cropper-actions.svelte-hinp9y {
		display: flex; gap: 10px; margin-top: 4px;
	}
	.btn-gold.svelte-hinp9y {
		background: linear-gradient(135deg, var(--gold-dim), var(--gold));
		color: var(--bg-base); border: none; border-radius: 6px; padding: 8px 20px;
		font-family: var(--font-cjk-ui); font-size: 13px; font-weight: 600; cursor: pointer;
		transition: opacity 0.2s; letter-spacing: 1px;
	}
	.btn-gold.svelte-hinp9y:hover { opacity: 0.9; }
	.btn-outline.svelte-hinp9y {
		background: none; border: 1px solid var(--border-vis); border-radius: 6px; padding: 8px 20px;
		color: var(--text-sec); font-family: var(--font-cjk-ui); font-size: 13px; cursor: pointer;
		transition: all 0.2s;
	}
	.btn-outline.svelte-hinp9y:hover { border-color: var(--gold-dim); color: var(--gold); }

	@media (max-width: 400px) {
		.cropper-modal.svelte-hinp9y { padding: 16px; }
	}
