/**
 * 术数题库 · 国风答题界面（仅视觉层）
 * 跟全站主题：暖 = 米白金；红 = 绛红卷轴。不按术数混色。
 * 八卦：后天文王，南离上，不随主题改方位
 */

/* ── 暖色：米白宣纸 + 暖金，不要暗红 ── */
.exam-bank-view,
.exam-bank-modal-backdrop,
.exam-favorites-modal {
    --eb-paper: #f6f0e2;
    --eb-paper-deep: #efe4cc;
    --eb-accent: #a07f5b;
    --eb-accent-deep: #7a5c3c;
    --eb-gold: #c9a66a;
    --eb-gold-soft: rgba(201, 166, 106, 0.5);
    --eb-ink: #3a2b1a;
    --eb-muted: #8a7355;
    --eb-card-bg: #fffcf5;
    --eb-chip-idle: #f4ead6;
    --eb-option-line: rgba(160, 127, 91, 0.22);
    --eb-modal-w: min(92vw, 820px);
    --eb-modal-h: min(92vh, 900px);
    --eb-wing-w: clamp(132px, 15.5vw, 196px);
    --eb-art-pos: 48% 42%;
    --eb-art-filter: none;
    --eb-btn-bg: linear-gradient(180deg, #d4b888 0%, #a07f5b 100%);
    --eb-on-accent: #fffaf0;
    --eb-bagua-filter: drop-shadow(0 2px 8px rgba(80, 50, 20, 0.22));
    --eb-bagua-pad: transparent;
    --eb-modal-fill: color-mix(in srgb, var(--eb-paper) 62%, var(--eb-card-bg) 38%);
}

/* ── 暗红：淡绛纱 + 朱红卷轴，卡片半透明，不要一片死红 ── */
html.red .exam-bank-view,
html.red .exam-bank-modal-backdrop,
html.red .exam-favorites-modal,
html.theme-red .exam-bank-view,
html.theme-red .exam-bank-modal-backdrop,
html.theme-red .exam-favorites-modal {
    --eb-paper: #4a2c2a;
    --eb-paper-deep: #3a2220;
    --eb-accent: #a86a62;
    --eb-accent-deep: #7a4842;
    --eb-gold: #c4a090;
    --eb-gold-soft: rgba(196, 160, 144, 0.38);
    --eb-ink: #f6ece8;
    --eb-muted: #d4c0b8;
    --eb-card-bg: rgba(74, 44, 42, 0.38);
    --eb-chip-idle: rgba(120, 78, 72, 0.32);
    --eb-option-line: rgba(196, 160, 144, 0.28);
    --eb-art-pos: 70% 48%;
    --eb-art-filter: saturate(0.62) brightness(1.06) contrast(0.92);
    --eb-btn-bg: linear-gradient(180deg, rgba(168, 106, 98, 0.82) 0%, rgba(122, 72, 66, 0.78) 100%);
    --eb-on-accent: #fff8f4;
    --eb-bagua-filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.28)) saturate(0.65) brightness(1.05);
    --eb-modal-fill: color-mix(in srgb, #5a3834 36%, transparent);
}

/* ── 全屏舞台：装饰铺满视口，卡片居中圆角 ── */
.exam-bank-modal-wrap {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    overflow: hidden;
    z-index: 1;
}

.exam-bank-modal-backdrop > .exam-bank-modal-wrap > .exam-bank-modal {
    position: relative;
    z-index: 1;
    width: min(92vw, 820px) !important;
    max-width: min(92vw, 820px) !important;
    max-height: min(90vh, 900px) !important;
    margin: 0 !important;
    border-radius: 24px !important;
}

.exam-bank-modal-wrap[data-exam-rail="ivory"] {
    --eb-art-pos: 48% 42%;
}

.exam-bank-modal-wrap[data-exam-rail="crimson"] {
    --eb-art-pos: 70% 48%;
}

.exam-bank-scene {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    border-radius: 0;
}

.exam-bank-modal-backdrop[hidden] .exam-bank-scene {
    display: none !important;
}

.exam-bank-scene__wing {
    position: absolute;
    top: 0;
    height: 100%;
    width: auto;
    overflow: hidden;
}

.exam-bank-scene__wing--left {
    left: 0;
    right: 42%;
    mask-image: linear-gradient(90deg, #000 0%, #000 58%, transparent 100%);
    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 58%, transparent 100%);
}

.exam-bank-scene__wing--right {
    left: 42%;
    right: 0;
    mask-image: linear-gradient(270deg, #000 0%, #000 58%, transparent 100%);
    -webkit-mask-image: linear-gradient(270deg, #000 0%, #000 58%, transparent 100%);
}

.exam-bank-scene__wing::after {
    content: '';
    position: absolute;
    z-index: 1;
    top: 10%;
    bottom: 10%;
    width: 2px;
    border-radius: 999px;
    background: linear-gradient(
        180deg,
        transparent 0%,
        var(--eb-gold) 18%,
        var(--eb-gold) 82%,
        transparent 100%
    );
    opacity: 0.7;
    pointer-events: none;
}

.exam-bank-scene__wing--left::after {
    right: 22%;
}

.exam-bank-scene__wing--right::after {
    left: 22%;
}

.exam-bank-scene__paint {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-width: 0;
    object-fit: cover;
    object-position: var(--eb-art-pos);
    display: none;
    filter: var(--eb-art-filter);
}

.exam-bank-scene__wing--left .exam-bank-scene__paint {
    transform: scaleX(-1);
    transform-origin: center;
}

/* 暖：只出米白金山水；红：只出朱红卷轴 */
.exam-bank-scene__paint--ivory {
    display: block;
}

.exam-bank-scene__paint--crimson {
    display: none;
}

html.red .exam-bank-scene__paint--ivory,
html.theme-red .exam-bank-scene__paint--ivory {
    display: none !important;
}

html.red .exam-bank-scene__paint--crimson,
html.theme-red .exam-bank-scene__paint--crimson {
    display: block !important;
}

.exam-bank-scene__bagua {
    position: absolute;
    z-index: 2;
    top: 40%;
    width: clamp(64px, 6.5vw, 88px);
    height: auto;
    filter: var(--eb-bagua-filter);
    background: radial-gradient(circle, color-mix(in srgb, var(--eb-paper) 94%, var(--eb-card-bg) 6%) 50%, transparent 74%);
    border-radius: 50%;
    padding: 5px;
    box-sizing: content-box;
}

.exam-bank-scene__wing--left .exam-bank-scene__bagua {
    left: clamp(52px, 11vw, 128px);
    transform: translate(-50%, -50%);
}

.exam-bank-scene__wing--right .exam-bank-scene__bagua {
    left: auto;
    right: clamp(52px, 11vw, 128px);
    transform: translate(50%, -50%);
}

/* ── 弹层底 ── */
.hd-modal-backdrop.exam-bank-modal-backdrop {
    --exam-bank-page-bg: var(--eb-paper);
    overflow: hidden;
    place-items: stretch;
    align-items: stretch;
    justify-content: stretch;
    padding: 0 !important;
    width: 100%;
    height: 100%;
    background:
        radial-gradient(ellipse 70% 50% at 88% 82%, color-mix(in srgb, var(--eb-accent) 10%, transparent) 0%, transparent 70%),
        var(--eb-paper) !important;
}

.hd-modal-backdrop.exam-bank-modal-backdrop:not([hidden]) {
    display: grid !important;
}

.hd-modal-backdrop.exam-bank-modal-backdrop[hidden] {
    display: none !important;
}

html.red .hd-modal-backdrop.exam-bank-modal-backdrop,
html.theme-red .hd-modal-backdrop.exam-bank-modal-backdrop {
    background:
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(90, 48, 44, 0.28) 0%, transparent 70%),
        rgba(42, 24, 22, 0.22) !important;
}

.exam-bank-modal-backdrop::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    opacity: 0.32;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.08'/%3E%3C/svg%3E");
}

html.red .exam-bank-modal-backdrop::before,
html.theme-red .exam-bank-modal-backdrop::before {
    opacity: 0.18;
}

.hd-modal.exam-bank-modal {
    background: var(--eb-modal-fill) !important;
    border: 1px solid var(--eb-gold-soft) !important;
    border-radius: 24px !important;
    box-shadow:
        0 22px 56px color-mix(in srgb, var(--eb-accent-deep) 22%, transparent),
        inset 0 1px 0 color-mix(in srgb, var(--eb-on-accent) 35%, transparent) !important;
}

html.red .hd-modal.exam-bank-modal,
html.theme-red .hd-modal.exam-bank-modal {
    backdrop-filter: blur(18px) saturate(0.78);
    -webkit-backdrop-filter: blur(18px) saturate(0.78);
    color: #f7efe8 !important;
}

html.red .exam-bank-question,
html.theme-red .exam-bank-question {
    background: rgba(32, 18, 16, 0.78) !important;
}

html.red .exam-bank-option,
html.theme-red .exam-bank-option {
    background: rgba(48, 28, 26, 0.55) !important;
}

html.red .exam-bank-question__explain,
html.theme-red .exam-bank-question__explain,
html.red .exam-bank-pager,
html.theme-red .exam-bank-pager {
    background: rgba(28, 16, 14, 0.62) !important;
}

html.red .exam-bank-modal h2,
html.red .exam-bank-modal h3,
html.red .exam-bank-modal p,
html.red .exam-bank-modal span,
html.red .exam-bank-modal label,
html.red .exam-bank-modal .hd-lifebook-title,
html.red .exam-bank-paper__title,
html.red .exam-bank-question__title,
html.red .exam-bank-question__title-main,
html.red .exam-bank-question__stem,
html.red .exam-bank-question__meta,
html.red .exam-bank-question__pts,
html.red .exam-bank-question__tag,
html.red .exam-bank-question__verdict,
html.red .exam-bank-option__label,
html.red .exam-bank-stem-book,
html.red .exam-bank-view__sub,
html.red .exam-bank-setup__hint,
html.red .exam-bank-filter-group__label,
html.red .exam-bank-pager__progress,
html.red .exam-bank-pager__btn,
html.red .exam-bank-chip,
html.red .exam-bank-result,
html.theme-red .exam-bank-modal h2,
html.theme-red .exam-bank-modal h3,
html.theme-red .exam-bank-modal p,
html.theme-red .exam-bank-modal span,
html.theme-red .exam-bank-modal label,
html.theme-red .exam-bank-modal .hd-lifebook-title,
html.theme-red .exam-bank-paper__title,
html.theme-red .exam-bank-question__title,
html.theme-red .exam-bank-question__title-main,
html.theme-red .exam-bank-question__stem,
html.theme-red .exam-bank-question__meta,
html.theme-red .exam-bank-question__pts,
html.theme-red .exam-bank-question__tag,
html.theme-red .exam-bank-question__verdict,
html.theme-red .exam-bank-option__label,
html.theme-red .exam-bank-stem-book,
html.theme-red .exam-bank-view__sub,
html.theme-red .exam-bank-setup__hint,
html.theme-red .exam-bank-filter-group__label,
html.theme-red .exam-bank-pager__progress,
html.theme-red .exam-bank-pager__btn,
html.theme-red .exam-bank-chip,
html.theme-red .exam-bank-result {
    color: #f7efe8 !important;
}

html.red .exam-bank-question__title-main,
html.red .exam-bank-question__pts,
html.red .exam-bank-stem-book,
html.theme-red .exam-bank-question__title-main,
html.theme-red .exam-bank-question__pts,
html.theme-red .exam-bank-stem-book {
    color: #ffe8d6 !important;
}

html.red .exam-bank-chip--active,
html.theme-red .exam-bank-chip--active {
    color: #fff8f4 !important;
}

.exam-bank-modal::after {
    content: '';
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 8px;
    height: 7px;
    pointer-events: none;
    opacity: 0.32;
    background: repeating-linear-gradient(
        90deg,
        transparent 0,
        transparent 5px,
        var(--eb-gold) 5px,
        var(--eb-gold) 6px
    );
    mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}

/* ── 顶栏 ── */
.exam-bank-modal__head {
    padding: 0.55rem 1.05rem 0.15rem !important;
    flex-shrink: 0;
    align-items: center;
}

.exam-bank-modal__head .hd-lifebook-title,
.exam-bank-view__title {
    font-family: 'Noto Serif SC', 'STSong', 'SimSun', serif;
    font-weight: 700;
    letter-spacing: 0.14em;
    color: var(--eb-ink) !important;
}

.exam-bank-modal__head .hd-lifebook-title {
    font-size: 1.08rem !important;
}

.exam-bank-modal__head .hd-lifebook-head__text {
    position: relative;
    padding-left: 0.9rem;
}

.exam-bank-modal__head .hd-lifebook-head__text::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.2rem;
    bottom: 0.2rem;
    width: 3px;
    border-radius: 2px;
    background: var(--eb-accent);
}

.exam-bank-modal__head .hd-lifebook-close {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 1px solid color-mix(in srgb, var(--eb-gold) 55%, transparent);
    background: color-mix(in srgb, var(--eb-card-bg) 88%, transparent);
    color: var(--eb-muted);
    font-size: 1.25rem;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.2s ease, color 0.2s ease;
}

.exam-bank-modal__head .hd-lifebook-close:hover {
    border-color: var(--eb-accent);
    color: var(--eb-accent);
}

.exam-bank-view__sub,
.exam-bank-view__price-hint,
.exam-bank-setup__hint {
    color: var(--eb-muted) !important;
}

.exam-bank-modal .exam-bank-view__head {
    margin-bottom: 0.2rem;
}

.exam-bank-modal .exam-bank-view__sub {
    font-size: 0.75rem;
    line-height: 1.3;
}

.exam-bank-modal .exam-bank-view__price-hint {
    font-size: 0.65rem;
    opacity: 0.6;
}

/* ── 考纲标签 ── */
.exam-bank-filter-group__label,
.exam-bank-chip-group__label {
    color: var(--eb-muted);
    font-weight: 600;
    font-size: 0.78rem;
}

.exam-bank-modal .exam-bank-filter-group:first-child .exam-bank-filter-group__label {
    display: block;
    margin-bottom: 0.35rem;
}

.exam-bank-modal .exam-bank-filter-group:nth-child(2) .exam-bank-filter-group__label {
    display: block;
    margin-bottom: 0.35rem;
}

.exam-bank-chip {
    border: 1px solid color-mix(in srgb, var(--eb-gold) 42%, transparent) !important;
    background: var(--eb-chip-idle) !important;
    color: var(--eb-ink) !important;
    border-radius: 999px !important;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.exam-bank-chip:hover:not(.exam-bank-chip--active):not(:disabled) {
    border-color: var(--eb-accent) !important;
    background: color-mix(in srgb, var(--eb-chip-idle) 76%, var(--eb-card-bg) 24%) !important;
}

.exam-bank-chip--active {
    border-color: var(--eb-accent) !important;
    background: var(--eb-btn-bg) !important;
    color: var(--eb-on-accent) !important;
    font-weight: 600;
    box-shadow: 0 4px 14px color-mix(in srgb, var(--eb-accent) 28%, transparent);
}

.exam-bank-modal .exam-bank-setup {
    transition: opacity 0.2s ease;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-setup {
    display: none !important;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-view__head {
    display: none !important;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-modal__head {
    height: 0;
    min-height: 0;
    padding: 0 !important;
    position: relative;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .hd-menu-toggle--exam,
.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .hd-lifebook-head__text {
    display: none !important;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .hd-lifebook-close {
    position: absolute;
    top: 0.55rem;
    right: 0.65rem;
    z-index: 6;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-paper__title {
    margin: 0.15rem 0 0.85rem !important;
    font-size: 1.05rem;
    color: var(--eb-ink);
    justify-content: center;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-paper__title::before,
.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-paper__title::after {
    display: block;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-paper {
    padding-top: 0.15rem !important;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-question-list {
    gap: 1rem !important;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-question {
    padding: 0 1.05rem 1.05rem !important;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-question__title {
    margin: 0 -1.05rem 0.65rem !important;
    padding: 0.65rem 1.05rem 0.52rem;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-question__stem {
    margin-bottom: 0.65rem !important;
    font-size: 0.95rem;
    line-height: 1.62;
}

.exam-bank-modal:has(.exam-bank-paper:not([hidden])) .exam-bank-question__options {
    gap: 0.48rem;
}

.exam-bank-modal .exam-bank-filters {
    gap: 0.7rem;
    margin-bottom: 0.55rem;
}

.exam-bank-modal .exam-bank-chips {
    justify-content: flex-start;
}

.exam-bank-modal .exam-bank-setup__hint {
    font-size: 0.82rem;
    text-align: center;
    color: var(--eb-muted) !important;
    opacity: 0.88;
}

.exam-bank-modal .exam-bank-setup__actions {
    margin-top: 0.2rem;
    display: flex;
    justify-content: center;
}

.exam-bank-confirm-btn,
.exam-bank-submit-btn {
    min-width: min(280px, 88vw);
    padding: 0.7rem 2.4rem !important;
    font-family: 'Noto Serif SC', 'STSong', serif;
    letter-spacing: 0.12em;
    border: 1px solid color-mix(in srgb, var(--eb-gold) 70%, transparent) !important;
    background: var(--eb-btn-bg) !important;
    color: var(--eb-on-accent) !important;
    border-radius: 999px !important;
    box-shadow:
        0 8px 22px color-mix(in srgb, var(--eb-accent) 32%, transparent),
        inset 0 1px 0 rgba(255, 255, 255, 0.18);
    transition: transform 0.2s ease, filter 0.2s ease;
}

.exam-bank-confirm-btn:hover:not(:disabled),
.exam-bank-submit-btn:hover:not(:disabled) {
    transform: translateY(-1px);
    filter: brightness(1.05);
}

.exam-bank-confirm-btn:disabled,
.exam-bank-submit-btn:disabled {
    opacity: 0.42 !important;
    box-shadow: none !important;
}

/* ── 内层 ── */
.exam-bank-view {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    position: relative;
}

.exam-bank-modal .exam-bank-view {
    padding-left: 0.2rem;
    padding-right: 0.2rem;
}

.exam-bank-paper {
    border-top: none !important;
    padding-top: 0.3rem !important;
}

.exam-bank-paper__title {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-family: 'Noto Serif SC', 'STKaiti', 'KaiTi', serif;
    color: var(--eb-ink);
    font-size: 0.95rem;
    font-weight: 700;
    margin-bottom: 0.7rem !important;
}

.exam-bank-paper__title::before,
.exam-bank-paper__title::after {
    content: '';
    flex: 1 1 auto;
    height: 0;
    border-bottom: 1px dashed color-mix(in srgb, var(--eb-gold) 55%, transparent);
}

.exam-bank-pager {
    background: color-mix(in srgb, var(--eb-paper-deep) 75%, var(--eb-card-bg) 25%) !important;
    border: 1px solid color-mix(in srgb, var(--eb-gold) 28%, transparent) !important;
    border-radius: 999px !important;
}

.exam-bank-pager__btn {
    border: 1px solid color-mix(in srgb, var(--eb-gold) 45%, transparent) !important;
    background: color-mix(in srgb, var(--eb-card-bg) 92%, var(--eb-paper) 8%) !important;
    color: var(--eb-ink) !important;
}

.exam-bank-pager__btn:hover:not(:disabled) {
    border-color: var(--eb-accent) !important;
}

.exam-bank-question-list {
    gap: 0.85rem !important;
}

.exam-bank-question {
    border: 1px solid color-mix(in srgb, var(--eb-gold) 48%, transparent) !important;
    border-radius: 14px !important;
    padding: 0 0.9rem 0.8rem !important;
    overflow: hidden;
    background: var(--eb-card-bg) !important;
    box-shadow: 0 4px 16px rgba(61, 46, 34, 0.05);
}

.exam-bank-question__title {
    font-family: 'Noto Serif SC', 'STSong', serif;
    color: var(--eb-ink);
    margin: 0 -0.9rem 0.55rem !important;
    padding: 0.55rem 0.9rem 0.48rem;
    align-items: center !important;
    flex-wrap: nowrap;
    gap: 0.3rem;
    background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--eb-gold) 34%, var(--eb-card-bg) 66%) 0%,
        color-mix(in srgb, var(--eb-gold) 12%, var(--eb-card-bg) 88%) 46%,
        transparent 78%
    );
}

.exam-bank-question__title-main {
    flex: 1 1 auto;
    min-width: 0;
    font-weight: 700;
    font-size: 0.86rem;
    color: var(--eb-accent);
}

.exam-bank-question__meta {
    flex: 0 0 auto;
    font-size: 0.72rem;
    font-weight: 500;
    color: var(--eb-muted);
    white-space: nowrap;
    font-family: system-ui, -apple-system, 'Segoe UI', sans-serif;
}

.exam-bank-stem-book {
    color: var(--eb-accent);
    font-weight: 600;
}

.exam-bank-question__tag {
    background: color-mix(in srgb, var(--eb-gold) 22%, var(--eb-card-bg) 78%) !important;
    color: var(--eb-accent-deep) !important;
    border-radius: 999px !important;
    padding: 0.12rem 0.5rem !important;
    font-size: 0.68rem !important;
    font-weight: 600;
    border: 1px solid color-mix(in srgb, var(--eb-gold) 35%, transparent);
}

.exam-bank-question__pts {
    color: var(--eb-gold) !important;
    margin-left: 0.35rem;
    font-weight: 600;
}

.exam-bank-question__stem {
    color: var(--eb-ink) !important;
    font-weight: 500;
    line-height: 1.55 !important;
    font-size: 0.88rem;
    margin-bottom: 0.45rem !important;
}

.exam-bank-question--classic .exam-bank-question__stem {
    font-family: 'Noto Serif SC', 'STKaiti', serif;
}

.exam-bank-option {
    position: relative;
    border: 1px solid var(--eb-option-line) !important;
    border-radius: 10px !important;
    background: var(--eb-card-bg) !important;
    padding: 0.42rem 1.85rem 0.42rem 0.55rem !important;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.exam-bank-option::after {
    content: '';
    position: absolute;
    right: 0.55rem;
    top: 50%;
    width: 0.52rem;
    height: 0.52rem;
    margin-top: -0.26rem;
    border-radius: 50%;
    border: 1.5px solid color-mix(in srgb, var(--eb-muted) 45%, #fff 55%);
    background: transparent;
}

.exam-bank-option:has(.exam-bank-option__input:checked)::after {
    background: var(--eb-accent);
    border-color: var(--eb-accent);
}

.exam-bank-modal-backdrop[data-exam-theme="ziwei"] .exam-bank-option,
.exam-bank-modal-backdrop[data-exam-theme="qizheng"] .exam-bank-option {
    border-radius: 999px !important;
    padding-right: 0.7rem !important;
}

.exam-bank-modal-backdrop[data-exam-theme="ziwei"] .exam-bank-option::after,
.exam-bank-modal-backdrop[data-exam-theme="qizheng"] .exam-bank-option::after {
    display: none;
}

.exam-bank-option:hover:not(:has(.exam-bank-option__input:disabled)) {
    background: color-mix(in srgb, var(--eb-paper-deep) 55%, var(--eb-card-bg) 45%) !important;
}

.exam-bank-option:has(.exam-bank-option__input:checked):not(.exam-bank-option--correct):not(.exam-bank-option--wrong) {
    border-color: var(--eb-accent) !important;
    background: color-mix(in srgb, var(--eb-accent) 12%, var(--eb-card-bg) 88%) !important;
}

.exam-bank-option__input {
    appearance: none;
    -webkit-appearance: none;
    width: 1rem;
    height: 1rem;
    margin-top: 0.15rem !important;
    border: 1.5px solid color-mix(in srgb, var(--eb-muted) 55%, transparent);
    border-radius: 50%;
    background: var(--eb-card-bg);
    flex-shrink: 0;
}

.exam-bank-option__input:checked {
    border-color: var(--eb-accent);
    background: radial-gradient(circle at center, var(--eb-accent) 0%, var(--eb-accent) 42%, var(--eb-card-bg) 46%);
}

.exam-bank-option__label {
    color: var(--eb-ink);
    font-size: 0.84rem;
    line-height: 1.45;
}

.exam-bank-fav-btn {
    color: rgba(122, 102, 84, 0.65) !important;
    border: 1px solid transparent;
    border-radius: 8px;
}

.exam-bank-fav-btn:hover {
    color: var(--eb-accent) !important;
}

.exam-bank-fav-btn--active {
    color: var(--eb-on-accent) !important;
    background: var(--eb-accent) !important;
    border-color: var(--eb-accent) !important;
}

.exam-bank-question__explain {
    background: color-mix(in srgb, var(--eb-paper-deep) 65%, var(--eb-card-bg) 35%) !important;
    border: 1px solid color-mix(in srgb, var(--eb-gold) 22%, transparent);
}

.exam-bank-result {
    border: 1px solid color-mix(in srgb, var(--eb-gold) 35%, transparent);
    border-radius: 12px;
    background: var(--eb-card-bg);
}

@media (min-width: 992px) {
    .exam-bank-modal .hd-menu-toggle--exam {
        display: none;
    }

    .exam-bank-modal-backdrop {
        align-items: stretch;
        justify-content: stretch;
        place-items: stretch;
        padding: 0 !important;
    }

    #examBankModalBackdrop .exam-bank-modal,
    #examBankModalBackdrop .hd-modal--exam-bank {
        width: min(92vw, 820px) !important;
        margin-right: 0 !important;
        border-radius: 24px !important;
        overflow: hidden !important;
    }
}

@media (max-width: 991px) {
    .exam-bank-scene {
        display: none;
    }

    .exam-bank-modal-wrap {
        width: 100%;
        height: 100%;
        max-width: 100%;
        max-height: none;
        border-radius: 0;
        box-shadow: none;
        transform: none;
    }

    .exam-bank-modal {
        border-radius: 0 !important;
    }

    .exam-bank-option {
        min-height: 2.75rem;
        align-items: center;
    }
}

body.view-exam-bank-page .main-inner.view-exam-bank {
    background: var(--eb-paper, #f8f1e4);
    position: relative;
}

body.view-exam-bank-page #examBankView.exam-bank-view {
    position: relative;
    z-index: 1;
}
