.order-card { padding: 18px; border: 1px solid #e2e8f0; border-radius: 10px; background: #ffffff; }
.order-card-header { display: grid; grid-template-columns: 1fr; align-items: start; gap: 10px; }
.order-card-header.has-detail-link { grid-template-columns: minmax(0, 1fr) auto; }
.has-detail-link > .order-card-badges { grid-column: 1 / -1; }
.order-card-detail-link { grid-column: 2; grid-row: 1; color: #2563eb; font-size: 12px; font-weight: 700; white-space: nowrap; }
.order-card-identity { min-width: 0; }
.order-card-identity h3 { margin: 0; font-size: 16px; line-height: 1.45; }
.order-card-identity p { margin: 5px 0 0; color: #66758c; font-size: 12px; overflow-wrap: anywhere; }
.order-card-meta-item { overflow-wrap: anywhere; }
.order-card-badges { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 6px; }
.order-card-badge { padding: 4px 8px; border-radius: 999px; background: #f1f5f9; color: #52647d; font-size: 11px; font-weight: 750; white-space: nowrap; }
.order-card-badge.primary { background: #f1e8dd; color: #915b23; }
.order-card-badge.success { background: #e2f0e9; color: #286044; }
.order-card-badge.supplier { background: #e6edf5; color: #365f79; }
.order-card-badge.post { background: #eee8f5; color: #6f508d; }
.order-card-badge.danger { background: #f8e5e4; color: #a03430; }
.order-card-failure { margin-top: 14px; padding: 12px; border: 1px solid #edc5c2; border-radius: 10px; background: #fff3f2; color: #a03430; }
.order-card-failure > strong { font-size: 12px; }
.order-card-failure > p { margin: 5px 0 0; font-size: 13px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.order-card-content { margin-top: 14px; }
.order-card-remark { margin-top: 14px; padding: 10px 12px; border-radius: 8px; background: #f5f7fb; color: #40536f; }
.order-card-remark > strong { font-size: 12px; }
.order-card-remark > p { margin: 4px 0 0; font-size: 13px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.order-card-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; }
.order-card-fields.compact-quantity { grid-template-columns: minmax(0, 1fr) max-content; }
.order-card-field { min-width: 0; }
.order-card-field.wide { grid-column: 1 / -1; }
.order-card-field > span { display: block; margin-bottom: 3px; color: #66758c; font-size: 11px; font-weight: 650; }
.order-card-field > strong { display: block; color: #243650; font-size: 13px; font-weight: 700; line-height: 1.45; overflow-wrap: anywhere; }
.order-card-copy { display: inline-grid; width: 24px; height: 24px; margin-left: 4px; padding: 0; place-items: center; border: 0; border-radius: 5px; background: transparent; color: #66758c; vertical-align: middle; cursor: pointer; transition: background-color .15s ease, color .15s ease; }
.order-card-copy-icon { width: 15px; height: 15px; pointer-events: none; }
.order-card-copy-source { position: fixed; left: -9999px; top: 0; opacity: 0; pointer-events: none; }
.order-card-details { margin-top: 12px; border-top: 1px solid #e2e8f0; }
.order-card-details summary { padding-top: 12px; color: #52647d; cursor: pointer; font-size: 12px; font-weight: 700; }
.order-card-extra { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; padding-top: 12px; }
.order-card-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-top: 14px; padding-top: 12px; border-top: 1px solid #e2e8f0; }
.order-card-action { min-height: 42px; padding: 0 13px; border: 0; border-radius: 10px; font-size: 12px; font-weight: 750; }
.order-card-action.refund { background: #f8e5e4; color: #a03430; }
.order-card-action.booking-failed { background: #bc3535; color: #fff; }
.order-card-action.supplier-refund { background: #fff1d6; color: #8a5a00; }
.order-card-action.clear-chuanhuo { background: #fee2e2; color: #991b1b; }
.order-card-action.express { background: #e4eef5; color: #315f7c; }
.order-card-action.check { background: #e2f0e9; color: #286044; }
.order-card-action.arrange { background: #eee8f5; color: #6f508d; }
.order-card-action.tickets { background: #f1f5f9; color: #45564d; }
.order-card-action.repush { background: #fff0d9; color: #976116; }
.order-card-action:disabled { opacity: .52; cursor: not-allowed; }

@media (max-width: 700px) {
  .order-card { padding: 15px; }
  .order-card-meta-item { display: block; }
  .order-card-meta-separator { display: none; }
}

@media (max-width: 520px) {
  .order-card-header { grid-template-columns: 1fr; gap: 10px; }
  .order-card-badges { justify-content: flex-start; }
  .order-card-fields { gap: 11px 14px; }
  .order-card-extra { grid-template-columns: 1fr; }
  .order-card-field.wide { grid-column: auto; }
  .order-card-action { flex: 1 1 120px; }
}

.order-card { min-width: 0; }
.order-card-link { cursor: pointer; transition: border-color .15s ease, box-shadow .15s ease; }
.order-card-link:hover, .order-card-link:focus-visible { border-color: #93b4fc; box-shadow: 0 8px 24px #172b4d0d; }
.order-card-link .order-card-identity h3 a { color: inherit; text-decoration: none; }
.order-card-link:hover .order-card-identity h3 a, .order-card-link .order-card-identity h3 a:focus-visible { color: #1d4ed8; text-decoration: underline; }
.order-detail-card { margin-top: 16px; }
.order-detail-full-card .order-card-fields { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 700px) { .order-detail-full-card .order-card-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .order-detail-full-card .order-card-fields { grid-template-columns: 1fr; } }
.order-card-action { border-radius: 7px; }
.order-card-copy:hover { background: #e8eef6; color: #315f7c; }
.order-card-copy:focus-visible { outline: 2px solid #7aa6c2; outline-offset: 2px; }
.order-card-copy.is-success { background: #e2f0e9; color: #286044; }
.order-card-copy.is-error { background: #f8e5e4; color: #a03430; }
@media (pointer: coarse) { .order-card-copy { width: 32px; height: 32px; } }
