/*  I decided to use @layer and naming them based  on my files in the css folder to keep the 
css structure clean and follow an older */

@layer layout {
  .editorial-page .layout {
    display: grid;
    grid-template-areas:
      "main"
      "sidebar";

    gap: var(--spacing-xl);
    max-width: 1200px;
    margin-inline: auto;
    padding-block: var(--spacing-xl);
  }

  .editorial-page main {
    grid-area: main;
  }

  .editorial-page aside {
    grid-area: sidebar;
  }

  @media (min-width: 900px) {
    .editorial-page .layout {
      grid-template-columns: 1fr 320px;
      grid-template-areas: "main sidebar";
    }
  }
}

@layer components {

  .editorial-page header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--spacing-lg);
    background: var(--color-surface);
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-sm);
  }

  .editorial-page header nav {
    display: flex;
    gap: var(--spacing-lg);
    margin: 0;
    padding: 0;
  }

  .editorial-page article {
    background: var(--color-surface);
    padding: var(--spacing-xl);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-md);
  }

  .editorial-page article h1 {
    text-align: left;
    margin-bottom: var(--spacing-md);
  }

  .editorial-page article h2 {
    margin-top: var(--spacing-xl);
    margin-bottom: var(--spacing-md);
  }

  .editorial-page article p {
    margin-bottom: var(--spacing-md);
    max-width: 70ch;
  }

  .editorial-page .byline {
    color: var(--color-text-muted);
    margin-bottom: var(--spacing-lg);
  }

  .editorial-page blockquote {
    margin: var(--spacing-xl) 0;
    padding: var(--spacing-lg);
    border-left: 4px solid var(--color-accent);
    background: color-mix(
      in srgb,
      var(--color-accent) 10%,
      transparent
    );
    border-radius: var(--radius-md);
    font-style: italic;
  }

  .editorial-page aside section {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    padding: var(--spacing-lg);
    box-shadow: var(--shadow-md);
    margin-bottom: var(--spacing-lg);
  }

  .editorial-page aside h2 {
    margin-bottom: var(--spacing-md);
  }

  .editorial-page aside ul {
    list-style: none;
    padding: 0;
  }

  .editorial-page aside li {
    margin-bottom: var(--spacing-sm);
  }

  .editorial-page .tags {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-sm);
  }

  .editorial-page .tags li {
    background: var(--accent-300);
    padding: 0.4rem 0.8rem;
    border-radius: 999px;
    margin: 0;
    color: var(--seed-text)
  }

  .editorial-page footer {
    margin-top: var(--spacing-xl);
    border-top: 1px solid var(--color-border);
  }
}