/* 内容库共创问卷，翡翠绿与青绿搭配轻盈白色背景；@author Vic Chu */
/* 隐藏侧栏的外层不拦截问卷入口，展开子面板继续沿用自身 pointer-events:auto */
.member-library-page .library-side-stack {pointer-events:none}
.survey-entry {margin-top:18px; display:inline-flex; align-items:center; gap:8px}
.survey-entry[hidden] {display:none}
.survey-open {overflow:hidden}
.library-survey {border:1px solid #c9eee5; border-radius:28px; padding:0; width:min(760px,calc(100% - 32px)); max-height:90vh; max-height:90dvh; color:var(--ink,#173e52); background:#fbfffe; box-shadow:0 30px 100px #173e5233; overflow:hidden}
.library-survey::backdrop {background:rgba(25,75,77,.30); backdrop-filter:blur(5px)}
.library-survey [hidden] {display:none!important}
.survey-shell {display:flex; flex-direction:column; max-height:90vh; max-height:90dvh; position:relative}
.survey-header {display:flex; align-items:center; justify-content:space-between; padding:18px 28px; border-bottom:1px solid #d5f0e9; background:#e9fcf5; flex-shrink:0}
.survey-brand {font-size:13px; font-weight:700; letter-spacing:2px; color:#118d7c}
.survey-close {width:36px; height:36px; border:1px solid #c5ebe1; background:#fbfffe; border-radius:50%; cursor:pointer; font-size:24px; color:#309b8d; line-height:1}
.survey-scroll {overflow-y:auto; overscroll-behavior:contain; padding:28px; min-height:0}
.survey-intro {padding:14px 6px 12px}
.survey-kicker {color:#159e88; font-size:13px; font-weight:700; letter-spacing:2px}
.library-survey h2 {font-size:30px; letter-spacing:-.6px; line-height:1.35; margin:16px 0; color:#174e55}
/* 时间投入与到账权益使用红色粗体强调，保留清晰阅读对比 */
.library-survey .survey-highlight {color:#df414d; font-weight:800}
.survey-lead {font-size:17px; line-height:1.9; color:#49777a; margin:0 0 18px}
.survey-gift {display:flex; align-items:center; gap:18px; background:#dffaf0; border:1px solid #baefdc; padding:20px 24px; border-radius:18px; margin:24px 0}
.survey-gift-number {font-size:54px; font-family:Georgia,serif; line-height:1; color:#13b894}
.survey-gift strong {display:block; font-size:18px; margin-bottom:6px}
.survey-gift small {color:#448177; line-height:1.6}
.survey-note {font-size:13px; color:#5e807f; line-height:1.8; margin:14px 0}
.survey-primary,.survey-secondary {border-radius:12px; padding:12px 20px; font-weight:700; cursor:pointer; min-height:46px; text-align:center; display:inline-flex; align-items:center; justify-content:center; text-decoration:none}
.survey-primary {background:#48dab1; border:1px solid #48dab1; color:#084e44}
.survey-primary:hover {background:#6be7c2}
.survey-secondary {background:#fbfffe; border:1px solid #c9eae2; color:#138d7d}
.library-survey button:disabled {cursor:wait; opacity:.6}
.library-survey :focus-visible {outline:1px solid #15af98; outline-offset:2px}
.survey-progress-label {font-size:14px; font-weight:700; margin:0 0 10px; color:#109d86}
.survey-progress {display:block; appearance:none; width:100%; height:5px; border:0; margin-bottom:28px; border-radius:8px; overflow:hidden; background:#dcf4eb}
.survey-progress::-webkit-progress-bar {background:#dcf4eb}
.survey-progress::-webkit-progress-value {background:#2ccfaf}
.survey-progress::-moz-progress-bar {background:#2ccfaf}
.library-survey fieldset {border:0; padding:0; margin:0 0 28px; min-width:0}
.library-survey legend {font-size:17px; font-weight:700; line-height:1.65; padding:0; margin-bottom:6px; width:100%}
.survey-question-number {color:#23b89f; font-family:Georgia,serif; margin-right:8px}
.survey-hint {color:#648584; font-size:12px; margin:0 0 12px; line-height:1.6}
.survey-options {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px}
.survey-options.survey-grades {grid-template-columns:repeat(3,minmax(0,1fr))}
.survey-options.survey-experience {grid-template-columns:1fr}
.survey-options.survey-invalid .survey-option {border-color:#e9b7b7; background:#fffafa}
.survey-options.survey-invalid .survey-option:hover {border-color:#d98c8c; background:#fff5f5}
.survey-option {display:flex; align-items:center; gap:10px; padding:12px 13px; background:#fff; border:1px solid #d7ebe6; border-radius:12px; min-height:46px; cursor:pointer; font-size:14px; line-height:1.55}
.survey-option:hover {border-color:#7fdec8; background:#f1fdf9}
.survey-option:has(input:checked) {border-color:#3bd0b0; background:#e1fbf1; box-shadow:none}
.survey-option input {accent-color:#17bb98; width:17px; height:17px; margin:0; flex:0 0 17px}
.survey-option small {display:block; color:#628982; font-size:12px; margin-top:3px}
.survey-supplement {display:block; margin-top:12px; font-size:13px; color:#428d81}
.survey-supplement input,.survey-textarea {display:block; box-sizing:border-box; width:100%; margin-top:8px; background:white; border:1px solid #c4e7df; border-radius:12px; padding:12px 14px; color:#174e55; font:inherit}
.survey-supplement input.survey-invalid,.survey-textarea.survey-invalid {border-color:#e2a4a4; background:#fffafa}
.survey-textarea {min-height:160px; resize:vertical; line-height:1.8; font-size:16px}
/* 文本框聚焦仅保留一条青绿细线，避免外轮廓与边框叠加 */
.library-survey .survey-supplement input:focus,.library-survey .survey-textarea:focus {border-color:#21bfa5; outline:0!important; box-shadow:none!important}
.survey-count {text-align:right; display:block; font-size:12px; color:#729a93; margin:6px 0 18px}
.survey-context {background:#eafbf5; padding:12px 14px; border-radius:10px; color:#318a7b; line-height:1.8; font-size:14px; margin:14px 0 20px}
.survey-footer {display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:18px; border-top:1px solid #d6eee6; margin-top:8px}
.survey-footer .survey-primary {margin-left:auto}
.survey-error {font-size:14px; color:#995324; line-height:1.7; margin:0; padding:0 28px 18px; flex-shrink:0}
.survey-error:empty {padding:0}
.survey-reward {text-align:center; padding:16px 0}
.survey-reminder {position:absolute; inset:0; z-index:2; display:grid; place-items:center; padding:22px; background:rgba(23,62,82,.28); backdrop-filter:blur(3px)}
.survey-reminder-card {width:min(460px,100%); box-sizing:border-box; padding:28px; border:1px solid #c9eee5; border-radius:20px; background:#fbfffe; box-shadow:0 18px 60px #173e5233; text-align:center}
.survey-reminder-card h2 {font-size:24px; margin:12px 0; color:#174e55}
.survey-reminder-card p {font-size:15px; line-height:1.8; color:#5e807f; margin:0 0 22px}
@media(max-width:560px) {
    .library-survey {width:calc(100% - 16px); border-radius:20px}
    .survey-header {padding:12px 18px}
    .survey-scroll {padding:22px 18px}
    .library-survey h2 {font-size:25px}
    /* 时间投入与到账权益使用红色粗体强调，保留清晰阅读对比 */
.library-survey .survey-highlight {color:#df414d; font-weight:800}
.survey-lead {font-size:15px}
    .survey-options {grid-template-columns:1fr}
    .survey-options.survey-grades {grid-template-columns:repeat(3,minmax(0,1fr))}
    .survey-option {padding:12px 10px}
    .survey-footer {flex-wrap:wrap}
    .survey-footer .survey-primary {flex:1; padding:12px}
    .survey-error {padding-left:18px; padding-right:18px}
    .survey-reminder {padding:14px}
    .survey-reminder-card {padding:22px 18px}
}
