/* ACCORDION, DIALOG — ported verbatim from reference/css/components.css (lines 568-602). Global, in the reference order. */
.lm-accordion { border-bottom: var(--wp--custom--border--hairline) solid var(--wp--preset--color--line); }
.lm-accordion summary {
  display: flex; align-items: center; justify-content: space-between; gap: var(--wp--preset--spacing--40);
  padding-block: var(--wp--preset--spacing--50); cursor: pointer; list-style: none;
  font-family: var(--wp--preset--font-family--display);
  font-size: var(--wp--preset--font-size--large); font-weight: var(--wp--custom--font-weight--medium);
  line-height: var(--wp--custom--line-height--snug);
}
.lm-accordion summary::-webkit-details-marker { display: none; }
.lm-accordion summary .lm-icon { color: var(--wp--preset--color--muted); transition: transform var(--wp--custom--motion--fast) ease; }
.lm-accordion[open] summary .lm-icon { transform: rotate(45deg); }
.lm-accordion__body { padding-bottom: var(--wp--preset--spacing--60); color: var(--wp--preset--color--secondary); }
.lm-accordion__body ul { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--20); padding-left: var(--wp--preset--spacing--50); list-style: disc; }

.lm-dialog {
  width: calc(100% - 2 * var(--wp--custom--layout--gutter)); max-width: 560px; max-height: 85vh; overflow: auto;
  padding: var(--wp--preset--spacing--80);
  background: var(--wp--preset--color--surface); color: var(--wp--preset--color--contrast);
  border: var(--wp--custom--border--hairline) solid var(--wp--preset--color--line-strong);
  border-radius: var(--wp--custom--radius--lg);
  box-shadow: var(--wp--preset--shadow--pop);
}
.lm-dialog::backdrop { background: var(--wp--preset--color--scrim); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.lm-dialog__head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--wp--preset--spacing--50); margin-bottom: var(--wp--preset--spacing--30); }
.lm-dialog__title { font-size: var(--wp--preset--font-size--huge); }
.lm-dialog__text { color: var(--wp--preset--color--secondary); margin-bottom: var(--wp--preset--spacing--60); }

@media (max-width: 639px) {
  .lm-dialog { padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50); }
  /* Bottom sheet variant for filter drawers */
  .lm-dialog--sheet {
    width: 100%; max-width: none; margin: auto 0 0; max-height: 88vh;
    border-radius: var(--wp--custom--radius--lg) var(--wp--custom--radius--lg) 0 0; border-bottom: 0;
  }
}
