/* Quiz Builder – front-end styles (values come from CSS variables set in Settings) */
.qb-quiz {
	--qb-bg: #ffebcc;
	--qb-text: #333;
	--qb-box-bg: #2e9e44;
	--qb-box-border: #555;
	--qb-tick: #fff;
	--qb-font: Georgia, "Times New Roman", serif;
	--qb-fs: 18px;
	--qb-img: 40px;
	--qb-box: 26px;
	--qb-pad: 24px;
	--qb-gap: 14px;
	--qb-radius: 8px;

	background: var(--qb-bg);
	color: var(--qb-text);
	font-family: var(--qb-font);
	font-size: var(--qb-fs);
	padding: var(--qb-pad);
	border-radius: var(--qb-radius);
	margin: 1.5em 0;
	box-sizing: border-box;
}

.qb-quiz ol {
	list-style: none;
	margin: 0;
	padding: 0;
	counter-reset: qb;
}

.qb-quiz li {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 var(--qb-gap);
	padding: 0;
	counter-increment: qb;
	cursor: pointer;
	-webkit-user-select: none;
	user-select: none;
}

.qb-quiz li:last-child {
	margin-bottom: 0;
}

.qb-quiz li:not(.qb-has-num)::before {
	content: counter(qb) ".";
	min-width: 1.6em;
	flex: 0 0 auto;
}

/* Box: hamesha white, click par color + tick ek sath */
.qb-check {
	flex: 0 0 auto;
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	width: var(--qb-box);
	height: var(--qb-box);
	background: #fff;
	border: 2px solid var(--qb-box-border);
	border-radius: 6px;
	transition: background-color 0.12s ease;
}

.qb-check.qb-checked {
	background: var(--qb-box-bg);
}

/* Seedha, bold tick (CSS se bana, font par depend nahi) */
.qb-check.qb-checked::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 46%;
	width: 28%;
	height: 54%;
	box-sizing: border-box;
	border: solid var(--qb-tick);
	border-width: 0 max(3px, calc(var(--qb-box) * 0.13)) max(3px, calc(var(--qb-box) * 0.13)) 0;
	transform: translate(-50%, -50%) rotate(45deg);
}

.qb-check:focus-visible {
	outline: 2px solid var(--qb-box-border);
	outline-offset: 2px;
}

.qb-thumb {
	flex: 0 0 auto;
	width: var(--qb-img);
	height: var(--qb-img);
	object-fit: cover;
	border-radius: 4px;
	display: block;
}

.qb-text {
	flex: 1 1 auto;
}

/* ---- v1.2: numbering styles + custom number ---- */
.qb-quiz.qb-num-upper-alpha li:not(.qb-has-num)::before { content: counter(qb, upper-alpha) "."; }
.qb-quiz.qb-num-lower-alpha li:not(.qb-has-num)::before { content: counter(qb, lower-alpha) "."; }
.qb-quiz.qb-num-upper-roman li:not(.qb-has-num)::before { content: counter(qb, upper-roman) "."; }
.qb-quiz.qb-num-lower-roman li:not(.qb-has-num)::before { content: counter(qb, lower-roman) "."; }
.qb-quiz.qb-num-none li::before { display: none; }

/* jab user apna number likhe to automatic number hat jata hai */
.qb-quiz li.qb-has-num::before {
	content: none !important;
	display: none !important;
}

.qb-num {
	flex: 0 0 auto;
	min-width: 1.6em;
}

/* "Edit quiz" button (sirf editor mein nazar aata hai) */
.qb-quiz .qb-edit-btn,
.qb-result .qb-edit-btn {
	display: block;
	margin: 16px 0 0;
	padding: 6px 14px;
	border: 1px solid #1e1e1e;
	border-radius: 4px;
	background: #ffc107;
	color: #1e1e1e;
	font-size: 13px;
	font-family: sans-serif;
	cursor: pointer;
}

/* ---- v1.3: Result block ---- */
.qb-result {
	--qb-rsize: 90px;
	--qb-btn-bg: #d0f5d8;
	--qb-btn-text: #000;
	text-align: center;
	margin: 1.5em 0;
}

.qb-result .qb-r-heading { margin: 0 0 0.4em; }
.qb-result .qb-r-desc { margin: 0 0 1em; }
.qb-result .qb-r-top,
.qb-result .qb-r-bottom { margin: 1.2em 0; }
.qb-result .qb-r-ask { margin: 1em 0; }

.qb-result .qb-r-calc,
.qb-result .qb-r-again {
	display: inline-block;
	padding: 12px 28px;
	border: 2px solid #111;
	border-radius: 999px;
	background: var(--qb-btn-bg);
	color: var(--qb-btn-text);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	line-height: 1.2;
	cursor: pointer;
	-webkit-user-select: none;
	user-select: none;
}

.qb-result .qb-r-calc:focus-visible,
.qb-result .qb-r-again:focus-visible {
	outline: 3px solid #1e1e1e;
	outline-offset: 2px;
}

/* Result number: calculate dabane ke baad dikhta hai */
.qb-result .qb-r-out { display: none; }
.qb-result.qb-done .qb-r-out { display: block; }
.qb-result.qb-done .qb-r-ask { display: none; }

.qb-result .qb-r-label {
	margin: 0.6em 0 0;
	font-size: 1.5em;
	font-weight: bold;
}

.qb-result .qb-r-score {
	margin: 0.15em 0;
	font-size: var(--qb-rsize);
	font-weight: bold;
	line-height: 1.1;
}

.qb-result .qb-r-meaning {
	margin: 0 0 0.9em;
	font-size: 1.3em;
}

.qb-result .qb-r-meaning:empty { display: none; }

/* Score guide table */
.qb-result .qb-r-guide table {
	width: 100%;
	margin: 1.2em 0 0;
	border-collapse: collapse;
	text-align: left;
}

.qb-result .qb-r-guide th,
.qb-result .qb-r-guide td {
	padding: 14px 18px;
	border: 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.14);
	background: transparent;
}

.qb-result .qb-r-guide th { font-weight: bold; }

.qb-result .qb-r-note {
	margin: 0.8em 0 0;
	font-size: 12px;
	font-style: italic;
	opacity: 0.7;
}

/* ---- v1.4: do buttons ek row mein (Calculate + Clear, Test Again + Share) + share panel ---- */
.qb-result .qb-r-ask,
.qb-result .qb-r-again-wrap {
	display: flex;
	gap: 14px;
	justify-content: center;
	margin: 1em 0;
}

.qb-result .qb-r-clear,
.qb-result .qb-r-share {
	padding: 12px 28px;
	border: 2px solid #111;
	border-radius: 999px;
	background: var(--qb-btn-bg);
	color: var(--qb-btn-text);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	line-height: 1.2;
	cursor: pointer;
	-webkit-user-select: none;
	user-select: none;
}

.qb-result .qb-r-clear:focus-visible,
.qb-result .qb-r-share:focus-visible {
	outline: 3px solid #1e1e1e;
	outline-offset: 2px;
}

.qb-result .qb-r-calc,
.qb-result .qb-r-clear,
.qb-result .qb-r-again,
.qb-result .qb-r-share {
	display: block;
	flex: 1 1 0;
	box-sizing: border-box;
	text-align: center;
}

.qb-result .qb-r-sharebox {
	display: none;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	margin: 0 0 1em;
}

.qb-result .qb-r-sharebox.qb-open { display: flex; }

.qb-result .qb-r-sharebox a,
.qb-result .qb-r-sharebox .qb-r-sharelink {
	padding: 8px 18px;
	border: 2px solid #111;
	border-radius: 999px;
	background: #fff;
	color: #111;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 15px;
	text-decoration: none;
	cursor: pointer;
}

@media (max-width: 520px) {
	.qb-result .qb-r-ask,
	.qb-result .qb-r-again-wrap {
		flex-direction: column;
	}
}

/* ---- v1.6: "/ total" aur rich description ---- */
.qb-result .qb-r-total {
	font-size: 0.4em;
	font-weight: normal;
	opacity: 0.75;
	white-space: nowrap;
}

.qb-result .qb-r-rich { margin: 0 0 1em; }
.qb-result .qb-r-rich > :first-child { margin-top: 0; }
.qb-result .qb-r-rich p { margin: 0 0 0.8em; }
.qb-result .qb-r-rich h2,
.qb-result .qb-r-rich h3,
.qb-result .qb-r-rich h4 { margin: 0.6em 0 0.4em; }
.qb-result .qb-r-rich ul,
.qb-result .qb-r-rich ol {
	display: inline-block;
	margin: 0 0 0.8em;
	padding-left: 1.4em;
	text-align: left;
}
