/* Modal trigger + dialog */

.kgr-widget.kgr-cat-modal .kgr-modal-trigger {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 10px 18px;
	background: var(--kgr-card-bg);
	border: 1px solid var(--kgr-border);
	border-radius: var(--kgr-radius-pill);
	color: var(--kgr-fg);
	font-size: var(--kgr-fs-body);
	font-weight: 600;
	cursor: pointer;
	box-shadow: var(--kgr-shadow-soft);
	transition: background-color .15s ease, border-color .15s ease;
}
.kgr-widget.kgr-cat-modal .kgr-modal-trigger:hover {
	background: var(--kgr-accent-soft);
	border-color: var(--kgr-accent);
}

/* Dialog overlay */
.kgr-widget.kgr-cat-modal .kgr-modal {
	position: fixed; inset: 0;
	background: rgba(15,20,30,.55);
	display: none;
	align-items: center; justify-content: center;
	padding: 24px;
	z-index: 99999;
}
.kgr-widget.kgr-cat-modal .kgr-modal.kgr-open { display: flex; animation: kgr-fadein .2s ease both; }
.kgr-widget.kgr-cat-modal .kgr-modal-card {
	width: 100%; max-width: 720px;
	max-height: 90vh; overflow-y: auto;
	background: var(--kgr-card-bg);
	border-radius: var(--kgr-radius);
	box-shadow: 0 20px 80px rgba(0,0,0,.35);
	padding: var(--kgr-sp-5);
	position: relative;
}
.kgr-widget.kgr-cat-modal .kgr-modal-close {
	position: absolute; top: 12px; right: 14px;
	background: none; border: 0;
	font-size: 26px; line-height: 1;
	color: var(--kgr-muted);
	cursor: pointer;
}
.kgr-widget.kgr-cat-modal .kgr-modal-list {
	display: flex; flex-direction: column;
	gap: var(--kgr-sp-3);
	margin-top: var(--kgr-sp-3);
}
.kgr-widget.kgr-cat-modal .kgr-modal-list .kgr-card {
	border: 0; border-bottom: 1px solid var(--kgr-border);
	border-radius: 0; box-shadow: none;
	padding: var(--kgr-sp-4) 0;
	background: transparent;
}
.kgr-widget.kgr-cat-modal .kgr-modal-list .kgr-card:last-child { border-bottom: 0; }

body.kgr-modal-locked { overflow: hidden; }
