/*
 * Inline study toolbar for mapped explanation articles.
 *
 * Scoped entirely under `.radiology-study-toolbar`. The toolbar only ever adds
 * one block at the end of a `.re-question` section: it never changes the
 * article's own layout, visibility, anchors or navigation controls.
 */

.radiology-study-toolbar {
	--radst-ink: #203746;
	--radst-muted: #536875;
	--radst-accent: #176c70;
	--radst-line: #d7e3e6;
	--radst-bg: #f2f6f7;
	--radst-paper: #fff;
	--radst-focus: #c48626;
	--radst-radius: 8px;

	/*
	 * Semantic button colours on the muted-teal base. Each has a pale tint for
	 * the unselected state, a mid line that reads as a control boundary
	 * against the toolbar's own background, and a strong fill for the selected
	 * state. Verified against WCAG AA: white on every strong fill is >= 6.1:1,
	 * the ink on every tint is >= 11:1, and every line is >= 3:1 against the
	 * toolbar background. Colour is never the only signal -- the label text
	 * and aria-pressed change too.
	 */
	--radst-learned: #19684b;
	--radst-learned-line: #4f8f70;
	--radst-learned-tint: #eef6f1;
	--radst-review: #7d5410;
	--radst-review-line: #9c7c3c;
	--radst-review-tint: #fbf4e6;
	--radst-wrong: #8c3a44;
	--radst-wrong-line: #a56a73;
	--radst-wrong-tint: #fbf1f2;
	--radst-accent-line: #4f8a8d;
	--radst-accent-tint: #eef4f5;

	background: var(--radst-bg);
	border: 1px solid var(--radst-line);
	border-radius: var(--radst-radius);
	box-sizing: border-box;
	clear: both;
	color: var(--radst-ink);
	font-size: 16px;
	line-height: 1.85;
	margin: 16px 0 8px;
	max-width: 100%;
	padding: 12px;
}

.radiology-study-toolbar *,
.radiology-study-toolbar *::before,
.radiology-study-toolbar *::after {
	box-sizing: border-box;
}

.radiology-study-toolbar__title {
	font-size: 0.82em;
	font-weight: 700;
	letter-spacing: 0.02em;
	margin: 0 0 8px;
}

.radiology-study-toolbar__groups {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.radiology-study-toolbar__group {
	border: 0;
	margin: 0;
	min-width: 0;
	padding: 0;
}

.radiology-study-toolbar__legend {
	color: var(--radst-muted);
	font-size: 0.8em;
	font-weight: 700;
	margin: 0 0 4px;
	padding: 0;
}

.radiology-study-toolbar__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.radiology-study-toolbar__button {
	background: var(--radst-paper);
	border: 1px solid var(--radst-line);
	border-radius: var(--radst-radius);
	box-shadow: 0 1px 1px rgba(32, 55, 70, 0.06);
	color: var(--radst-ink);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font: inherit;
	font-size: 0.9em;
	gap: 6px;
	line-height: 1.4;
	min-height: 44px;
	min-width: 44px;
	padding: 8px 14px;
	position: relative;
	text-decoration: none;
	/*
	 * Short and restrained: enough to feel the press, never enough to move
	 * the surrounding article text.
	 *
	 * background-color is deliberately NOT animated. The label colour snaps
	 * to white the instant a button becomes selected, so easing the fill from
	 * the pale tint to the strong colour would leave white text on a pale
	 * background for the length of the transition -- about 1.1:1, unreadable,
	 * every single time. The fill changes in one step and the motion is
	 * carried by the shadow and a very small scale instead.
	 */
	transition: transform 120ms ease, box-shadow 120ms ease, border-color 140ms ease;
}

.radiology-study-toolbar__button:hover:not([disabled]) {
	border-color: var(--radst-accent-line);
	box-shadow: 0 3px 8px rgba(32, 55, 70, 0.16);
	transform: translateY(-1px);
}

/*
 * The press itself. `:active` covers the pointer; `.is-pressed` is added by
 * the script on Space and Enter, because `:active` does not fire for keyboard
 * activation. Both land on exactly the same rule, so the two feel identical.
 */
.radiology-study-toolbar__button:active:not([disabled]),
.radiology-study-toolbar__button.is-pressed:not([disabled]) {
	box-shadow: inset 0 1px 2px rgba(32, 55, 70, 0.2);
	transform: scale(0.97);
}

/*
 * Disabled here only ever means "a write for this panel is in flight", which
 * lasts a moment. Dimming with opacity would composite the fill with whatever
 * is behind it and wash out a white label on a selected button, so the state
 * is carried by the cursor, the busy ring and aria-busy instead of by fading
 * the control.
 */
.radiology-study-toolbar__button[disabled] {
	cursor: not-allowed;
	transform: none;
}

/*
 * A key press that has already started its write keeps looking pressed. The
 * button is disabled for the duration of that write, but the reader is still
 * holding the key, and the press that caused the write should not be undone by
 * it: press, saving and confirmation read as one continuous response.
 */
.radiology-study-toolbar__button.is-pressed[disabled] {
	box-shadow: inset 0 1px 2px rgba(32, 55, 70, 0.2);
	transform: scale(0.97);
}

/* --- icons ---------------------------------------------------------------
 *
 * A distinct mark per action, drawn from the set a Japanese reader already
 * reads as grading: maru for correct, batsu for wrong. The check belongs to
 * 理解した and the star to 要復習, so no two buttons share a mark and nothing
 * generic stands in for 間違えた. These are decoration: every button also
 * states its state in words.
 */
.radiology-study-toolbar__button--learned::before,
.radiology-study-toolbar__button--review::before,
.radiology-study-toolbar__button--correct::before,
.radiology-study-toolbar__button--incorrect::before {
	font-size: 1.05em;
	font-weight: 700;
	line-height: 1;
}

.radiology-study-toolbar__button--learned::before {
	content: "\2713";
}

.radiology-study-toolbar__button--review::before {
	content: "\2605";
}

.radiology-study-toolbar__button--correct::before {
	content: "\25CB";
}

.radiology-study-toolbar__button--incorrect::before {
	content: "\2715";
}

/* --- unselected: a subtle tint that still says which action it is -------- */

.radiology-study-toolbar__button--learned,
.radiology-study-toolbar__button--correct {
	background: var(--radst-learned-tint);
	border-color: var(--radst-learned-line);
}

.radiology-study-toolbar__button--learned::before,
.radiology-study-toolbar__button--correct::before {
	color: var(--radst-learned);
}

.radiology-study-toolbar__button--review {
	background: var(--radst-review-tint);
	border-color: var(--radst-review-line);
}

.radiology-study-toolbar__button--review::before {
	color: var(--radst-review);
}

.radiology-study-toolbar__button--incorrect {
	background: var(--radst-wrong-tint);
	border-color: var(--radst-wrong-line);
}

.radiology-study-toolbar__button--incorrect::before {
	color: var(--radst-wrong);
}

/* --- selected ------------------------------------------------------------
 *
 * Carried by three things at once: the fill, the icon, and the label, which
 * the script rewrites (理解した -> 理解済み, 正解だった -> 正解と記録済み).
 * aria-pressed carries it for assistive technology.
 */
.radiology-study-toolbar__button[aria-pressed="true"] {
	background: var(--radst-accent);
	border-color: var(--radst-accent);
	color: var(--radst-paper);
	font-weight: 700;
}

.radiology-study-toolbar__button[aria-pressed="true"]::before {
	color: var(--radst-paper);
}

.radiology-study-toolbar__button--learned[aria-pressed="true"],
.radiology-study-toolbar__button--correct[aria-pressed="true"] {
	background: var(--radst-learned);
	border-color: var(--radst-learned);
}

.radiology-study-toolbar__button--review[aria-pressed="true"] {
	background: var(--radst-review);
	border-color: var(--radst-review);
}

.radiology-study-toolbar__button--incorrect[aria-pressed="true"] {
	background: var(--radst-wrong);
	border-color: var(--radst-wrong);
}

/* --- saving --------------------------------------------------------------
 *
 * Shown while the request is actually in flight, on the button the reader
 * pressed. The panel also carries aria-busy and the status line says so in
 * words, so this is not the only indication.
 */
.radiology-study-toolbar__button.is-busy::after {
	animation: radst-spin 700ms linear infinite;
	border: 2px solid currentColor;
	border-radius: 50%;
	border-top-color: transparent;
	content: "";
	display: inline-block;
	height: 14px;
	opacity: 0.85;
	width: 14px;
}

@keyframes radst-spin {
	to {
		transform: rotate(360deg);
	}
}

/* --- confirmed -----------------------------------------------------------
 *
 * Added only after the server has stored the change. The steady ring is what
 * carries the confirmation; the animation only makes it arrive pleasantly, so
 * removing the animation for reduced motion loses nothing.
 */
.radiology-study-toolbar__button.is-saved {
	box-shadow: 0 0 0 3px rgba(25, 104, 75, 0.28);
}

.radiology-study-toolbar__button.is-saved:not([disabled]) {
	animation: radst-confirm 420ms ease-out;
}

@keyframes radst-confirm {
	0% {
		transform: scale(0.97);
	}

	45% {
		transform: scale(1.03);
	}

	100% {
		transform: scale(1);
	}
}

/* --- refused -------------------------------------------------------------
 *
 * The button keeps whatever state the server last confirmed; this only marks
 * that the attempt did not go through. No shake, no travel.
 */
.radiology-study-toolbar__button.is-error {
	border-color: var(--radst-wrong-line);
	box-shadow: 0 0 0 3px rgba(140, 58, 68, 0.22);
}

.radiology-study-toolbar__hint {
	color: var(--radst-muted);
	font-size: 0.78em;
	margin: 6px 0 0;
}

.radiology-study-toolbar__status {
	background: var(--radst-paper);
	border: 1px solid var(--radst-line);
	border-left: 4px solid var(--radst-accent);
	border-radius: var(--radst-radius);
	font-size: 0.82em;
	margin: 10px 0 0;
	padding: 6px 10px;
}

.radiology-study-toolbar__status:empty {
	display: none;
}

.radiology-study-toolbar__status[data-radst-state="error"] {
	border-left-color: #a4343a;
}

.radiology-study-toolbar__meta {
	color: var(--radst-muted);
	font-size: 0.78em;
	margin: 8px 0 0;
}

.radiology-study-toolbar__note {
	margin: 10px 0 0;
}

.radiology-study-toolbar__note[hidden] {
	display: none;
}

.radiology-study-toolbar__note-label {
	display: block;
	font-size: 0.82em;
	font-weight: 700;
	margin: 0 0 4px;
}

.radiology-study-toolbar__textarea {
	border: 1px solid var(--radst-line);
	border-radius: var(--radst-radius);
	color: var(--radst-ink);
	display: block;
	font: inherit;
	font-size: 0.92em;
	line-height: 1.7;
	min-height: 120px;
	padding: 10px;
	resize: vertical;
	width: 100%;
}

.radiology-study-toolbar__note-foot {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 8px 0 0;
}

.radiology-study-toolbar__counter {
	color: var(--radst-muted);
	font-size: 0.78em;
	margin: 0;
}

.radiology-study-toolbar__button--quiet {
	border-color: var(--radst-line);
	color: var(--radst-muted);
}

.radiology-study-toolbar__conflict {
	border-top: 1px dashed var(--radst-line);
	margin: 10px 0 0;
	padding-top: 10px;
}

.radiology-study-toolbar__conflict[hidden] {
	display: none;
}

.radiology-study-toolbar__server-note {
	background: var(--radst-paper);
	border: 1px solid var(--radst-line);
	border-radius: var(--radst-radius);
	font-size: 0.88em;
	margin: 8px 0 0;
	max-height: 14em;
	overflow: auto;
	padding: 10px;
	white-space: pre-wrap;
	word-break: break-word;
}

.radiology-study-toolbar__server-note[hidden] {
	display: none;
}

.radiology-study-toolbar__signin {
	margin: 0;
}

.radiology-study-toolbar__signin-text {
	color: var(--radst-muted);
	font-size: 0.85em;
	margin: 0 0 6px;
}

.radiology-study-toolbar__link {
	color: var(--radst-accent);
	font-size: 0.85em;
}

.radiology-study-toolbar a:focus-visible,
.radiology-study-toolbar button:focus-visible,
.radiology-study-toolbar textarea:focus-visible {
	outline: 3px solid var(--radst-focus);
	outline-offset: 2px;
}

.radiology-study-toolbar__sr {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

@media (min-width: 560px) {
	.radiology-study-toolbar__groups {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 16px;
	}

	.radiology-study-toolbar__group {
		flex: 0 1 auto;
	}
}

/*
 * Narrow screens: two buttons to a row, each free to shrink and wrap its own
 * label. min-width on the button is what guarantees the 44px target; min-width
 * 0 on the flex item is what stops a long selected label (要復習に登録済み)
 * from pushing the row wider than the toolbar.
 */
@media (max-width: 480px) {
	.radiology-study-toolbar__actions .radiology-study-toolbar__button {
		flex: 1 1 calc(50% - 4px);
		min-width: 0;
		padding: 8px 10px;
	}

	.radiology-study-toolbar__note-foot .radiology-study-toolbar__button {
		flex: 1 1 100%;
	}
}

/*
 * Reduced motion: no travel, no scaling, no spin. Everything the motion was
 * decorating is still said another way -- the busy ring stays visible, the
 * confirmation ring stays, aria-busy is still set and the status line still
 * reads 保存中… and then 学習記録を保存しました。
 */
@media (prefers-reduced-motion: reduce) {
	.radiology-study-toolbar__button,
	.radiology-study-toolbar__button:hover:not([disabled]),
	.radiology-study-toolbar__button:active:not([disabled]),
	.radiology-study-toolbar__button.is-pressed:not([disabled]) {
		transform: none;
		transition: none;
	}

	.radiology-study-toolbar__button.is-pressed[disabled] {
		transform: none;
	}

	.radiology-study-toolbar__button:active:not([disabled]),
	.radiology-study-toolbar__button.is-pressed {
		/* The press still reads, as an inset instead of a movement. */
		box-shadow: inset 0 1px 2px rgba(32, 55, 70, 0.22);
	}

	.radiology-study-toolbar__button.is-busy::after {
		animation: none;
	}

	.radiology-study-toolbar__button.is-saved:not([disabled]) {
		animation: none;
	}
}

/* ------------------------------------------------------------------ gate */

/*
 * Pre-consent block shown in place of a question's explanation.
 *
 * The explanation itself is not hidden by this stylesheet -- it is inside a
 * <template> and is not rendered at all until the reader asks for it. Nothing
 * here, and no animation below, can expose an answer before that.
 */

.radiology-study-gate {
	--radst-ink: #203746;
	--radst-muted: #536875;
	--radst-accent: #176c70;
	--radst-line: #d7e3e6;
	--radst-bg: #f2f6f7;
	--radst-paper: #fff;
	--radst-focus: #c48626;

	background: var(--radst-paper);
	border: 1px solid var(--radst-line);
	border-radius: 8px;
	box-sizing: border-box;
	color: var(--radst-ink);
	font-size: 16px;
	line-height: 1.85;
	margin: 12px 0;
	padding: 16px;
}

.radiology-study-gate__title {
	font-size: 1.05rem;
	font-weight: 700;
	margin: 0 0 8px;
}

.radiology-study-gate__source {
	margin: 0 0 8px;
}

.radiology-study-gate__links {
	list-style: none;
	margin: 0 0 12px;
	padding: 0;
}

.radiology-study-gate__links li {
	margin-bottom: 6px;
}

.radiology-study-gate__link {
	color: var(--radst-accent);
	display: inline-block;
	min-height: 44px;
	line-height: 44px;
}

.radiology-study-gate__note {
	color: var(--radst-muted);
	display: block;
	font-size: 0.85rem;
	line-height: 1.6;
}

.radiology-study-gate__ask {
	font-weight: 700;
	margin: 0 0 8px;
}

.radiology-study-gate__actions {
	margin: 0;
}

.radiology-study-gate__yes {
	background: var(--radst-accent);
	border: 1px solid var(--radst-accent);
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(32, 55, 70, 0.16);
	color: #fff;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	min-height: 44px;
	min-width: 96px;
	padding: 10px 24px;
	/* Motion is a short, restrained response to the pointer -- never travel
	   large enough to shift the surrounding text. */
	transition: transform 140ms ease, box-shadow 140ms ease, background-color 140ms ease;
}

.radiology-study-gate__yes:hover {
	background: #14595c;
	box-shadow: 0 4px 10px rgba(32, 55, 70, 0.22);
	transform: translateY(-1px);
}

/* :active covers the pointer; :focus-visible + .is-pressed covers the
   keyboard, so activation feels identical either way. */
.radiology-study-gate__yes:active,
.radiology-study-gate__yes.is-pressed {
	box-shadow: 0 1px 2px rgba(32, 55, 70, 0.18);
	transform: scale(0.97);
}

.radiology-study-gate__yes:focus-visible {
	outline: 3px solid var(--radst-focus);
	outline-offset: 2px;
}

/* --------------------------------------------------------------- reveal */

.radiology-study-revealed:focus,
.radiology-study-revealed [tabindex="-1"]:focus {
	outline: none;
}

.radiology-study-revealed--enter {
	opacity: 0;
	/* Small travel only: a long medical explanation must not slide far. */
	transform: translateY(4px);
}

.radiology-study-revealed--enter.radiology-study-revealed--in {
	opacity: 1;
	transform: none;
	transition: opacity 180ms ease, transform 180ms ease;
}

@media (prefers-reduced-motion: reduce) {
	.radiology-study-gate__yes,
	.radiology-study-gate__yes:hover,
	.radiology-study-gate__yes:active,
	.radiology-study-gate__yes.is-pressed {
		box-shadow: none;
		transform: none;
		transition: none;
	}

	.radiology-study-revealed--enter,
	.radiology-study-revealed--enter.radiology-study-revealed--in {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

@media (max-width: 480px) {
	.radiology-study-gate {
		padding: 12px;
	}

	.radiology-study-gate__yes {
		width: 100%;
	}
}

/* --------------------------------------------------------- related */

/*
 * Questions the owner's own articles link this one to. Shown only when the
 * stored result for this question is 間違えた.
 */

.radiology-study-toolbar__related {
	border-top: 1px solid var(--radst-line);
	margin-top: 12px;
	padding-top: 10px;
}

.radiology-study-toolbar__related[hidden] {
	display: none;
}

.radiology-study-toolbar__related-list {
	list-style: none;
	margin: 6px 0 0;
	padding: 0;
}

.radiology-study-toolbar__related-item {
	border-left: 3px solid var(--radst-line);
	margin-bottom: 8px;
	padding-left: 10px;
}

.radiology-study-toolbar__related-name {
	display: inline-block;
	font-size: 0.88em;
	font-weight: 700;
	min-height: 24px;
}

/* The link is a tap target in its own right on a narrow screen. */
.radiology-study-toolbar__related-item .radiology-study-toolbar__link {
	display: inline-block;
	font-weight: 700;
	line-height: 1.6;
	min-height: 44px;
	padding: 10px 0;
}

.radiology-study-toolbar__related-reason {
	color: var(--radst-muted);
	display: block;
	font-size: 0.82em;
	line-height: 1.7;
}

/* The official link reads as one action with its exact published title. */

.radiology-study-gate__link--official {
	display: inline-flex;
	flex-direction: column;
	gap: 2px;
	line-height: 1.6;
	padding: 8px 0;
}

.radiology-study-gate__cta {
	font-weight: 700;
}

.radiology-study-gate__official-title {
	color: var(--radst-muted);
	font-size: 0.85em;
}

/* Annual overview is enabled only by the reader's explicit button press. */
.radst-article-views{margin:20px 0 24px;padding:18px;background:#eff7f6;border:1px solid #d5e3e1;border-radius:10px}
.radst-article-views__label{font-weight:700;margin:0 0 10px!important}
.radst-article-views button{min-height:48px;margin:4px 8px 4px 0;padding:10px 16px;font-size:16px}
.radst-article-views button[aria-pressed=true]{background:#176c70!important;color:#fff!important}
.radst-article-views__note{font-size:14px;line-height:1.7;margin:10px 0 0!important;color:#455e63}
.radst-all-question-label{display:none}
.radst-view-all .radst-all-question-label{display:block}
.radst-view-all>.re-question-toolbar,.radst-view-all>.re-field-picker,.radst-view-all>.re-nuclear-gate,.radst-view-all .radst-bottom-navigation{display:none!important}
.re-study.radst-view-all .re-question[data-question],.re-nuclear-study.radst-view-all details.nuclear-question{display:block!important;margin-top:32px!important;padding-top:20px!important;border-top:1px solid #d5e3e1!important}
.re-study.radst-view-all [data-show][hidden]{display:inline-block!important}
.re-nuclear-study.radst-view-all details.nuclear-question>summary{display:none!important}
.radst-bottom-navigation{display:flex;justify-content:flex-end;margin:28px 0 12px}
.radst-bottom-navigation button{min-height:52px;min-width:210px;font-size:18px;padding:12px 24px}
.radst-bottom-navigation button:disabled{opacity:.65;cursor:default}
@media(max-width:540px){.radst-article-views button,.radst-bottom-navigation button{width:100%;margin:6px 0}}

/* Four peer actions: same outline, dimensions and alignment. */
.radst-article-views{padding:0;background:transparent;border:0;border-radius:0}
.radst-article-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}
.radst-article-views .radst-article-actions>button,.radst-article-views .radst-article-actions>details{width:100%!important;min-width:0!important;margin:0!important;border:2px solid #176c70!important;border-radius:6px!important;background:#fff!important;color:#176c70!important;box-sizing:border-box}
.radst-article-views .radst-article-actions>button{height:64px!important;padding:10px 12px!important;line-height:1.5!important;font-size:16px!important;font-weight:600!important;white-space:normal;cursor:pointer}
.radst-article-views .radst-article-actions>button[aria-pressed=true]{background:#eff7f6!important;color:#176c70!important;font-weight:700!important}
.radst-article-views .radst-article-actions>details>summary{display:flex!important;align-items:center;justify-content:center;gap:6px;height:60px!important;min-height:60px!important;margin:0!important;padding:10px 12px!important;border:0!important;border-radius:4px!important;background:#fff!important;color:#176c70!important;font-size:16px!important;font-weight:600!important;line-height:1.5!important;text-align:center;list-style:none!important;cursor:pointer;box-sizing:border-box}
.radst-article-actions>details>summary::-webkit-details-marker{display:none}
.radst-article-actions>details>summary:after{content:'⌄';font-size:18px}
.radst-article-actions>details[open]>summary:after{content:'⌃'}
.radst-article-actions>details[open]>.re-fields,.radst-article-actions>details[open]>.re-number-grid,.radst-article-actions>details[open]>.re-numbers{max-height:360px;overflow:auto;margin:0!important;padding:10px!important}
.re-nuclear-study .radst-article-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.radst-article-actions,.re-nuclear-study .radst-article-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.radst-article-views .radst-article-actions>button{height:72px!important}.radst-article-views .radst-article-actions>details>summary{height:68px!important;min-height:68px!important}}

/* Emphasize meaning without adding decorative colors. */
.radst-key-term{font-weight:700;}

/* Keep navigation available while reading, without a scroll listener. */
.re-study:not(.radst-view-all)>.re-question-toolbar,.re-nuclear-study:not(.radst-view-all)>.re-question-toolbar{position:sticky;top:8px;z-index:20;background:#fff;box-shadow:0 2px 5px rgba(23,70,74,.07);scroll-margin-top:12px;}
.admin-bar .re-study:not(.radst-view-all)>.re-question-toolbar,.admin-bar .re-nuclear-study:not(.radst-view-all)>.re-question-toolbar{top:40px;}
.radst-record-help{margin:10px 0;border-top:1px solid #e0e7e8;}
.radst-record-help>summary{min-height:44px;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;cursor:pointer;}
.radst-record-help>summary:before{content:'＋';color:#176c70;}
.radst-record-help[open]>summary:before{content:'−';}
.radst-record-help>p{margin:8px 0!important;}
@media(min-width:601px) and (max-width:782px){.admin-bar .re-study:not(.radst-view-all)>.re-question-toolbar,.admin-bar .re-nuclear-study:not(.radst-view-all)>.re-question-toolbar{top:54px;}}
@media(max-width:600px){.admin-bar .re-study:not(.radst-view-all)>.re-question-toolbar,.admin-bar .re-nuclear-study:not(.radst-view-all)>.re-question-toolbar{top:0;}}
/* Native offscreen rendering deferral; no observers, timers or hidden answers. */
@supports(content-visibility:auto){
 .radst-view-all .re-question[data-question],.radst-view-all details.nuclear-question{content-visibility:auto;contain-intrinsic-size:auto 1100px;}
}
@media print{.re-question-toolbar{position:static!important;} .radst-view-all .re-question[data-question],.radst-view-all details.nuclear-question{content-visibility:visible!important;contain-intrinsic-size:none!important;}}
