/* ClubPass365 1.4.0: limited to ticket-type editor elements positively identified by JS. */
.cp365-tidy-ticket-card { box-sizing: border-box !important; }
.cp365-ticket-details-grid,
.cp365-ticket-sale-grid {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
.cp365-ticket-details-grid {
  display: grid !important;
  grid-template-columns: minmax(0,1.75fr) minmax(105px,.77fr) minmax(105px,.77fr) minmax(0,2.15fr) auto !important;
  column-gap: 16px !important;
  row-gap: 12px !important;
  align-items: end !important;
  justify-content: stretch !important;
}
.cp365-ticket-details-grid > .cp365-ticket-name-cell { grid-column: 1 !important; }
.cp365-ticket-details-grid > .cp365-ticket-price-cell { grid-column: 2 !important; }
.cp365-ticket-details-grid > .cp365-ticket-available-cell { grid-column: 3 !important; }
.cp365-ticket-details-grid > .cp365-ticket-description-cell { grid-column: 4 !important; }
.cp365-ticket-details-grid > .cp365-ticket-remove-cell { grid-column: 5 !important; display:flex !important; align-items:center !important; justify-content:center !important; padding-bottom: 7px !important; }
.cp365-ticket-details-grid > :is(.cp365-ticket-name-cell,.cp365-ticket-price-cell,.cp365-ticket-available-cell,.cp365-ticket-description-cell) {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}
.cp365-ticket-details-grid :is(input:not([type='checkbox']):not([type='hidden']),select,textarea),
.cp365-ticket-sale-grid :is(input:not([type='checkbox']):not([type='hidden']),select,textarea) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}
.cp365-ticket-details-grid label,
.cp365-ticket-sale-grid label {
  display: block;
  text-align: left !important;
}
.cp365-ticket-details-grid .cp365-ticket-remove-cell :is(button,a,[role='button']) {
  white-space: nowrap;
  cursor: pointer;
}
/* A clear heading for each ticket's sale window, followed by two identical columns. */
.cp365-ticket-sale-grid {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 14px 18px !important;
  align-items: end !important;
  justify-content: stretch !important;
}
.cp365-ticket-sale-grid > .cp365-ticket-sale-heading {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align:left !important;
  padding-bottom: 0 !important;
}
.cp365-ticket-sale-grid > .cp365-ticket-sale-start-cell { grid-column: 1 !important; min-width:0 !important; width:100% !important; max-width:none !important; }
.cp365-ticket-sale-grid > .cp365-ticket-sale-end-cell { grid-column: 2 !important; min-width:0 !important; width:100% !important; max-width:none !important; }
.cp365-ticket-sale-grid > :is(.cp365-ticket-sale-start-cell,.cp365-ticket-sale-end-cell) :is(input,select) {
  width:100% !important;
  max-width:100% !important;
}
@media (max-width: 1100px) {
  .cp365-ticket-details-grid {
    grid-template-columns: minmax(0,2fr) minmax(110px,1fr) minmax(110px,1fr) !important;
  }
  .cp365-ticket-details-grid > .cp365-ticket-name-cell {grid-column:1 !important;}
  .cp365-ticket-details-grid > .cp365-ticket-price-cell {grid-column:2 !important;}
  .cp365-ticket-details-grid > .cp365-ticket-available-cell {grid-column:3 !important;}
  .cp365-ticket-details-grid > .cp365-ticket-description-cell {grid-column:1 / 3 !important;}
  .cp365-ticket-details-grid > .cp365-ticket-remove-cell {grid-column:3 !important;}
}
@media (max-width: 620px) {
  .cp365-ticket-details-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap:12px !important; }
  .cp365-ticket-details-grid > .cp365-ticket-name-cell,
  .cp365-ticket-details-grid > .cp365-ticket-description-cell { grid-column:1 / -1 !important; }
  .cp365-ticket-details-grid > .cp365-ticket-price-cell {grid-column:1 !important;}
  .cp365-ticket-details-grid > .cp365-ticket-available-cell {grid-column:2 !important;}
  .cp365-ticket-details-grid > .cp365-ticket-remove-cell {grid-column:1 / -1 !important; justify-content:flex-start !important;}
  .cp365-ticket-sale-grid { grid-template-columns:minmax(0,1fr) !important; }
  .cp365-ticket-sale-grid > :is(.cp365-ticket-sale-heading,.cp365-ticket-sale-start-cell,.cp365-ticket-sale-end-cell) {grid-column:1 !important;}
}
