.np-delivery { --np-bg: #fff; --np-text: #222; --np-muted: #555; --np-line: #ddd; --np-row: #f6f6f6; --np-red: #c52228; color: var(--np-text); letter-spacing: 0; }
.dark-theme .np-delivery { --np-bg: #181818; --np-text: #fff; --np-muted: #ccc; --np-line: #424242; --np-row: #222; --np-red: #ff7579; }
.np-delivery [hidden] { display: none !important; }
.np-branches { background: var(--np-bg); padding: 24px 0; margin: 24px 0 8px; border-top: 3px solid #e3262e; border-bottom: 1px solid var(--np-line); }
.np-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 20px; }
.np-delivery h2, .np-delivery #np-tracking-title { color: var(--np-text); font-size: 22px; font-weight: 600; line-height: 1.4; margin: 0; overflow-wrap: anywhere; letter-spacing: 0; }
.np-delivery p { margin: 0; }
.np-delivery .np-carrier { color: var(--np-red); font-size: 14px; font-weight: 600; margin-bottom: 6px; }
.np-carrier i { margin-right: 6px; }
.np-table-scroll { max-height: 420px; overflow: auto; scrollbar-color: #777 var(--np-bg); }
.np-table { width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 0; font-size: 14px; line-height: 1.55; color: var(--np-text); }
.np-table th, .np-table td { text-align: left; padding: 16px; border-bottom: 1px solid var(--np-line); vertical-align: top; overflow-wrap: anywhere; }
.np-table thead th { position: sticky; top: 0; background: var(--np-row); z-index: 1; font-weight: 600; }
.np-table th:first-child { width: 115px; }
.np-table th:last-child { width: 160px; }
.np-table tbody tr:nth-child(even) { background: var(--np-row); }
.np-delivery a { color: var(--np-red); text-decoration: underline; text-underline-offset: 3px; }
.np-table td a { display: block; font-size: 13px; margin-top: 5px; width: fit-content; }
.np-delivery a:hover { color: var(--np-text); }
.np-delivery .np-note, .np-delivery .np-empty, .np-no-results { font-size: 14px; line-height: 1.6; color: var(--np-muted); padding-top: 16px; }
.np-source { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; margin-top: 12px; font-size: 12px; line-height: 1.5; color: var(--np-muted); }
.np-delivery input { box-sizing: border-box; border: 1px solid var(--np-line); border-radius: 4px; background: var(--np-bg); color: var(--np-text); font: inherit; font-size: 16px; min-width: 0; height: 46px; padding: 10px 12px; box-shadow: none; }
.np-delivery input::placeholder { color: var(--np-muted); opacity: 1; }
.np-search { flex: 0 1 290px; margin: 0; }
.np-search input { width: 100%; }
.np-delivery :is(input,button,a,[tabindex]):focus-visible { outline: 2px solid var(--np-red); outline-offset: 3px; }
.np-delivery.np-tracking { --np-bg: #242424; --np-text: #fff; --np-muted: #ccc; --np-line: #666; --np-red: #ff7579; background: #181818; color: #fff; border-top: 3px solid #e3262e; border-bottom: 1px solid #424242; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 24px; padding: 24px; margin: 24px 0; }
.np-tracking-heading { display: flex; align-items: center; gap: 16px; min-width: 0; }
.np-tracking-icon { color: #ff7579; font-size: 28px; flex: 0 0 34px; }
.np-tracking-heading p { color: #ccc; font-size: 14px; line-height: 1.5; margin-top: 4px; }
.np-tracking-form { min-width: 0; }
.np-tracking-form label { display: block; color: #fff; font-size: 13px; margin-bottom: 6px; }
.np-tracking-controls { display: flex; gap: 8px; }
.np-tracking-controls input { flex: 1; width: 100%; }
.np-tracking-controls button { border: 0; border-radius: 4px; background: #c52228; color: #fff; height: 46px; padding: 0 18px; font-size: 14px; font-weight: 600; flex: 0 0 auto; cursor: pointer; }
.np-tracking-controls button:hover { background: #a8171d; }
.np-tracking-controls button i { margin-right: 4px; }
.np-tracking-form p { color: #ccc; font-size: 12px; line-height: 1.5; margin-top: 7px; }
@media (max-width: 767px) {
    .np-delivery.np-tracking { grid-template-columns: minmax(0,1fr); padding: 20px 16px; gap: 18px; }
    .np-delivery h2, .np-delivery #np-tracking-title { font-size: 20px; }
    .np-section-heading { align-items: stretch; flex-direction: column; gap: 14px; }
    .np-search { flex: auto; }
    .np-table th, .np-table td { padding: 12px 6px; font-size: 13px; }
    .np-table th:first-child { width: 66px; }
    .np-table th:last-child { width: 84px; }
    .np-tracking-controls button { padding: 0 12px; }
}
@media (max-width: 359px) { .np-tracking-controls { flex-wrap: wrap; } .np-tracking-controls button { width: 100%; } }
