.ch101-trip-receipt {
  margin: 16px 0 20px;
  border: 2px solid var(--ch-ink, var(--ink, #141414));
  border-left: 8px solid var(--ch-yellow, var(--yellow, #ffcc00));
  border-radius: var(--radius-card, 0);
  background: #fffdf2;
  color: var(--ch-ink, var(--ink, #141414));
  padding: 16px;
  box-shadow: 4px 4px 0 rgba(20, 20, 20, .12);
}
.ch101-trip-receipt__head { display: flex; justify-content: space-between; gap: 16px; align-items: start; }
.ch101-trip-receipt__eyebrow { margin: 0 0 5px; color: var(--ch-grey-text, var(--muted, #74716a)); font: 700 9px/1.3 var(--font-mono, var(--mono, monospace)); letter-spacing: .09em; text-transform: uppercase; }
.ch101-trip-receipt h3 { margin: 0; font: 700 24px/1 var(--font-display, var(--display, sans-serif)); text-transform: uppercase; }
.ch101-trip-receipt__task { flex: none; padding: 4px 7px; background: var(--ch-yellow, var(--yellow, #ffcc00)); font: 700 9px var(--font-mono, var(--mono, monospace)); text-transform: uppercase; }
.ch101-trip-receipt__detail { margin: 10px 0 0; color: #55524d; font-size: 12px; line-height: 1.55; }
.ch101-trip-receipt__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.ch101-trip-receipt__field { display: grid; gap: 5px; color: var(--ch-grey-text, var(--muted, #74716a)); font: 700 9px var(--font-mono, var(--mono, monospace)); letter-spacing: .04em; text-transform: uppercase; }
.ch101-trip-receipt__field input, .ch101-trip-receipt__field select { width: 100%; min-height: 44px; border: 1px solid #aaa69d; border-radius: var(--radius-card, 0); background: #fff; color: #141414; padding: 9px 10px; font: 400 14px var(--font-body, var(--body, sans-serif)); text-transform: none; }
.ch101-trip-receipt__check { grid-column: 1 / -1; display: flex; align-items: center; gap: 10px; min-height: 44px; color: #3f3d39; font: 600 12px/1.45 var(--font-body, var(--body, sans-serif)); text-transform: none; }
.ch101-trip-receipt__check input { flex: none; width: 20px; height: 20px; margin: 0; accent-color: var(--ch-yellow, var(--yellow, #ffcc00)); }
.ch101-trip-receipt__actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-top: 14px; }
.ch101-trip-receipt__save { min-height: 46px; border: 2px solid var(--ch-ink, var(--ink, #141414)); border-radius: var(--radius-card, 0); background: var(--ch-yellow, var(--yellow, #ffcc00)); color: #141414; padding: 10px 14px; cursor: pointer; font: 700 10px var(--font-mono, var(--mono, monospace)); letter-spacing: .04em; text-transform: uppercase; }
.ch101-trip-receipt__save:hover, .ch101-trip-receipt__save:focus-visible { box-shadow: 3px 3px 0 #141414; outline: 2px solid #141414; outline-offset: 2px; }
.ch101-trip-receipt__save:disabled { cursor: default; opacity: .62; box-shadow: none; }
.ch101-trip-receipt__link { min-height: 44px; display: inline-flex; align-items: center; color: var(--ch-logic, var(--logic, #2563a8)); font: 700 10px var(--font-mono, var(--mono, monospace)); text-transform: uppercase; text-decoration: none; }
.ch101-trip-receipt__status { min-height: 18px; margin: 9px 0 0; color: var(--ch-proof, var(--proof, #1f8a52)); font: 700 10px/1.5 var(--font-mono, var(--mono, monospace)); }
.ch101-trip-receipt__status.is-error { color: var(--ch-warn, var(--risk, #d4322a)); }
.ch101-trip-receipt__fine { margin: 4px 0 0; color: var(--ch-grey-text, var(--muted, #74716a)); font: 400 9px/1.5 var(--font-mono, var(--mono, monospace)); }
.ch101-receipt-prompt { margin: 14px 0 18px; border: 1px dashed #aaa69d; background: #fff; padding: 12px 14px; color: var(--ch-grey-text, #74716a); font: 700 10px/1.5 var(--font-mono, monospace); text-transform: uppercase; }
@media (max-width: 600px) {
  .ch101-trip-receipt { padding: 14px 12px; }
  .ch101-trip-receipt__head { align-items: flex-start; }
  .ch101-trip-receipt__fields { grid-template-columns: 1fr; }
  .ch101-trip-receipt__check { grid-column: auto; }
  .ch101-trip-receipt__save { width: 100%; }
}
