#cps-section [hidden] { display: none !important; }
.cps-notice { margin: 16px 0; color: #153653; }
.cps-error { color: #9d2330; }
.cps-actions,.cps-choices { display: flex; gap: 10px; flex-wrap: wrap; margin: 18px 0; }
.cps-action,.cps-choice { border: 1px solid #c8d2da; background: #fff; color: #153653; padding: 11px 16px; border-radius: 8px; font: inherit; cursor: pointer; text-align: left; }
.cps-primary { background: #153653; color: #fff; border-color: #153653; }
.cps-action:disabled,.cps-choice:disabled { opacity: .55; cursor: wait; }
.cps-action:focus-visible,.cps-choice:focus-visible,#cps-answer:focus-visible { outline: 3px solid #22a5b3; outline-offset: 3px; }
.cps-question { padding: 24px 0; max-width: 850px; }
.cps-question h2 { font-size: 1.35rem; line-height: 1.5; color: #153653; }
.cps-question label { display: block; margin: 18px 0 8px; }
#cps-answer { width: 100%; box-sizing: border-box; border: 1px solid #bac6cf; border-radius: 8px; padding: 12px; font: inherit; margin-bottom: 10px; }
.cps-choice { flex: 1 1 260px; }
.cps-recommendation { color: #526271; }
.cps-history { margin: 16px 0; color: #526271; }
.cps-history summary { cursor: pointer; }
.cps-history-question { font-weight: 600; margin-top: 14px; }
.cps-document { background: #fff; color: #1c2933; font-size: 15px; line-height: 1.8; padding: 32px; border: 1px solid #e1e7ec; border-radius: 10px; }
.cps-document h1 { font-size: 1.8rem; line-height: 1.35; }
.cps-document h2 { margin-top: 32px; font-size: 1.35rem; }
.cps-document h3 { margin-top: 28px; font-size: 1.12rem; color: #153653; }
.cps-document p { margin: 9px 0; overflow-wrap: anywhere; }
.cps-eyebrow { font-size: .8rem; letter-spacing: .09em; color: #526271; }
.cps-table-scroll { overflow-x: auto; margin-top: 14px; }
.cps-document table { width: 100%; border-collapse: collapse; font-size: .88rem; min-width: 650px; }
.cps-document th,.cps-document td { border: 1px solid #d9d9d9; padding: 10px; text-align: left; vertical-align: top; }
.cps-document th { background: #153653; color: #fff; }
.cps-document tbody tr:nth-child(even) { background: #f3f6f8; }
@media(max-width: 600px) { .cps-document { padding: 16px; } .cps-choice { flex-basis: 100%; } }
