| /* FAQ Accordion Component */ |
| .accordion { |
| display: flex; |
| flex-direction: column; |
| gap: var(--ai-spacing-md); |
| } |
| |
| .accordionItem { |
| background: #fff; |
| border-radius: var(--ai-radius-md); |
| box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06); |
| overflow: hidden; |
| transition: box-shadow 0.2s ease; |
| } |
| |
| .accordionItem:hover { |
| box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); |
| } |
| |
| .accordionItemOpen { |
| box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12); |
| } |
| |
| .accordionHeader { |
| width: 100%; |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| padding: var(--ai-spacing-lg) var(--ai-spacing-xl); |
| background: none; |
| border: none; |
| cursor: pointer; |
| text-align: left; |
| font-family: inherit; |
| transition: background-color 0.2s ease; |
| } |
| |
| .accordionHeader:hover { |
| background-color: var(--grey); |
| } |
| |
| .accordionHeader:focus-visible { |
| outline: 2px solid var(--blue); |
| outline-offset: -2px; |
| } |
| |
| .accordionQuestion { |
| font-size: 1.8rem; |
| font-weight: 600; |
| color: var(--black); |
| line-height: 1.4; |
| padding-right: var(--ai-spacing-md); |
| } |
| |
| .accordionIcon { |
| flex-shrink: 0; |
| width: 2.4rem; |
| height: 2.4rem; |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| font-size: 2rem; |
| font-weight: 300; |
| color: var(--blue); |
| transition: transform 0.2s ease; |
| } |
| |
| .accordionItemOpen .accordionIcon { |
| transform: rotate(180deg); |
| } |
| |
| .accordionContent { |
| display: grid; |
| grid-template-rows: 0fr; |
| transition: grid-template-rows 0.3s ease; |
| } |
| |
| .accordionItemOpen .accordionContent { |
| grid-template-rows: 1fr; |
| } |
| |
| .accordionAnswer { |
| overflow: hidden; |
| padding: 0 var(--ai-spacing-xl); |
| } |
| |
| .accordionItemOpen .accordionAnswer { |
| padding-bottom: var(--ai-spacing-xl); |
| } |
| |
| .accordionAnswer p { |
| font-size: 1.6rem; |
| line-height: 1.7; |
| color: var(--text-secondary); |
| margin: 0 0 1.2rem; |
| } |
| |
| .accordionAnswer p:last-child { |
| margin-bottom: 0; |
| } |
| |
| .accordionAnswer ul, |
| .accordionAnswer ol { |
| font-size: 1.6rem; |
| line-height: 1.7; |
| color: var(--text-secondary); |
| margin: 0 0 1.2rem; |
| padding-left: 2rem; |
| } |
| |
| .accordionAnswer li { |
| margin-bottom: 0.6rem; |
| } |
| |
| .accordionAnswer code { |
| font-size: 1.4rem; |
| background: var(--grey); |
| padding: 0.2rem 0.6rem; |
| border-radius: 4px; |
| } |
| |
| .accordionAnswer pre { |
| margin: 1.2rem 0; |
| padding: var(--ai-spacing-md); |
| background: var(--grey); |
| border-radius: var(--ai-radius-sm); |
| overflow-x: auto; |
| } |
| |
| .accordionAnswer pre code { |
| background: none; |
| padding: 0; |
| } |
| |
| .accordionAnswer table { |
| width: 100%; |
| margin: 1.2rem 0; |
| border-collapse: collapse; |
| font-size: 1.4rem; |
| } |
| |
| .accordionAnswer th, |
| .accordionAnswer td { |
| padding: 0.8rem 1.2rem; |
| text-align: left; |
| border-bottom: 1px solid var(--grey); |
| } |
| |
| .accordionAnswer th { |
| font-weight: 600; |
| background: var(--grey); |
| } |
| |
| .accordionLearnMore { |
| margin-top: var(--ai-spacing-lg); |
| } |
| |
| /* Category Tabs */ |
| .categoryTabs { |
| display: flex; |
| flex-direction: column; |
| gap: var(--ai-spacing-xl); |
| } |
| |
| .tabList { |
| display: flex; |
| flex-wrap: wrap; |
| gap: var(--ai-spacing-sm); |
| border-bottom: 1px solid var(--grey); |
| padding-bottom: var(--ai-spacing-sm); |
| } |
| |
| .tab { |
| padding: var(--ai-spacing-sm) var(--ai-spacing-lg); |
| background: none; |
| border: none; |
| border-radius: var(--ai-radius-sm); |
| cursor: pointer; |
| font-family: inherit; |
| font-size: 1.6rem; |
| font-weight: 500; |
| color: var(--text-secondary); |
| transition: all 0.2s ease; |
| } |
| |
| .tab:hover { |
| background: var(--grey); |
| color: var(--black); |
| } |
| |
| .tab:focus-visible { |
| outline: 2px solid var(--blue); |
| outline-offset: 2px; |
| } |
| |
| .tabActive { |
| background: var(--blue); |
| color: #fff; |
| } |
| |
| .tabActive:hover { |
| background: var(--blue2); |
| color: #fff; |
| } |
| |
| .tabPanel { |
| min-height: 200px; |
| } |
| |
| /* Responsive */ |
| @media (max-width: 767px) { |
| .accordionHeader { |
| padding: var(--ai-spacing-md) var(--ai-spacing-lg); |
| } |
| |
| .accordionQuestion { |
| font-size: 1.6rem; |
| } |
| |
| .accordionAnswer { |
| padding: 0 var(--ai-spacing-lg); |
| } |
| |
| .accordionItemOpen .accordionAnswer { |
| padding-bottom: var(--ai-spacing-lg); |
| } |
| |
| .tabList { |
| gap: var(--ai-spacing-xs); |
| } |
| |
| .tab { |
| padding: var(--ai-spacing-xs) var(--ai-spacing-md); |
| font-size: 1.4rem; |
| } |
| } |