/* Event ticketing — extras on top of checkout.css */

/*
 * checkout.css makes the summary sidebar sticky at every width. Once the
 * layout collapses to one column (it is ordered first on mobile) a sticky
 * sidebar floats over the form cards as you scroll. Only stick it when it
 * sits beside the form. Scoped to ticket pages: this file is not loaded by
 * the shop checkout.
 */
@media (max-width: 900px) {
  .checkout-sidebar {
    position: static;
  }
}

.tk-meta { margin: .25rem 0; color: #334155; font-size: .95rem; }
.tk-meta i { width: 1.25rem; color: var(--green, #16a34a); }

.tk-hint { display: block; margin-top: .35rem; color: #64748b; font-size: .8rem; }
.tk-hint a { color: var(--green, #16a34a); }

.tk-warn {
  margin: 1rem 0 0; padding: .6rem .8rem; border-radius: 8px;
  background: #fffbeb; color: #92400e; font-size: .85rem;
}
.tk-warn i { margin-right: .35rem; }

.tk-member-box { margin: .25rem 0 1rem; }
.tk-member-status { font-size: .9rem; margin-bottom: .5rem; }
.tk-member-status--ok { color: #166534; font-weight: 600; }
.tk-member-status--info { color: #334155; }
.tk-member-status a { color: var(--green, #16a34a); font-weight: 600; }

.tk-details { border: 1px dashed #cbd5e1; border-radius: 8px; padding: .6rem .8rem; }
.tk-details summary { cursor: pointer; font-weight: 600; color: #334155; }
.tk-details .btn { margin-top: .5rem; }

.tk-check { display: flex; gap: .5rem; align-items: center; margin: .5rem 0 1rem; cursor: pointer; font-weight: 600; }

.tk-attendees { display: grid; gap: .75rem; }
.tk-attendee { border: 1px solid #e2e8f0; border-radius: 10px; padding: .75rem; }
.tk-attendee__head { display: flex; justify-content: space-between; align-items: center; margin-bottom: .4rem; font-size: .8rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #64748b; }
.tk-attendee__badge { background: #dcfce7; color: #166534; border-radius: 999px; padding: .1rem .6rem; font-size: .7rem; }
.tk-attendee__row { display: grid; grid-template-columns: 1fr; gap: .5rem; }
@media (min-width: 640px) { .tk-attendee__row { grid-template-columns: 1fr 1fr; } }
.tk-attendee input[readonly] { background: #f1f5f9; cursor: not-allowed; }

.tk-summary-event { font-weight: 700; margin-bottom: .75rem; }
.tk-summary-lines .checkout-summary__row small { display: block; color: #64748b; font-weight: 400; }

.tk-join {
  margin: .75rem 0; padding: .65rem .8rem; border-radius: 8px;
  background: #ecfdf5; color: #065f46; font-size: .9rem;
}
.tk-join a { color: #047857; font-weight: 700; }

.tk-price-changed {
  margin-top: .75rem; padding: .65rem .8rem; border-radius: 8px;
  background: #fffbeb; color: #92400e; font-size: .9rem;
}

/* Order page */
.tk-status { text-align: center; padding: 1.5rem 1rem; }
.tk-status__icon { font-size: 2.5rem; margin-bottom: .5rem; }
.tk-status--paid .tk-status__icon { color: #16a34a; }
.tk-status--wait .tk-status__icon { color: #d97706; }
.tk-status--bad .tk-status__icon { color: #dc2626; }
.tk-status h2 { margin: 0 0 .5rem; }
.tk-countdown { font-variant-numeric: tabular-nums; font-weight: 700; }

.tk-ticket {
  border: 1px solid #e2e8f0; border-radius: 10px; padding: .75rem 1rem; margin-bottom: .6rem;
  display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap;
}
.tk-ticket__name { font-weight: 700; }
.tk-ticket__ref { font-family: ui-monospace, monospace; font-size: .85rem; color: #475569; }
.tk-ticket__tag { font-size: .75rem; color: #166534; font-weight: 600; }
.tk-kv { display: flex; justify-content: space-between; gap: 1rem; padding: .35rem 0; border-bottom: 1px solid #f1f5f9; }
.tk-kv span:first-child { color: #64748b; }
