#pvs-satisfaction .sat-container { max-width: 1000px; }
#pvs-satisfaction #content { width: 100%; margin: 0; }
#pvs-satisfaction [hidden] { display: none !important; }
#pvs-satisfaction .sat-eyebrow { display: block; color: #b71d28; font-size: 12px; font-weight: 700; letter-spacing: .12em; margin-bottom: 12px; }
#pvs-satisfaction .sat-intro { max-width: 780px; margin-bottom: 36px; }
#pvs-satisfaction .sat-intro h2 { font-size: 30px; }
#pvs-satisfaction .sat-meta { font-weight: 700; color: #333; }
#pvs-satisfaction .sat-privacy { font-size: 14px; }
#pvs-satisfaction .sat-progress { margin-bottom: 24px; }
#pvs-satisfaction .sat-progress label { display: block; font-size: 14px; margin-bottom: 8px; }
#pvs-satisfaction progress { display: block; width: 100%; height: 8px; border: none; border-radius: 8px; accent-color: #d2232f; overflow: hidden; background: #eee; }
#pvs-satisfaction progress::-webkit-progress-bar { background: #eee; }
#pvs-satisfaction progress::-webkit-progress-value { background: #d2232f; }
#pvs-satisfaction progress::-moz-progress-bar { background: #d2232f; }
#pvs-satisfaction .sat-topic { padding: 28px; margin-bottom: 24px; background: #f5f5f5; border: 1px solid #e6e6e6; border-radius: 6px; }
#pvs-satisfaction .sat-topic h2 { font-size: 22px; margin-bottom: 24px; }
#pvs-satisfaction .sat-question { padding: 0; border: 0; margin: 0; min-width: 0; scroll-margin-top: 130px; }
#pvs-satisfaction .sat-question + .sat-question { margin-top: 28px; }
#pvs-satisfaction .sat-question legend { box-sizing: border-box; width: 100%; font-size: 17px; color: #333; margin-bottom: 14px; }
#pvs-satisfaction .sat-question-number { color: #b71d28; font-weight: 700; }
#pvs-satisfaction .sat-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
#pvs-satisfaction .sat-choice { display: flex; cursor: pointer; }
#pvs-satisfaction .sat-choice input { position: absolute; opacity: 0; width: 1px; height: 1px; }
#pvs-satisfaction .sat-choice span { display: flex; align-items: center; justify-content: center; text-align: center; width: 100%; box-sizing: border-box; padding: 12px; border: 1px solid #b9b9b9; border-radius: 4px; background: #fff; font-size: 13px; line-height: 1.4; color: #444; }
#pvs-satisfaction .sat-choice input:checked + span { border-color: #b71d28; background: #b71d28; color: #fff; }
#pvs-satisfaction .sat-choice input:focus-visible + span { outline: 3px solid #333; outline-offset: 2px; }
#pvs-satisfaction .sat-missing { border-left: 3px solid #b71d28; padding-left: 12px; }
#pvs-satisfaction .sat-error { color: #a31b27; font-weight: 700; }
#pvs-satisfaction .sat-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin: 24px 0; }
#pvs-satisfaction .sat-text-button { border: 0; background: none; color: #555; padding: 8px 0; text-decoration: underline; cursor: pointer; font: inherit; font-size: 14px; }
#pvs-satisfaction .sat-result { padding: 0; scroll-margin-top: 130px; }
#pvs-satisfaction .sat-result:focus { outline: none; }
#pvs-satisfaction .sat-overview { display: grid; grid-template-columns: 1fr 2fr; align-items: center; gap: 28px; background: #f8f2f3; border-radius: 6px; padding: 28px; margin: 24px 0 14px; }
#pvs-satisfaction .sat-overview span { display: block; font-size: 14px; }
#pvs-satisfaction #sat-average { display: block; font-size: 56px; line-height: 1.2; color: #b71d28; margin: 8px 0; }
#pvs-satisfaction .sat-context { font-size: 14px; margin-bottom: 32px; }
#pvs-satisfaction .sat-domains { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 28px; }
#pvs-satisfaction .sat-domain { display: grid; grid-template-columns: 1fr auto; gap: 8px; padding: 14px 0; }
#pvs-satisfaction .sat-domain strong { color: #333; }
#pvs-satisfaction .sat-domain small { grid-column: 1 / -1; font-size: 12px; }
#pvs-satisfaction .sat-track { grid-column: 1 / -1; background: #eee; height: 6px; border-radius: 4px; overflow: hidden; }
#pvs-satisfaction .sat-track span { display: block; height: 100%; background: #b71d28; }
#pvs-satisfaction .sat-next { margin-top: 36px; }
#pvs-satisfaction .sat-action { padding: 20px 0; border-bottom: 1px solid #ddd; }
#pvs-satisfaction .sat-action h4 { margin-bottom: 8px; font-size: 18px; }
#pvs-satisfaction .sat-method { margin-top: 36px; border-top: 1px solid #ddd; padding-top: 20px; font-size: 14px; }
#pvs-satisfaction .sat-method summary { cursor: pointer; font-weight: 700; color: #333; }
#pvs-satisfaction .sat-method p { margin-top: 14px; }
#pvs-satisfaction button:focus-visible, #pvs-satisfaction a:focus-visible { outline: 3px solid #b71d28; outline-offset: 4px; }
@media (max-width: 650px) {
 #pvs-satisfaction .sat-topic { padding: 20px 16px; }
 #pvs-satisfaction .sat-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 #pvs-satisfaction .sat-overview, #pvs-satisfaction .sat-domains { grid-template-columns: 1fr; }
 #pvs-satisfaction .sat-overview { gap: 16px; padding: 20px; }
 #pvs-satisfaction .sat-intro h2 { font-size: 26px; }
 #pvs-satisfaction .sat-question, #pvs-satisfaction .sat-result { scroll-margin-top: 95px; }
}
