.tvtrk-box{max-width:960px;margin:40px auto;padding:0;background:#fff;border:1px solid #e5e7eb;box-shadow:0 18px 50px rgba(15,23,42,.08);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033}
.tvtrk-box__head{padding:34px 34px 22px;border-bottom:1px solid #e8e8e8}
.tvtrk-kicker{font:700 12px/1.2 "IBM Plex Mono",monospace;letter-spacing:.14em;color:#9a741c}
.tvtrk-box h2{margin:9px 0 8px;font-size:clamp(26px,4vw,40px);line-height:1.08}
.tvtrk-box__head p{margin:0;color:#64748b}
.tvtrk-form{padding:24px 34px}
.tvtrk-form label{display:block;font:700 12px "IBM Plex Mono",monospace;letter-spacing:.1em;margin-bottom:8px}
.tvtrk-form__row{display:flex;gap:10px}
.tvtrk-form input{flex:1;min-width:0;border:1px solid #cbd5e1;padding:15px 16px;font:600 15px "IBM Plex Mono",monospace;text-transform:uppercase;background:#fff}
.tvtrk-form button{border:0;padding:0 23px;background:#172033;color:#fff;font-weight:700;cursor:pointer}
.tvtrk-alert{margin:0 34px 22px;padding:14px 16px;border-left:4px solid #b91c1c;background:#fff1f2;color:#7f1d1d}
.tvtrk-box__foot{margin:0;padding:0 34px 28px;font-size:12px;line-height:1.6;color:#7b8798}

.tvtrk-result{margin:0 34px 24px;border:1px solid #d9dee7;background:#fbfcfe}

.tvtrk-letterhead{display:flex;align-items:center;gap:18px;padding:20px 20px 16px;border-bottom:2px solid #172033}
.tvtrk-letterhead__logo{max-width:72px;max-height:72px;width:auto;height:auto;object-fit:contain;flex-shrink:0}
.tvtrk-letterhead__text{display:flex;flex-direction:column;gap:3px;flex:1}
.tvtrk-letterhead__text strong{font-size:16px;color:#172033;letter-spacing:.01em}
.tvtrk-letterhead__text span{font-size:12.5px;line-height:1.5;color:#64748b}
.tvtrk-letterhead__awb{text-align:right;flex-shrink:0}
.tvtrk-letterhead__awb .tvtrk-kicker{display:block}
.tvtrk-letterhead__awb strong{display:block;font-size:20px;color:#172033;letter-spacing:.02em;margin-top:2px}

.tvtrk-download-btn{display:inline-block;margin:16px 20px 0;padding:11px 20px;background:#9a741c;color:#fff;font:700 12px "IBM Plex Mono",monospace;letter-spacing:.06em;text-decoration:none;text-transform:uppercase;border:1px solid #9a741c}
.tvtrk-download-btn:hover,.tvtrk-download-btn:focus{background:#fff;color:#9a741c}

.tvtrk-result__top{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 20px 0}
.tvtrk-result__top span{font:700 11px "IBM Plex Mono",monospace;letter-spacing:.12em;color:#64748b}
.tvtrk-result__top strong{font:700 17px "IBM Plex Mono",monospace}

.tvtrk-result__status{margin:12px 20px 0;padding:11px 13px;font-weight:800;border:1px solid #b7d7c0;background:#edf8f0;color:#176534;display:inline-block}
.tvtrk-result__status--transit,.tvtrk-result__status--booked{background:#eef2ff;border-color:#c7d2fe;color:#3730a3}
.tvtrk-result__status--arrived{background:#fff7ed;border-color:#fed7aa;color:#9a3412}
.tvtrk-result__status--delivered{background:#edf8f0;border-color:#b7d7c0;color:#176534}
.tvtrk-result__status--hold{background:#fffbeb;border-color:#fde68a;color:#92400e}
.tvtrk-result__status--cancelled{background:#fff1f2;border-color:#fecdd3;color:#9f1239}
.tvtrk-result__status--customs{background:#f3e8ff;border-color:#e9d5ff;color:#6b21a8}

.tvtrk-qr{padding:16px 20px 4px;display:flex;align-items:center;gap:14px}
.tvtrk-qr img{display:block;width:110px;height:110px;border:1px solid #e5e7eb;padding:6px;background:#fff}
.tvtrk-qr__hint{font-size:12.5px;color:#64748b}

.tvtrk-status-note{margin:10px 20px 0;padding:11px 13px;background:#f4f6f8;border-left:3px solid #9a741c;color:#334155;font-size:14px}

.tvtrk-timeline{list-style:none;margin:0;padding:0}
.tvtrk-timeline__item{position:relative;display:flex;gap:12px;padding:0 0 18px 4px}
.tvtrk-timeline__item:last-child{padding-bottom:2px}
.tvtrk-timeline__item::before{content:'';position:absolute;left:7px;top:16px;bottom:0;width:1px;background:#e2e8f0}
.tvtrk-timeline__item:last-child::before{display:none}
.tvtrk-timeline__dot{flex-shrink:0;width:15px;height:15px;margin-top:2px;border-radius:50%;background:#fff;border:3px solid #9a741c}
.tvtrk-timeline__body{display:flex;flex-direction:column;gap:6px 10px;width:100%}
.tvtrk-timeline__status{font-size:12.5px;font-weight:800;padding:2px 9px;border-radius:3px;background:#eef2ff;color:#3730a3}
.tvtrk-timeline__status--booked,.tvtrk-timeline__status--transit{background:#eef2ff;color:#3730a3}
.tvtrk-timeline__status--customs{background:#f3e8ff;color:#6b21a8}
.tvtrk-timeline__status--arrived{background:#fff7ed;color:#9a3412}
.tvtrk-timeline__status--delivered{background:#edf8f0;color:#176534}
.tvtrk-timeline__status--hold{background:#fffbeb;color:#92400e}
.tvtrk-timeline__status--cancelled{background:#fff1f2;color:#9f1239}
.tvtrk-timeline__when{font:600 12.5px "IBM Plex Mono",monospace;color:#172033}
.tvtrk-timeline__carrier{font:600 12px "IBM Plex Mono",monospace;color:#7b8798}

/* Location and Destination are laid out side by side ("horizontally") for
   each checkpoint, each in its own labelled block with its own status. */
.tvtrk-timeline__route{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;width:100%}
.tvtrk-timeline__leg{display:flex;flex-direction:column;gap:3px;min-width:150px}
.tvtrk-timeline__leg-label{font:700 10px "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#94a3b8}
.tvtrk-timeline__leg-arrow{font-size:16px;color:#9a741c;font-weight:700}
.tvtrk-timeline__location,.tvtrk-timeline__destination{font-size:14px;color:#172033}

.tvtrk-route{display:flex;align-items:center;gap:16px;margin:18px 20px 0;padding:16px 18px;background:#f8fafc;border:1px solid #e2e8f0}
.tvtrk-route>div{flex:1}
.tvtrk-route span{display:block;font:700 11px "IBM Plex Mono",monospace;letter-spacing:.1em;color:#64748b;margin-bottom:4px}
.tvtrk-route strong{font-size:16px;color:#172033}
.tvtrk-route__arrow{flex:0;font-size:20px;color:#9a741c;font-weight:700}

.tvtrk-result__section{padding:14px 20px 4px}
.tvtrk-result__section h3{margin:4px 0 8px;font-size:15px;color:#172033;text-transform:uppercase;letter-spacing:.04em}
.tvtrk-result__section dl{margin:0}
.tvtrk-result__section dl>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #edf0f4}
.tvtrk-result__section dt{font-weight:600;color:#64748b}
.tvtrk-result__section dd{margin:0;text-align:right;font-weight:700;max-width:65%;white-space:normal}
.tvtrk-notes{padding:14px 16px;background:#f8fafc;border:1px solid #e2e8f0;line-height:1.65;color:#334155;margin-top:8px}

.tvtrk-signature-section{margin:16px 20px 0;padding-top:16px;border-top:1px solid #e5e7eb}
.tvtrk-signature-section h3{margin:0 0 12px;font-size:15px;color:#172033;text-transform:uppercase;letter-spacing:.04em}
.tvtrk-signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tvtrk-signature-card{min-height:120px;padding:16px;border:1px solid #cbd5e1;background:#fff;display:flex;flex-direction:column;gap:9px;font-size:13px}
.tvtrk-signature-card strong{font-size:12px;letter-spacing:.1em}
.tvtrk-signature-image{display:block;max-width:230px;max-height:70px;width:auto;height:auto;object-fit:contain;margin:0 0 4px}
.tvtrk-place-of-issue{margin-top:14px;font-size:13px;color:#64748b}

.tvtrk-result__issuer{margin:18px 20px 20px;padding-top:12px;border-top:1px solid #edf0f4;font-size:12px;color:#64748b}

@media(max-width:640px){
  .tvtrk-box__head,.tvtrk-form,.tvtrk-box__foot{padding-left:20px;padding-right:20px}
  .tvtrk-result{margin-left:20px;margin-right:20px}
  .tvtrk-form__row{flex-direction:column}
  .tvtrk-form button{padding:14px}
  .tvtrk-letterhead{flex-direction:column;align-items:flex-start}
  .tvtrk-letterhead__awb{text-align:left}
  .tvtrk-result__top{flex-direction:column;align-items:flex-start}
  .tvtrk-result__section dl>div{flex-direction:column;align-items:flex-start}
  .tvtrk-result__section dd{text-align:left;max-width:100%}
  .tvtrk-route{flex-direction:column;align-items:flex-start}
  .tvtrk-timeline__route{flex-direction:column;align-items:flex-start}
  .tvtrk-timeline__leg{min-width:0}
  .tvtrk-signature-grid{grid-template-columns:1fr}
}
