@use "system/typography";
@use "system/spacing";
@use "components/blockquote/blockquote";
@use "components/links/link/link";
@use "components/list/list";
@use "components/paragraph/paragraph";
@use "components/table/table";

.ods-content {
  @extend %ods-text--size-kilo, %ods-text--size-juliett-breakpoint-large;
  @extend %ods-text--weight-light;

  :last-child {
    @extend %ods-margin-bottom-0;
  }

  h2 {
    @extend %ods-text--size-hotel, %ods-text--size-foxtrot-breakpoint-medium, %ods-text--size-delta-breakpoint-large;
    @extend %ods-margin-bottom-1, %ods-margin-bottom-2-breakpoint-medium;
  }

  h3 {
    @extend %ods-text--size-juliett, %ods-text--size-india-breakpoint-medium, %ods-text--size-hotel-breakpoint-large;
    @extend %ods-text--weight-medium;
    @extend %ods-margin-bottom-1, %ods-margin-bottom-2-breakpoint-medium;
  }

  h4 {
    @extend %ods-text--size-kilo, %ods-text--size-juliett-breakpoint-large;
    @extend %ods-text--weight-medium;
    @extend %ods-margin-bottom-1;
  }

  p {
    @extend %ods-paragraph;
  }

  p + p {
    @extend %ods-margin-top-5;
  }

  p + h2 {
    @extend %ods-margin-top-8, %ods-margin-top-13-breakpoint-medium;
  }

  ul + h2,
  ol + h2 {
    @extend %ods-margin-top-8, %ods-margin-top-13-breakpoint-medium;
  }

  h2 + ul,
  h2 + ol {
    @extend %ods-margin-top-0;
  }

  p + h3,
  p + h4 {
    @extend %ods-margin-top-5;
  }

  h2 + h3 {
    @extend %ods-margin-top-5;
  }

  a:not(.ods-button) {
    @extend .ods-link; /* stylelint-disable-line */
  }

   // Force inline override of links in lists
  ul li a:not(.ods-button),
  ol li a:not(.ods-button) {
    @extend .ods-link; /* stylelint-disable-line */

    display: inline;
  }

  ul {
    @extend .ods-unordered-list, %ods-margin-vertical-5; /* stylelint-disable-line */

    ul,
    ul ul {
      @extend %ods-margin-vertical-0;

      padding-left: 1.25rem;
    }

    li + li {
      @extend %ods-padding-top-3;
    }
  }

  ol {
    @extend .ods-ordered-list, %ods-margin-vertical-5; /* stylelint-disable-line */

    ol,
    ol ol {
      @extend %ods-margin-vertical-0;

      padding-left: 1.25rem;
    }

    li + li {
      @extend %ods-padding-top-3;
    }
  }

  blockquote {
    @extend .ods-blockquote, %ods-margin-vertical-8; /* stylelint-disable-line */
  }

  table {
    @extend .ods-table, %ods-margin-vertical-8; /* stylelint-disable-line */

    caption {
      @extend .ods-table__caption; /* stylelint-disable-line */
    }

    thead {
      @extend .ods-table__head; /* stylelint-disable-line */
    }

    tbody {
      @extend .ods-table__body; /* stylelint-disable-line */
    }

    tr {
      @extend .ods-table__row; /* stylelint-disable-line */
    }

    th,
    td {
      @extend .ods-table__cell; /* stylelint-disable-line */
    }
  }
}
