/* The micro-training page (/mikroskoleni/chatgpt-dots-space): a course page without dates, booked through a form. */
@layer components {
  /* A Space document with a dot asking for approval: the hero picture, drawn in HTML. Narrow screens hide it like the
     course pictures (home.css). */
  .space-preview {
    position: relative;
    display: grid;
    align-content: center;
    inline-size: 550px;
    aspect-ratio: 1000 / 640;
    padding: 6%;
    border-radius: 20px;
    background: linear-gradient(135deg, var(--color-sage), var(--color-sand));
    overflow: hidden;

    @media (max-width: 1270px) { inline-size: 460px; }
    @media (max-width: 1080px) { display: none; }
  }

  .space-preview__page {
    inline-size: 78%;
    padding: 1.2rem 1.4rem;
    border-radius: 14px;
    background: var(--color-canvas);
    box-shadow: var(--shadow-raised);
    font-size: var(--text-small);
    line-height: 1.5;
  }

  .space-preview__crumb {
    margin-block-end: 0.4rem;
    color: var(--color-subtle);
    font-size: 0.7rem;
  }

  .space-preview__title {
    margin-block-end: 0.6rem;
    color: var(--color-ink);
    font-size: 1.05rem;
  }

  .space-preview__task {
    display: flex;
    align-items: center;
    gap: var(--space-inline);
    margin-block: 0.25rem;
  }

  .space-preview__check {
    flex: none;
    inline-size: 0.8rem;
    block-size: 0.8rem;
    border: 1.5px solid var(--color-border);
    border-radius: 3px;
  }

  .space-preview__check--done {
    border-color: var(--color-accent-ink);
    background: var(--color-accent);
  }

  .space-preview__chart {
    display: flex;
    align-items: end;
    gap: 6px;
    block-size: 46px;
    margin-block-start: 0.7rem;

    span {
      flex: 1;
      block-size: var(--height);
      border-radius: 4px 4px 0 0;
      background: var(--color-sage);
    }
  }

  .space-preview__dot {
    position: absolute;
    inset-inline-end: 5%;
    inset-block-end: 9%;
    inline-size: 46%;
    padding: 0.9rem 1rem;
    border-radius: 14px;
    background: var(--color-ink);
    box-shadow: var(--shadow-raised);
    color: var(--color-canvas);
    font-size: 0.72rem;
    line-height: 1.45;
  }

  .space-preview__dot-name {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin-block-end: 0.35rem;
  }

  .space-preview__avatar {
    inline-size: 1.1rem;
    block-size: 1.1rem;
    border-radius: 50%;
    background: var(--color-accent);
    box-shadow: 0 0 0 4px color-mix(in oklab, var(--color-accent) 25%, transparent);
  }

  .space-preview__approve {
    display: block;
    inline-size: fit-content;
    margin-block-start: 0.5rem;
    padding: 0.2rem 0.6rem;
    border-radius: var(--radius-pill);
    background: var(--color-accent);
    color: var(--color-ink);
  }

  /* The two hours, block by block. */
  .agenda {
    padding: var(--section-padding);
    scroll-margin-top: 50px;

    @media (max-width: 680px) { padding: 40px 20px; }
  }

  .agenda__heading {
    margin-block-end: calc(var(--space-block) * 2);
    color: var(--color-ink);
    font-size: var(--font-size-title);
    font-weight: var(--font-weight-bold);
    text-align: center;
  }

  .agenda__items {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
    gap: var(--space-block);
  }

  .agenda__item {
    padding: 1.4rem;
    border-radius: var(--radius-card);
    background: var(--color-band);

    p {
      font-size: 0.9rem;
      line-height: 1.55;
    }
  }

  .agenda__item--questions {
    background: color-mix(in oklab, var(--color-accent) 35%, var(--color-canvas));
  }

  .agenda__time {
    color: var(--color-accent-ink);
    font-size: var(--text-small);
    letter-spacing: 0.03em;
  }

  .agenda__title {
    margin-block: 0.35rem 0.5rem;
    color: var(--color-ink);
    font-size: 1.05rem;
  }
}
