.library-disclosure { background: var(--surface, #fff); border: 1px solid var(--line, #e2e7ee); border-radius: 8px; margin-bottom: 16px; }
.library-disclosure > summary { padding: 14px 20px; font-size: 14px; font-weight: 500; cursor: pointer; }
.library-disclosure > section { padding: 0 20px 20px; }
.knowledge-browser { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 20px; margin-top: 20px; }
.library-content-kinds { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 12px; }
.library-content-kinds .btn { font-weight: 400; }
#knowledgeContentKinds button[aria-pressed="true"] { background: #eaf1fb; color: #204d90; border-color: #204d90; }
.library-content-kinds button:focus-visible { outline: 2px solid #275faf; outline-offset: 3px; }
#knowledgeCategories { display: flex; flex-direction: column; gap: 4px; align-self: start; }
#knowledgeCategories .btn { text-align: left; font-size: 12px; font-weight: 400; border: 0; background: transparent; }
#knowledgeCategories .selected { background: #eaf1fb; color: #204d90; font-weight: 500; }
#knowledgeView .knowledge-grid { display: block; min-width: 0; }
.knowledge-entry, .question-entry { display: flex; align-items: center; gap: 20px; padding: 18px 0; border-bottom: 1px solid #e2e7ee; }
.knowledge-entry:first-child, .question-entry:first-child { padding-top: 4px; }
.knowledge-entry-body { flex: 1; min-width: 0; }
.library-title-button { display: block; border: 0; background: transparent; text-align: left; color: #202b3b; padding: 0; font: inherit; font-size: 15px; font-weight: 500; cursor: pointer; line-height: 1.5; overflow-wrap: anywhere; }
.library-title-button:hover { color: #204d90; text-decoration: underline; text-underline-offset: 3px; }
.library-excerpt { margin: 7px 0; color: #59677a; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.library-meta { display: flex; flex-wrap: wrap; gap: 12px; margin: 8px 0; color: #59677a; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.library-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; padding-top: 18px; font-size: 12px; color: #59677a; }
.library-entry-actions { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; flex-shrink: 0; }
.library-status { font-size: 12px; color: #945813; }
.library-status.answered { color: #277353; }
.library-notice, .library-summary { color: #59677a; font-size: 13px; line-height: 1.65; margin: 12px 0 20px; }
.library-rules { margin: 16px 0; color: #59677a; font-size: 13px; }
.library-rules summary { cursor: pointer; }
.question-toolbar { display: grid; grid-template-columns: minmax(220px, 2fr) repeat(3, minmax(120px, 1fr)); gap: 12px; }
.question-toolbar label { display: flex; flex-direction: column; gap: 7px; font-size: 12px; font-weight: 400; }
.library-dialog { width: min(840px, calc(100vw - 32px)); max-width: calc(100vw - 32px); max-height: calc(100dvh - 32px); padding: 0; }
.library-reader { padding: 24px; }
.library-reader .modal-head { position: static; }
.library-reader h2 { font-size: 19px; font-weight: 600; line-height: 1.45; overflow-wrap: anywhere; }
.library-text-section { margin: 24px 0 0; }
.library-text-section h3, .library-history h3, .library-answer-form h3 { margin: 0 0 8px; font-size: 14px; font-weight: 500; }
.library-prose { white-space: pre-wrap; overflow-wrap: anywhere; margin: 0; font-size: 14px; font-weight: 400; line-height: 1.8; max-width: 75ch; color: #202b3b; }
.library-source { display: block; margin: 8px 0; color: #204d90; overflow-wrap: anywhere; }
.library-history { margin-top: 28px; }
.library-history-entry { padding: 16px 0; border-top: 1px solid #e2e7ee; }
.library-history-entry .library-text-section { margin-top: 12px; }
.library-answer-form { padding-top: 24px; border-top: 1px solid #e2e7ee; margin: 24px 0; }
.library-reply-disclosure { border-top: 1px solid #e2e7ee; margin: 24px 0; padding-top: 16px; }
.library-reply-disclosure > summary { font-size: 14px; font-weight: 500; cursor: pointer; color: #204d90; }
.library-reply-disclosure .library-answer-form { border: 0; margin: 0; padding-top: 4px; }
.library-form label, .library-answer-form label { display: flex; flex-direction: column; gap: 7px; margin: 16px 0; font-weight: 400; font-size: 13px; }
.library-form input, .library-form select, .library-form textarea, .library-answer-form textarea { width: 100%; box-sizing: border-box; font-weight: 400; }
.library-form .library-checkbox { flex-direction: row; align-items: flex-start; gap: 10px; }
.library-checkbox input { width: 18px; height: 18px; margin-top: 2px; flex-shrink: 0; }
.library-submit-status { color: #945813; font-size: 13px; white-space: pre-wrap; overflow-wrap: anywhere; }
.library-similar .btn { margin: 4px 8px 4px 0; text-align: left; white-space: normal; }
.library-dialog button:focus-visible, #knowledgeCategories button:focus-visible, .library-title-button:focus-visible { outline: 2px solid #275faf; outline-offset: 3px; }
.library-reader .modal-head > .btn { flex-shrink: 0; }
@media (max-width: 850px) { .knowledge-browser { grid-template-columns: 1fr; } #knowledgeCategories { flex-direction: row; flex-wrap: wrap; } .question-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); } .question-toolbar label:first-child { grid-column: 1 / -1; } }
@media (max-width: 600px) { .library-reader { padding: 18px 16px; } .knowledge-entry, .question-entry { align-items: flex-start; gap: 12px; flex-direction: column; } .library-entry-actions { flex-direction: row; align-items: center; } .question-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); } .question-toolbar label:last-child { grid-column: 1 / -1; } .question-toolbar select { min-width: 0; width: 100%; } .library-dialog { width: calc(100vw - 24px); max-width: calc(100vw - 24px); } .library-disclosure > section { padding: 0 16px 16px; } }
