/* ========================================
   EVENT FORM
======================================== */


/* ----------------------------------------
   Page
---------------------------------------- */

.event-editor-page {
  width: min(900px, calc(100% - 48px));

  margin: 0 auto;

  padding:
    var(--space-8)
    0
    70px;
}


/* ----------------------------------------
   Header
---------------------------------------- */

.event-editor-header {
  margin-bottom: var(--space-8);
}

.event-editor-back {
  display: inline-flex;

  margin-bottom: var(--space-5);

  color: var(--color-text-muted);

  font-size: 14px;
  font-weight: 600;

  text-decoration: none;

  transition:
    color var(--transition-fast);
}

.event-editor-back:hover {
  color: var(--color-text);
}

.event-form-eyebrow {
  display: block;

  margin-bottom: 5px;

  color: var(--color-text-muted);

  font-size: 10px;
  font-weight: 700;

  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.event-editor-header h1 {
  margin: 0;

  font-size: clamp(34px, 5vw, 50px);

  line-height: 1;

  letter-spacing: -0.05em;
}

.event-editor-header p {
  margin:
    var(--space-3)
    0
    0;

  color: var(--color-text-muted);

  font-size: 14px;
}


/* ----------------------------------------
   Form
---------------------------------------- */

.event-form {
  display: grid;

  gap: var(--space-5);
}

.event-form-section {
  padding: var(--space-6);

  background: var(--color-surface);

  border:
    1px
    solid
    var(--color-border);

  border-radius: var(--radius-lg);

  box-shadow: var(--shadow-card);
}

.event-form-section-heading {
  margin-bottom: var(--space-6);
}

.event-form-section-heading h2 {
  margin: 0;

  font-size: 20px;

  letter-spacing: -0.025em;
}

.event-form-section-heading p {
  max-width: 520px;

  margin:
    var(--space-2)
    0
    0;

  color: var(--color-text-muted);

  font-size: 12px;

  line-height: 1.5;
}


/* ----------------------------------------
   Fields
---------------------------------------- */

.event-form-fields {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: var(--space-5);
}

.event-form-field {
  display: flex;
  flex-direction: column;

  gap: var(--space-2);
}

.event-form-field--full {
  grid-column:
    1
    /
    -1;
}

.event-form-field--status {
  max-width: 350px;
}

.event-form-field label {
  font-size: 12px;
  font-weight: 750;
}

.event-form-field input,
.event-form-field select {
  width: 100%;
  min-height: 48px;

  padding:
    0
    14px;

  background: var(--color-surface);

  border:
    1px
    solid
    var(--color-border);

  border-radius: var(--radius-sm);

  color: var(--color-text);

  font: inherit;
  font-size: 14px;
}

.event-form-field input:focus,
.event-form-field select:focus {
  outline:
    2px
    solid
    rgba(23, 32, 42, 0.1);

  outline-offset: 1px;

  border-color: var(--color-primary);
}


/* ----------------------------------------
   Errors
---------------------------------------- */

.event-form-errors {
  padding:
    var(--space-4)
    var(--space-5);

  background: var(--color-danger-light);

  border:
    1px
    solid
    var(--color-danger-border);

  border-radius: var(--radius-md);

  color: var(--color-danger);

  font-size: 12px;
}

.event-form-errors ul {
  margin:
    var(--space-2)
    0
    0;

  padding-left: 20px;
}


/* ----------------------------------------
   Actions
---------------------------------------- */

.event-form-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;

  gap: var(--space-3);
}

.event-form-cancel {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 44px;

  padding:
    0
    18px;

  color: var(--color-text-muted);

  font-size: 13px;
  font-weight: 700;

  text-decoration: none;
}

.event-form-cancel:hover {
  color: var(--color-text);
}


/* ----------------------------------------
   Responsive
---------------------------------------- */

@media (max-width: 650px) {
  .event-editor-page {
    width: calc(100% - 20px);

    padding-top: var(--space-5);
  }

  .event-form-section {
    padding: var(--space-5);
  }

  .event-form-fields {
    grid-template-columns: 1fr;
  }

  .event-form-field--full {
    grid-column: auto;
  }

  .event-form-field--status {
    max-width: none;
  }

  .event-form-actions {
    align-items: stretch;
    flex-direction: column-reverse;
  }

  .event-form-actions .button,
  .event-form-cancel {
    width: 100%;
  }
}
