/* 目标站 sinvirtue QuizView（data-v-64ab1c93）1:1 迁移，根类名改为 .svq 以免与旧 .sv-quiz 冲突 */
.sv-app .assessment-main,.assessment-sinvirtue .assessment-main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;}
@keyframes svq-pulse{50%{opacity:.45}}
.svq .svq-btn{font:inherit;cursor:pointer}
.svq a.svq-btn{text-decoration:none}
.svq .option input{position:absolute;opacity:0;pointer-events:none}
.svq .option{cursor:pointer}
.svq{--paper: #f8f4ea; --ink: #25221e; --gold: #aa8b4d; --line: rgba(166, 132, 72, 0.38); --emerald: #1f5a4d; --wine: #772f34; min-height: 100vh; color: var(--ink); background: radial-gradient(circle at 20% 20%, rgba(178, 145, 83, 0.08), transparent 30%), repeating-linear-gradient(45deg, rgba(151, 127, 87, 0.018) 0 1px, transparent 1px 5px), var(--paper); font-family: "Noto Serif SC", "Songti SC", "STSong", serif;}
.svq__nav{display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 68px; padding: 0 42px; border-bottom: 1px solid var(--line);}
.svq__nav > .svq-btn{justify-self: start; width: 42px; height: 42px; padding: 0; color: #8f7547; background: transparent; border: 0; font-size: 27px;}
.svq__nav > .svq-t{display: flex; gap: 12px; align-items: center; font-size: 22px; letter-spacing: 0.12em;}
.svq__nav > .svq-t i{width: 65px; height: 1px; background: var(--line);}
.svq .save-state{display: flex; gap: 8px; align-items: center; justify-self: end; color: #927e57; font-size: 14px;}
.svq .save-state span{display: grid; width: 18px; height: 18px; place-items: center; color: #fff; background: var(--emerald); border-radius: 50%; font-size: 11px;}
.svq .save-state span.saving{background: var(--gold); animation: svq-pulse 1s infinite;}
.svq__layout{display: grid; grid-template-columns: minmax(280px, 390px) minmax(0, 900px) 44px; justify-content: center; gap: 24px; width: min(1510px, 100% - 72px); margin: 30px auto 24px;}
.svq__aside,.svq .sv-question{border: 1px solid var(--line); background: rgba(255, 253, 248, 0.76); box-shadow: 0 12px 34px rgba(91, 67, 34, 0.05);}
.svq__aside{position: relative; min-height: 760px; padding: 52px 28px 22px; overflow: hidden; text-align: center; box-sizing: border-box;}
.svq .chapter{margin: 0; color: #8b7041; font-size: 21px; letter-spacing: 0.08em;}
.svq .count{display: flex; align-items: baseline; justify-content: center; margin: 32px 0 9px;}
.svq .count strong{font-size: 64px; font-weight: 400;}
.svq .count span{font-size: 26px;}
.svq .progress{position: relative; display: block; overflow: visible; height: 8px; background: #e6ddcf; border-radius: 9px;}
.svq .progress i{display: block; height: 100%; background: linear-gradient(90deg, var(--wine), #ad874b, var(--emerald)); border-radius: inherit;}
.svq .progress b{position: absolute; top: 50%; color: var(--gold); transform: translate(-50%, -50%);}
.svq__aside > small{display: block; margin-top: 8px; color: #9a7b47; text-align: right;}
.svq .stage-dots{display: none;}
.svq .character-wrap{position: relative; height: 480px; margin-top: 5px;}
.svq .character-wrap .web{position: absolute; inset: 60px 16px 45px; color: rgba(166, 132, 72, 0.28); background: repeating-radial-gradient(circle at 50% 50%, transparent 0 40px, currentColor 41px 42px), repeating-conic-gradient(currentColor 0deg 1deg, transparent 1deg 30deg); clip-path: polygon(50% 0, 93% 20%, 100% 66%, 76% 100%, 24% 100%, 0 66%, 7% 20%);}
.svq .character-wrap img{position: relative; z-index: 1; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply;}
.svq .aside-tip{position: relative; z-index: 2; margin: 0; color: #826f51; font-size: 13px;}
.svq .sv-question{min-height: 760px; padding: 47px 48px 30px; box-sizing: border-box;}
.svq .question-no{margin: 0; color: #9a7a43; text-align: center; font-size: 18px; letter-spacing: 0.16em;}
.svq .sv-question h1{max-width: 760px; min-height: 92px; margin: 25px auto 14px; font-size: 30px; font-weight: 500; line-height: 1.55; text-align: center;}
.svq .prompt{margin: 0 auto 23px; color: #927e65; text-align: center; font-size: 14px;}
.svq .options{display: grid; gap: 13px;}
.svq .option{position: relative; display: grid; width: 100%; margin: 0; box-sizing: border-box; grid-template-columns: 42px 1fr 32px; align-items: center; min-height: 68px; padding: 10px 18px; color: #36312b; text-align: left; background: rgba(255, 255, 255, 0.56); border: 1px solid var(--line); border-radius: 3px; box-shadow: inset 0 0 0 3px rgba(170, 139, 77, 0.025);}
.svq .option::before,.svq .option::after{content: ""; position: absolute; width: 11px; height: 11px; border-color: rgba(166, 132, 72, 0.34);}
.svq .option::before{top: 4px; left: 4px; border-top: 1px solid; border-left: 1px solid;}
.svq .option::after{right: 4px; bottom: 4px; border-right: 1px solid; border-bottom: 1px solid;}
.svq .option-index{display: grid; width: 27px; height: 27px; place-items: center; color: #9a7b47; border: 1px solid rgba(166, 132, 72, 0.48); border-radius: 50%; font-size: 13px;}
.svq .option > .svq-t{font-size: 18px;}
.svq .option.selected{color: var(--emerald); background: rgba(31, 90, 77, 0.05); border: 2px solid rgba(31, 90, 77, 0.72);}
.svq .check{display: grid; width: 27px; height: 27px; place-items: center; color: #fff; background: var(--emerald); border-radius: 50%;}
.svq .question-actions{display: grid; grid-template-columns: 160px 1fr auto; gap: 18px; align-items: center; margin-top: 28px;}
.svq .question-actions .primary{min-width: 180px;}
.svq .question-actions .svq-btn{position: relative; display: grid; width: 100%; min-height: 52px; margin: 0; padding: 0 42px; box-sizing: border-box; place-items: center; border: 1px solid var(--line); border-radius: 2px;}
.svq .question-actions .action-label{display: block; width: 100%; line-height: 1.2; text-align: center;}
.svq .question-actions .action-arrow{position: absolute; top: 50%; line-height: 1; transform: translateY(-50%);}
.svq .question-actions .action-arrow--left{left: 20px;}
.svq .question-actions .action-arrow--right{right: 20px;}
.svq .question-actions [disabled],.svq .question-actions .primary.is-pending{opacity: 0.4;}
.svq .question-actions .secondary{color: #584f43; background: #fffdf8;}
.svq .question-actions .primary{color: #fffaf0; background: linear-gradient(135deg, #b09052, #96733b); box-shadow: inset 0 0 0 3px rgba(255, 255, 255, 0.14);}
.svq .question-actions p{color: #9a8a73; text-align: center; font-size: 12px;}
.svq .mobile-saved{display: none;}
.svq .question-index{display: flex; flex-direction: column; gap: 10px; align-items: center; justify-content: center; padding: 0; color: #8b7858; background: transparent; border: 0; border-left: 1px solid var(--line); writing-mode: vertical-rl; font-size: 13px; letter-spacing: 0.2em;}
.svq .question-index .svq-t{font-size: 19px;}
.svq footer{display: flex; padding: 17px; flex-direction: column; align-items: center; gap: 8px; color: #837565; border-top: 1px solid rgba(166, 132, 72, 0.24); font-size: 13px;}
.svq .foot-line{display: flex; gap: 16px; align-items: center; justify-content: center;}
.svq .foot-paytip{color: #8c7959; text-align: center; font-size: 12px; line-height: 1.8;}
.svq .foot-record{display: flex; gap: 4px 14px; flex-wrap: wrap; justify-content: center; color: #9a9184; text-align: center; font-size: 11px; line-height: 1.8;}
.svq footer i{width: 33%; height: 1px; background: linear-gradient(90deg, transparent, var(--line));}
.svq footer i:last-child{transform: scaleX(-1);}
@media (max-width: 900px){.svq__nav{grid-template-columns: 42px 1fr 60px; min-height: 58px; padding: 0 10px;}
.svq__nav > .svq-t{justify-content: center; font-size: 15px; letter-spacing: 0.06em;}
.svq__nav > .svq-t i{width: 24px;}
.svq .save-state{font-size: 12px;}
.svq .save-state span{display: none;}
.svq__layout{display: flex; width: 100%; margin: 0; flex-direction: column; gap: 0;}
.svq__aside{display: block; width: 100%; min-height: 252px; padding: 22px 22px 0; border: 0; border-bottom: 0; text-align: left;}
.svq .chapter{font-size: 16px;}
.svq .count{position: relative; z-index: 2; justify-content: flex-start; margin: 11px 0 5px;}
.svq .count strong{font-size: 50px;}
.svq .count span{font-size: 18px;}
.svq .progress{display: none;}
.svq__aside > small{display: none;}
.svq .stage-dots{position: relative; z-index: 3; display: flex; gap: 0; align-items: center; width: 62%; margin-top: 13px;}
.svq .stage-dots i{width: 13px; height: 13px; background: #ece4d6; border: 1px solid #b8a486; border-radius: 50%;}
.svq .stage-dots i + i{margin-left: calc((100% - 78px) / 5);}
.svq .stage-dots::before{content: ""; position: absolute; z-index: -1; right: 0; left: 0; height: 1px; background: var(--line);}
.svq .stage-dots i.active{background: #b59860; box-shadow: 0 0 0 4px rgba(181, 152, 96, 0.12);}
.svq .character-wrap{position: absolute; z-index: 1; right: -10%; bottom: -10px; width: 62%; height: 245px; margin: 0;}
.svq .character-wrap .web{inset: 26px 10px 13px;}
.svq .aside-tip{display: none;}
.svq .sv-question{min-height: auto; margin: 0 12px 14px; padding: 20px 16px 16px; border: 1px solid var(--line);}
.svq .question-no{font-size: 12px;}
.svq .sv-question h1{min-height: 52px; margin: 12px auto 8px; font-size: 22px; line-height: 1.55;}
.svq .prompt{margin-bottom: 14px; font-size: 12px;}
.svq .options{gap: 8px;}
.svq .option{grid-template-columns: 33px 1fr 27px; min-height: 54px; padding: 7px 12px;}
.svq .option > .svq-t{font-size: 16px; text-align: center;}
.svq .option-index{width: 23px; height: 23px;}
.svq .check{width: 25px; height: 25px;}
.svq .option.selected{color: var(--wine); background: rgba(119, 47, 52, 0.045); border-color: var(--wine);}
.svq .option.selected .check{background: var(--wine);}
.svq .question-actions{grid-template-columns: 1fr auto; gap: 9px; margin-top: 14px;}
.svq .question-actions p{display: none;}
.svq .question-actions .svq-btn{min-height: 48px; padding-right: 34px; padding-left: 34px;}
.svq .question-actions .action-arrow--left{left: 15px;}
.svq .question-actions .action-arrow--right{right: 15px;}
.svq .question-actions .primary{min-width: 46%; background: linear-gradient(135deg, #5b2228, #7a2d33); border-color: #9d784b;}
.svq .mobile-saved{display: block; margin: 8px 0 0; color: #9b8667; text-align: center; font-size: 12px;}
.svq .question-index{display: none;}
.svq footer{display: none;}
.svq footer.has-extra{display: flex; padding: 6px 16px calc(6px + env(safe-area-inset-bottom)); border-top: 0;}
.svq.has-record .character-wrap{height: 126px;}
.svq.has-record .svq__aside{min-height: 131px;}
.svq.has-record footer{gap: 4px;}
.svq.has-record .sv-question{margin-bottom: 6px; padding-bottom: 10px;}
.svq.has-record .mobile-saved{display: none;}
.svq .foot-line{display: none;}
.svq.is-choice .svq__aside{min-height: 235px;}
.svq.is-choice .character-wrap{height: 230px;}
.svq.is-choice .sv-question h1{min-height: 48px;}
}
@media (max-width: 430px){.svq__aside{min-height: 238px;}
.svq .character-wrap{height: 235px;}
.svq .sv-question{padding-right: 13px; padding-left: 13px;}
.svq .sv-question h1{font-size: 20px;}
.svq .option > .svq-t{font-size: 15px;}
}
