@layer base { .item { border-radius: var(--radius); background-color: var(--card); color: var(--card-foreground); overflow: hidden; margin-bottom: var(--spacing-4); box-shadow: var(--shadow); transition: box-shadow var(--animation-duration-normal) ease; } .item:hover:not(:has(.trigger:disabled)) { box-shadow: var(--shadow-md); } .item:has(.trigger:disabled) { opacity: 0.6; box-shadow: var(--shadow); } .header { display: flex; } .trigger { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: var(--spacing-4) var(--spacing-6); font-family: var(--font-family-heading); font-weight: 400; line-height: 1.5; letter-spacing: -0.01em; text-align: left; background-color: transparent; color: inherit; border: none; cursor: pointer; transition: opacity var(--animation-duration-fast) ease; } .trigger:hover:not(:disabled) { opacity: 0.8; } .trigger:active:not(:disabled) { opacity: 0.7; } .trigger:disabled { opacity: 0.6; cursor: not-allowed; color: var(--muted-foreground); } .trigger:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; } .icon { width: 1rem; height: 1rem; transition: transform var(--animation-duration-normal) cubic-bezier(0.16, 1, 0.3, 1); flex-shrink: 0; color: var(--muted-foreground); } .trigger:disabled .icon { color: var(--muted-foreground); opacity: 0.5; } .trigger[data-state="open"] .icon { transform: rotate(180deg); } .content { overflow: hidden; background-color: transparent; color: inherit; animation: accordion-up var(--animation-duration-normal) cubic-bezier(0.16, 1, 0.3, 1); } .content[data-state="open"] { animation: accordion-down var(--animation-duration-normal) cubic-bezier(0.16, 1, 0.3, 1); } .contentInner { padding: var(--spacing-3) var(--spacing-6) var(--spacing-4); color: var(--muted-foreground); font-size: 0.95rem; line-height: 1.6; } @keyframes accordion-up { from { height: var(--radix-accordion-content-height); } to { height: 0; } } @keyframes accordion-down { from { height: 0; } to { height: var(--radix-accordion-content-height); } } }