:root {
	--bgg-review-surface: #ffffff;
	--bgg-review-surface-strong: #f4f7fb;
	--bgg-review-surface-muted: #eaeef5;
	--bgg-review-panel: rgba(255, 255, 255, 0.72);
	--bgg-review-border: rgba(16, 24, 40, 0.12);
	--bgg-review-text: #111827;
	--bgg-review-muted: #667085;
	--bgg-review-accent: #ff6b2c;
	--bgg-review-accent-soft: #ffb080;
	--bgg-review-user: #1f8f72;
	--bgg-review-pros: #16a34a;
	--bgg-review-cons: #ef4444;
	--bgg-review-shadow: 0 18px 50px rgba(15, 23, 42, 0.16);
}

.king-night {
	--bgg-review-surface: #131826;
	--bgg-review-surface-strong: #1b2333;
	--bgg-review-surface-muted: #232d40;
	--bgg-review-panel: rgba(25, 32, 47, 0.88);
	--bgg-review-border: rgba(255, 255, 255, 0.1);
	--bgg-review-text: #f5f7fb;
	--bgg-review-muted: #a7b0c0;
	--bgg-review-accent: #ff944d;
	--bgg-review-accent-soft: #ffc18c;
	--bgg-review-user: #5fd0b2;
	--bgg-review-pros: #5de28c;
	--bgg-review-cons: #ff7d7d;
	--bgg-review-shadow: 0 22px 56px rgba(0, 0, 0, 0.45);
}

.bgg-review-form {
	margin: 14px 0 20px;
}

.bgg-review-form__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.bgg-review-trigger {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	border-radius: 999px;
}

.bgg-review-summary,
.bgg-review-note,
.bgg-review-preview,
.bgg-review-field__hint {
	color: var(--bgg-review-muted);
	font-size: 13px;
	line-height: 1.45;
}

.bgg-review-modal[hidden] {
	display: none;
}

.bgg-review-modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 18px;
}

.bgg-review-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.62);
	backdrop-filter: blur(5px);
}

.bgg-review-modal__dialog {
	position: relative;
	width: min(720px, 100%);
	max-height: calc(100vh - 36px);
	overflow: auto;
	padding: 20px;
	border: 1px solid var(--bgg-review-border);
	border-radius: 22px;
	background: linear-gradient(180deg, var(--bgg-review-surface), var(--bgg-review-surface-strong));
	box-shadow: var(--bgg-review-shadow);
	color: var(--bgg-review-text);
}

.bgg-review-modal__header,
.bgg-review-modal__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.bgg-review-modal__header {
	margin-bottom: 18px;
}

.bgg-review-modal__header h3 {
	margin: 0 0 4px;
	font-size: 21px;
	line-height: 1.2;
	color: var(--bgg-review-text);
}

.bgg-review-modal__body {
	display: grid;
	gap: 14px;
}

.bgg-review-icon-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--bgg-review-border);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.04);
	color: var(--bgg-review-text);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

.bgg-review-check {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-weight: 600;
	color: var(--bgg-review-text);
}

.bgg-review-check input {
	margin: 0;
}

.bgg-review-preview {
	margin: -2px 0 0;
	font-weight: 700;
}

.bgg-review-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.bgg-review-grid--notes {
	align-items: start;
}

.bgg-review-field {
	display: grid;
	gap: 6px;
}

.bgg-review-field label {
	font-size: 13px;
	font-weight: 700;
	color: var(--bgg-review-text);
}

.bgg-review-field input,
.bgg-review-field textarea {
	width: 100%;
	padding: 11px 13px;
	border: 1px solid var(--bgg-review-border);
	border-radius: 14px;
	background: var(--bgg-review-panel);
	color: var(--bgg-review-text);
	font-size: 14px;
	line-height: 1.45;
}

.bgg-review-field textarea {
	min-height: 104px;
	resize: vertical;
}

.bgg-review-field__hint {
	display: block;
}

.bgg-review-multiplayer-field[hidden] {
	display: none;
}

.bgg-review-modal__footer {
	margin-top: 16px;
}

.bgg-review-modal-open {
	overflow: hidden;
}

.bgg-review-card,
.bgg-review-card * {
	box-sizing: border-box !important;
}

.bgg-review-card {
	width: 100% !important;
	display: grid !important;
	grid-template-columns: 78px minmax(180px, 1fr) minmax(260px, 340px) !important;
	align-items: center !important;
	gap: 16px !important;

	margin: 16px 0 20px !important;
	padding: 16px !important;

	border-radius: 20px !important;
	border: 1px solid rgba(255,255,255,0.08) !important;

	background:
		radial-gradient(circle at top left, rgba(124,58,237,0.22), transparent 34%),
		linear-gradient(135deg, #12141c 0%, #181b24 100%) !important;

	box-shadow: none !important;
	color: #d8deef !important;
	overflow: hidden !important;
}

.bgg-review-score-ring {
	width: 78px !important;
	height: 78px !important;
	padding: 5px !important;
	border-radius: 50% !important;

	background: conic-gradient(
		from 180deg,
		#8b5cf6 0 var(--score),
		#080910 var(--score) 100%
	) !important;

	box-shadow: 0 0 22px rgba(139,92,246,0.35) !important;
}

.bgg-review-score-inner {
	width: 100% !important;
	height: 100% !important;
	border-radius: 50% !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-direction: column !important;

	background: #12141c !important;
	border: 1px solid rgba(255,255,255,0.08) !important;
}

.bgg-review-score-inner strong {
	display: block !important;
	color: #ffffff !important;
	font-size: 24px !important;
	line-height: 1 !important;
	font-weight: 900 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.bgg-review-score-inner span {
	display: block !important;
	color: #aeb8d4 !important;
	font-size: 10px !important;
	line-height: 1 !important;
	font-weight: 800 !important;
	margin-top: 3px !important;
}

.bgg-review-info {
	min-width: 0 !important;
}

.bgg-review-info span {
	display: block !important;
	margin: 0 0 5px !important;
	padding: 0 !important;

	color: #a855f7 !important;
	font-size: 10px !important;
	line-height: 1.2 !important;
	letter-spacing: 1.8px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
}

.bgg-review-info h3 {
	display: block !important;
	margin: 0 0 7px !important;
	padding: 0 !important;

	color: #ffffff !important;
	font-size: 24px !important;
	line-height: 1.15 !important;
	font-weight: 850 !important;
}

.bgg-review-info em {
	display: inline-flex !important;
	align-items: center !important;

	margin: 0 !important;
	padding: 6px 10px !important;

	border-radius: 999px !important;
	background: rgba(139,92,246,0.18) !important;

	color: #c084fc !important;
	font-size: 10px !important;
	line-height: 1 !important;
	font-weight: 900 !important;
	font-style: normal !important;
	text-transform: uppercase !important;
}

.bgg-review-bars {
	display: grid !important;
	gap: 9px !important;
	width: 100% !important;
}

.bgg-review-bar-box {
	width: 100% !important;
	padding: 10px !important;
	border-radius: 13px !important;

	background: rgba(255,255,255,0.055) !important;
	border: 1px solid rgba(255,255,255,0.08) !important;
}

.bgg-review-bar-head {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.bgg-review-bar-head span {
	display: block !important;
	color: #ffffff !important;
	font-size: 12px !important;
	line-height: 1.2 !important;
	font-weight: 850 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.bgg-review-bar-head strong {
	display: block !important;
	color: #bcd5ff !important;
	font-size: 11px !important;
	line-height: 1.2 !important;
	font-weight: 850 !important;
	white-space: nowrap !important;
	margin: 0 !important;
	padding: 0 !important;
}

.bgg-review-bar {
	width: 100% !important;
	height: 7px !important;
	margin-top: 8px !important;
	border-radius: 999px !important;
	background: #07080d !important;
	overflow: hidden !important;
}

.bgg-review-bar i {
	display: block !important;
	height: 100% !important;
	border-radius: 999px !important;
	background: linear-gradient(90deg, #7c3aed, #c026d3, #22c55e) !important;
}

.bgg-review-user-bar i {
	background: linear-gradient(90deg, #38bdf8, #818cf8) !important;
}

.bgg-review-card-notes {
	grid-column: 1 / -1 !important;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 12px !important;
	width: 100% !important;
	text-align: left !important;
}

.bgg-review-card-note {
	min-width: 0 !important;
	padding: 12px 13px !important;
	border-radius: 16px !important;
	border: 1px solid rgba(255,255,255,0.08) !important;
	background: rgba(255,255,255,0.045) !important;
}

.bgg-review-card-note--pros {
	background: linear-gradient(180deg, rgba(93,226,140,0.12), rgba(255,255,255,0.04)) !important;
	border-color: rgba(93,226,140,0.24) !important;
}

.bgg-review-card-note--cons {
	background: linear-gradient(180deg, rgba(255,125,125,0.12), rgba(255,255,255,0.04)) !important;
	border-color: rgba(255,125,125,0.24) !important;
}

.bgg-review-card-note-title {
	display: block !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
	color: var(--bgg-review-text) !important;
	font-size: 12px !important;
	line-height: 1.1 !important;
	font-weight: 900 !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
}

.bgg-review-card-note-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid !important;
	gap: 7px !important;
}

.bgg-review-card-note-list li {
	position: relative !important;
	margin: 0 !important;
	padding: 0 0 0 16px !important;
	color: var(--bgg-review-text) !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
	font-weight: 700 !important;
}

.bgg-review-card-note-list li::before {
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	font-weight: 900 !important;
}

.bgg-review-card-note--pros .bgg-review-card-note-title,
.bgg-review-card-note--pros .bgg-review-card-note-list li::before {
	color: var(--bgg-review-pros) !important;
}

.bgg-review-card-note--pros .bgg-review-card-note-list li::before {
	content: "+" !important;
}

.bgg-review-card-note--cons .bgg-review-card-note-title,
.bgg-review-card-note--cons .bgg-review-card-note-list li::before {
	color: var(--bgg-review-cons) !important;
}

.bgg-review-card-note--cons .bgg-review-card-note-list li::before {
	content: "-" !important;
}

html:not(.king-night) .bgg-review-card {
	background:
		radial-gradient(circle at top left, rgba(124,58,237,0.12), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f6f7fb 100%) !important;
	border-color: rgba(16,24,40,0.10) !important;
	color: #475467 !important;
}

html:not(.king-night) .bgg-review-score-inner {
	background: #ffffff !important;
	border-color: rgba(16,24,40,0.10) !important;
}

html:not(.king-night) .bgg-review-score-inner strong,
html:not(.king-night) .bgg-review-info h3,
html:not(.king-night) .bgg-review-bar-head span {
	color: #101828 !important;
}

html:not(.king-night) .bgg-review-score-inner span {
	color: #667085 !important;
}

html:not(.king-night) .bgg-review-bar-box {
	background: rgba(17,24,39,0.045) !important;
	border-color: rgba(16,24,40,0.10) !important;
}

html:not(.king-night) .bgg-review-bar {
	background: #e5e7eb !important;
}

html:not(.king-night) .bgg-review-card-note {
	background: rgba(17,24,39,0.035) !important;
	border-color: rgba(16,24,40,0.10) !important;
}

html:not(.king-night) .bgg-review-card-note--pros {
	background: linear-gradient(180deg, rgba(22,163,74,0.10), rgba(17,24,39,0.02)) !important;
	border-color: rgba(22,163,74,0.18) !important;
}

html:not(.king-night) .bgg-review-card-note--cons {
	background: linear-gradient(180deg, rgba(239,68,68,0.08), rgba(17,24,39,0.02)) !important;
	border-color: rgba(239,68,68,0.18) !important;
}

.bgg-review-card {
	clear: both !important;
	float: none !important;
	font-family: "Segoe UI", Arial, sans-serif !important;
}

@media (max-width: 920px) {
	.bgg-review-card {
		grid-template-columns: 78px 1fr !important;
	}

	.bgg-review-bars {
		grid-column: 1 / -1 !important;
	}

	.bgg-review-card-notes {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 600px) {
	.bgg-review-card {
		grid-template-columns: 1fr !important;
		text-align: center !important;
	}

	.bgg-review-score-ring {
		margin: 0 auto !important;
	}

	.bgg-review-bar-head {
		text-align: left !important;
	}
}

.bgg-comment-rating {
	display: grid;
	gap: 10px;
	margin-top: 12px;
	padding: 12px;
	border: 1px solid var(--bgg-review-border);
	border-radius: 16px;
	background: transparent;
	box-shadow: none;
}

.bgg-comment-rating__head {
	display: grid;
	grid-template-columns: auto auto;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.bgg-comment-rating__label {
	display: block;
	margin: 0;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--bgg-review-text);
}

.bgg-comment-rating__hint {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 8px;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--bgg-review-muted);
	background: rgba(255, 255, 255, 0.04);
}

.bgg-comment-rating__options {
	display: grid;
	grid-template-columns: repeat(10, minmax(0, 1fr));
	gap: 6px;
}

.bgg-comment-rating__option {
	position: relative;
	cursor: pointer;
}

.bgg-comment-rating__option input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.bgg-comment-rating__option span {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 6px;
	border: 1px solid transparent;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.04);
	color: var(--bgg-review-text);
	font-size: 12px;
	font-weight: 850;
	transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

html.king-night .bgg-comment-rating {
	border: 0 !important;
	background-color: #101014;
	box-shadow: none;
}

html.king-night .bgg-comment-rating__label {
	color: #f5f7fb;
}

html.king-night .bgg-comment-rating__hint {
	background: #202024;
	color: #98a2b3;
}

html.king-night .bgg-comment-rating__option span {
	border-color: #202024;
	background: #202024;
	color: #f5f7fb;
}

html:not(.king-night) .bgg-comment-rating {
	border-color: rgba(16, 24, 40, 0.10);
	background: #ffffff;
}

html:not(.king-night) .bgg-comment-rating__label {
	color: #344054;
}

html:not(.king-night) .bgg-comment-rating__hint {
	background: #f2f4f7;
	color: #667085;
}

html:not(.king-night) .bgg-comment-rating__option span {
	border-color: rgba(16, 24, 40, 0.08);
	background: #f8fafc;
	color: #101828;
}

.bgg-comment-rating__option input:checked + span,
.bgg-comment-rating__option:hover span {
	border-color: transparent;
	background: linear-gradient(135deg, var(--bgg-review-accent), var(--bgg-review-accent-soft));
	color: #ffffff;
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(255, 148, 77, 0.18);
}

.bgg-comment-rating__option input:focus-visible + span {
	outline: 2px solid rgba(168, 85, 247, 0.42);
	outline-offset: 2px;
}

.bgg-review-edit-link {
	margin-left: 8px;
}

.king-night .comment-area,
.king-night .comments-area,
.king-night .site-footer,
.king-night .fatfooter,
.king-night .king-simple-post,
.king-night .post-author,
.king-night .single-boxes,
.king-night .ads-postpage,
.king-night .post-page .hentry,
.king-night .king-related .related-title,
.king-night .widget-title,
.king-night .widgettitle,
.king-night .widget .wp-block-group__inner-container > h2,
.king-night .fatfooter h2 {
	background-color: #101014 !important;
}

.king-night .widget-title,
.king-night .widgettitle,
.king-night .widget .wp-block-group__inner-container > h2,
.king-night .king-related .related-title,
.king-night .fatfooter h2,
.king-night .king-simple-post {
	border-color: #101014 !important;
}

.king-night .comment-form .form-submit .submit,
.king-night .king-reactions ul li label {
	background-color: #131820 !important;
	color: #ffffff !important;
}

@media (max-width: 767px) {
	.bgg-review-modal {
		padding: 10px;
	}

	.bgg-review-modal__dialog {
		padding: 16px;
	}

	.bgg-review-grid,
	.bgg-review-grid--notes {
		grid-template-columns: 1fr;
	}

	.bgg-comment-rating {
		gap: 8px;
		padding: 10px;
	}

	.bgg-comment-rating__options {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

