/* NTC workspace. Shared presentation layer, following the ntclogistics brand.
   Navigation: graphite. Content: neutral canvas. Brand red: actions and selection.
   Radius: 12px surfaces, 6px controls. No changes to data or form contracts. */
:root {
  --ntc-red:#d71920;
  --ntc-red-dark:#b8050f;
  --ntc-red-soft:#fdf0f0;
  --portal-focus:#d71920;
  --portal-ink:#1f1f1f;
  --portal-night:#191919;
  --portal-dark-elevated:#303030;
  --portal-text:#252525;
  --portal-muted:#656565;
  --portal-soft:#f5f5f5;
  --portal-subtle:#fafafa;
  --portal-line:#e5e5e5;
  --portal-line-subtle:#eeeeee;
  --portal-control-border:#d8d8d8;
  --portal-secondary-strong:#767676;
  --radius-card:.75rem;
  --radius-inner:.4rem;
}
.portal-body { background:var(--portal-soft);font-size:.9375rem;line-height:1.55; }
.portal-body h2,.portal-body h3,.portal-body h4 { letter-spacing:-.025em;text-wrap:balance; }
.portal-body p { text-wrap:pretty; }
.portal-body strong,.portal-body td,.portal-body dd { font-variant-numeric:tabular-nums; }
.portal-body .portal-content { padding-top:2rem;padding-bottom:2.5rem; }
.portal-body .portal-card { border:1px solid var(--portal-line);border-radius:0;box-shadow:none; }
/* Shipment detail: status and location above the details, history to the side. */
.route-shipment .shipment-page-actions { flex-wrap:wrap; }
.route-shipment .shipment-page-actions .shipment-label-action { margin-left:auto;padding:.45rem .75rem;border:1px solid var(--portal-control-border);border-radius:0;background:var(--portal-surface);color:var(--portal-text);white-space:nowrap; }
.route-shipment .shipment-page-actions .shipment-label-action i { color:var(--portal-accent-text); }
.route-shipment .shipment-page-actions .shipment-label-action:hover { border-color:var(--ntc-red);background:var(--ntc-red-soft);color:var(--portal-accent-text); }
.shipment-detail-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(19rem,28%);gap:1rem;align-items:start; }
.shipment-detail-main,.shipment-detail-side { display:flex;flex-direction:column;gap:1rem;min-width:0; }
.shipment-summary-card { grid-area:summary;display:flex;align-items:center;justify-content:space-between;gap:2rem;min-width:0;padding:1.5rem 1.75rem; }
.shipment-summary-identity { min-width:0; }
.shipment-summary-label { display:block;color:var(--portal-muted);font-size:.78rem;font-weight:600;letter-spacing:.02em; }
.shipment-summary-identity h2 { margin:.2rem 0 .35rem;font-size:clamp(1.5rem,2.2vw,2rem);font-weight:700;line-height:1.15;overflow-wrap:anywhere;font-variant-numeric:tabular-nums; }
.shipment-summary-identity p { margin:0;color:var(--portal-muted);font-size:.85rem; }
.shipment-summary-identity p strong { color:var(--portal-text);font-weight:600; }
.shipment-summary-state { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,27rem);flex:0 1 27rem;min-width:0;padding:.9rem 1rem;border:1px solid var(--portal-line-subtle);border-radius:0;background:var(--portal-subtle); }
.shipment-summary-status,.shipment-summary-location { display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;min-width:0; }
.shipment-summary-status { padding-right:1rem; }
.shipment-summary-location { border-left:1px solid var(--portal-line);padding-left:1rem; }
.shipment-summary-state .shipment-status { align-items:stretch;width:100%; }
.shipment-summary-state .status-badge { display:flex;align-items:center;width:100%;min-height:3rem;text-align:left;overflow-wrap:anywhere; }
.shipment-detail-card { grid-area:details;min-width:0;overflow:hidden; }
.shipment-detail-card .card-topline h2,.shipment-history-card .card-topline h2 { font-size:1rem;margin:0; }
.shipment-detail-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;padding:1.25rem; }
.shipment-detail-card .detail-section { min-width:0;border:1px solid var(--portal-line-subtle);border-radius:0;background:var(--portal-subtle);padding:1.1rem 1.2rem; }
.shipment-detail-card .detail-section h3 { display:flex;align-items:center;margin:0 0 .7rem;font-size:.9rem;font-weight:700;gap:.55rem; }
.shipment-detail-card .detail-section h3 span { display:grid;place-items:center;width:1.7rem;height:1.7rem;border:1px solid var(--portal-line-subtle);border-radius:0;background:var(--portal-surface);color:var(--portal-accent-text);font-size:.9rem; }
.shipment-detail-card .detail-section dl { margin:0; }
.shipment-detail-card .detail-section dl div { display:grid;grid-template-columns:minmax(5.5rem,.7fr) minmax(0,1.3fr);align-items:start;gap:.65rem;border-bottom:1px solid var(--portal-line-subtle);padding:.55rem 0; }
.shipment-detail-card .detail-section dl div:last-child { border-bottom:0; }
.shipment-detail-card .detail-section dt { color:var(--portal-muted);font-size:.8rem;font-weight:500; }
.shipment-detail-card .detail-section dd { margin:0;font-size:.875rem;font-weight:600;text-align:right;overflow-wrap:anywhere; }
.shipment-detail-card .detail-section:last-child:nth-child(odd) { grid-column:1/-1; }
.shipment-detail-card .detail-section:last-child:nth-child(odd) dl { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem; }
.shipment-history-card { grid-area:history;min-width:0;overflow:hidden; }
.shipment-history-list { list-style:none;margin:0;padding:1.35rem 1.5rem 1.35rem 1.8rem; }
.shipment-history-item { position:relative;border-left:1px solid var(--portal-line);padding:0 0 1.25rem 1.1rem; }
.shipment-history-item:last-child { border-left-color:transparent;padding-bottom:0; }
.shipment-history-marker { position:absolute;top:.26rem;left:-.33rem;width:.6rem;height:.6rem;border-radius:50%;background:var(--portal-control-border);box-shadow:0 0 0 .2rem var(--portal-surface); }
.shipment-history-item:first-child .shipment-history-marker { background:var(--ntc-red); }
.shipment-history-item strong { display:block;font-size:.88rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere; }
.shipment-history-item time { display:block;margin-top:.2rem;color:var(--portal-muted);font-size:.8rem;font-variant-numeric:tabular-nums; }
.shipment-history-empty,.shipment-history-note { margin:0;padding:1.25rem 1.5rem;color:var(--portal-muted);font-size:.875rem; }
.shipment-history-note { border-top:1px solid var(--portal-line-subtle);padding-block:.75rem; }
@media(max-width:1199.98px) {
  .shipment-detail-grid { grid-template-columns:1fr; }
  .shipment-detail-card .detail-section:last-child:nth-child(odd) dl { grid-template-columns:1fr; }
}
@media(max-width:991.98px) {
  .shipment-detail-layout { grid-template-columns:minmax(0,1fr);grid-template-areas:"summary" "history" "details"; }
  .shipment-detail-main,.shipment-detail-side { display:contents; }
  .shipment-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .shipment-detail-card .detail-section:last-child:nth-child(odd) dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767.98px) {
  .shipment-summary-card { align-items:flex-start;flex-direction:column;gap:1rem;padding:1.25rem; }
  .shipment-summary-state { width:100%;flex-basis:auto;padding:.8rem; }
  .shipment-summary-status { padding-right:.7rem; }
  .shipment-summary-location { padding-left:.7rem; }
  .shipment-detail-grid { grid-template-columns:1fr;gap:.75rem;padding:1rem; }
  .shipment-detail-card .detail-section:last-child:nth-child(odd) dl { grid-template-columns:1fr; }
  .shipment-detail-card .detail-section { padding:1rem; }
  .shipment-detail-card .detail-section dl div { grid-template-columns:minmax(6rem,.8fr) minmax(0,1.2fr);gap:.5rem; }
  .shipment-detail-card .detail-section dl .detail-address-row { grid-template-columns:minmax(0,1fr);gap:.1rem; }
  .shipment-detail-card .detail-section .detail-address-row dd { text-align:left; }
  .shipment-history-list { padding:1.25rem 1.25rem 1.25rem 1.6rem; }
}
@media(max-width:359.98px) {
  .shipment-summary-state { grid-template-columns:1fr; }
  .shipment-summary-status { padding-right:0;padding-bottom:.75rem; }
  .shipment-summary-location { border-left:0;border-top:1px solid var(--portal-line);padding:.75rem 0 0; }
}
.portal-body .card-topline { padding:1.1rem 1.5rem;border-bottom:1px solid var(--portal-line-subtle); }
.portal-body .card-topline h2 { font-size:1.05rem; }
.portal-body .btn { border-radius:0;font-size:.875rem;font-weight:600;min-height:2.75rem;padding:.65rem 1rem;letter-spacing:0;box-shadow:none;transition:background-color .18s,transform .18s; }
.portal-body .btn-primary { --bs-btn-bg:var(--ntc-red);--bs-btn-border-color:var(--ntc-red);--bs-btn-hover-bg:var(--ntc-red-dark);--bs-btn-hover-border-color:var(--ntc-red-dark);background:var(--ntc-red);border-color:var(--ntc-red);color:var(--portal-on-dark); }
.portal-body .btn-primary:hover { background:var(--ntc-red-dark);border-color:var(--ntc-red-dark); }
.portal-body .btn-outline-secondary { background:var(--portal-surface);border-color:var(--portal-control-border);color:var(--portal-text); }
.portal-body .btn-outline-secondary:hover { background:var(--portal-soft);border-color:var(--portal-muted); }
.portal-body .btn:active { transform:translateY(1px); }
.portal-body .form-control,.portal-body .form-select { min-height:2.8rem;border-radius:0;border-color:var(--portal-control-border);font-size:.9375rem;padding-block:.65rem;background-color:var(--portal-surface);box-shadow:none; }
.portal-body .form-control:focus,.portal-body .form-select:focus { border-color:var(--ntc-red);box-shadow:0 0 0 3px var(--ntc-red-soft); }
.portal-body label { font-size:.875rem;font-weight:600; }
.portal-body .input-group-text { border-color:var(--portal-control-border);background:var(--portal-subtle); }
.portal-body .alert { border-radius:0;font-size:.875rem;line-height:1.6; }
.portal-body .empty-state { padding:3rem 1.5rem; }
.portal-body .empty-state h3 { font-size:1.15rem; }
.portal-body :is(a,button,summary):focus-visible { outline:2px solid var(--portal-focus);outline-offset:3px; }
@media(min-width:1200px) {
  .portal-body:has(.portal-sidebar) { padding-left:14.5rem; }
  .portal-body .portal-sidebar { width:14.5rem;padding:1.7rem .85rem 1rem;gap:2.2rem;background:var(--portal-ink);border:0; }
  .portal-sidebar .sidebar-brand { padding:.5rem .85rem; }
  .portal-sidebar .sidebar-brand img { width:8.8rem; }
  .portal-sidebar .sidebar-link { min-height:2.9rem;border-radius:0;font-size:.875rem;padding:.65rem .85rem;border-left:3px solid transparent; }
  .portal-sidebar .sidebar-link.is-active { background:var(--portal-dark-elevated);border-left-color:var(--ntc-red); }
  .portal-sidebar .sidebar-link.is-active>i { color:var(--portal-on-dark); }
  .portal-sidebar .sidebar-footer .navigation-contacts { padding:1rem .5rem; }
  .portal-sidebar .navigation-contacts a { font-size:.875rem;min-height:2.3rem; }
  .portal-sidebar .sidebar-account { padding:1rem .5rem 0;gap:.4rem; }
  .portal-body:has(.portal-sidebar) .portal-container { width:100%;max-width:none;padding-inline:clamp(1.5rem,2vw,2.5rem); }
  .shipment-workspace .shipment-filter-card { grid-template-columns:minmax(0,1fr) minmax(14rem,20rem) auto; }
  .shipment-workspace .shipment-filter-card>div { min-width:0; }
}
/* Home dashboard: grouped statistics and concise task cards. */
.route-dashboard .home-workspace { gap:1.25rem; }
.home-workspace .home-overview { overflow:hidden; }
.home-overview .home-overview-heading { flex-wrap:wrap;padding:1.15rem 1.5rem;margin:0;border-bottom:1px solid var(--portal-line-subtle); }
.home-overview .home-overview-heading h2 { font-size:1.25rem;font-weight:700; }
.home-overview-period { color:var(--portal-muted);font-size:.78rem;font-weight:500; }
.home-overview .shipment-overview-grid { grid-template-columns:minmax(0,1fr) 12rem;gap:2rem;padding:1.6rem 1.75rem; }
.home-overview .home-donut { grid-column:2;grid-row:1;width:12rem; }
.home-overview .shipment-phase-copy { grid-column:1;grid-row:1; }
.shipment-phase-copy h3 { font-weight:500;color:var(--portal-muted);font-size:.875rem; }
.shipment-phase-link { padding:.85rem 0; }
.shipment-phase-link strong { font-size:1.6rem; }
.shipment-total strong { font-size:2.4rem; }
.shipment-phase-copy>p { max-width:none; }
.home-overview .shipment-action-panel { border-radius:0;border-top:1px solid var(--portal-line);padding:1.25rem 1.75rem;background:var(--ntc-red-soft); }
.home-overview .shipment-action-panel.is-clear { background:var(--portal-subtle); }
.shipment-action-content { margin-top:.8rem; }
.shipment-action-content>strong { font-size:2rem; }
.shipment-action-content a { border-radius:0; }
/* Shortcuts stay visible without competing with the shipment summary. */
.portal-usage { min-width:0;display:grid;gap:.85rem; }
.portal-usage-heading { display:flex;align-items:end;justify-content:space-between;gap:2rem; }
.portal-usage-heading>div { display:grid;gap:.25rem; }
.portal-usage-kicker { color:var(--portal-accent-text);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase; }
.portal-usage-heading h2 { margin:0;font-size:1.25rem;font-weight:650; }
.portal-usage-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem; }
.portal-usage-item { min-width:0;min-height:10.5rem;display:grid;grid-template-columns:2.5rem minmax(0,1fr);grid-template-rows:auto 1fr;align-items:start;gap:.9rem;padding:1.15rem;border:1px solid var(--portal-line);border-radius:0;background:var(--portal-surface);color:var(--portal-text);text-decoration:none;transition:border-color .18s ease,background-color .18s ease,transform .18s ease; }
.portal-usage-icon { width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:0;background:var(--portal-subtle);color:var(--portal-accent-text);font-size:1.15rem;transition:background-color .18s ease; }
.portal-usage-copy { min-width:0;grid-column:1/-1;display:grid;gap:.3rem; }
.portal-usage-copy strong { font-size:.95rem;font-weight:650;line-height:1.35; }
.portal-usage-copy small { color:var(--portal-muted);font-size:.8rem;line-height:1.45;text-wrap:pretty; }
.portal-usage-action { grid-column:2;grid-row:1;justify-self:end;align-self:start;color:var(--portal-muted);font-size:1rem; }
.portal-usage-action i { transition:transform .18s ease; }
.portal-usage-item:hover { border-color:var(--portal-control-border);background:var(--portal-subtle);transform:translateY(-2px); }
.portal-usage-item:hover .portal-usage-icon { background:var(--ntc-red-soft); }
.portal-usage-item:hover .portal-usage-action i { transform:translate(2px,-2px); }
.portal-usage-item:focus-visible { position:relative;z-index:1;outline:2px solid var(--portal-focus);outline-offset:-3px; }
.route-dashboard .home-money { overflow:hidden; }
.route-dashboard .home-money .home-overview-heading { padding:1.15rem 1.5rem; }
.route-dashboard .home-money-stages { gap:.75rem;padding:0 1.5rem 1.5rem; }
.route-dashboard .home-money-stage { gap:.9rem;padding:1.1rem 1.2rem;border:1px solid var(--portal-line);border-radius:0;transition:border-color .18s ease,background-color .18s ease; }
.route-dashboard .home-money-stage + .home-money-stage { border-left:1px solid var(--portal-line); }
.route-dashboard .home-money-stage:hover { border-color:var(--portal-control-border);background:var(--portal-subtle); }
.route-dashboard .home-money-heading>strong { font-size:.95rem; }
.route-dashboard .home-money-heading small { font-size:.78rem; }
.route-dashboard .home-money-values { gap:.75rem 1.75rem; }
.route-dashboard .home-money-values>span strong { font-size:1.3rem;letter-spacing:-.025em; }
@media(max-width:991.98px) {
  .portal-usage-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767.98px) {
  .route-dashboard .home-money .home-overview-heading { padding:1rem; }
  .route-dashboard .home-money-stages { padding:0 1rem 1rem; }
  .portal-usage-grid { grid-template-columns:minmax(0,1fr); }
  .portal-usage-item { grid-template-columns:2.5rem minmax(0,1fr) 1rem;grid-template-rows:auto;align-items:center;gap:.75rem; }
  .portal-usage-copy { grid-column:2;grid-row:1; }
  .portal-usage-action { grid-column:3;grid-row:1; }
}
.home-workspace .home-api-disclosure { margin:0; }
.home-api-disclosure>summary { padding:1rem 1.5rem; }
/* Search and reports: one toolbar, neutral column headings, compact readable rows. */
.home-flow-summary { display:grid;grid-template-columns:minmax(0,1fr) minmax(14rem,18rem);gap:1.25rem;align-items:stretch;padding:1.5rem; }
.home-flow-main { display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem;min-width:0;padding:.25rem 0; }
.home-flow-total { display:flex;align-items:baseline;gap:.8rem; }
.home-flow-total>strong { font-size:3.65rem;line-height:1;letter-spacing:-.06em;font-weight:700; }
.home-flow-total>span,.home-flow-empty { font-size:.875rem;color:var(--portal-muted);margin:0; }
.home-flow-distribution { min-width:0; }
.home-flow-caption { display:block;margin-bottom:.6rem;color:var(--portal-muted);font-size:.76rem;font-weight:600; }
.home-flow-bar { display:block;width:100%;height:.75rem;border-radius:0;overflow:hidden; }
.home-flow-metrics { display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.6rem;margin:1rem 0 0; }
.home-flow-metrics>div { padding-left:.75rem;border-left:1px solid var(--portal-line); }
.home-flow-metrics dt { display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:var(--portal-muted); }
.home-flow-metrics dd { display:flex;align-items:baseline;gap:.65rem;margin:.4rem 0 0; }
.home-flow-metrics dd strong { font-size:1.65rem;letter-spacing:-.035em; }
.home-flow-metrics dd small { font-size:.875rem;color:var(--portal-muted); }
.home-flow-bar .phase-unknown { fill:var(--portal-line); }
.home-flow-metrics .phase-unknown { background:var(--portal-line); }
.home-attention-card { display:flex;flex-direction:column;min-width:0;min-height:13.5rem;padding:1.15rem 1.25rem;border:1px solid var(--portal-line);border-radius:0;background:var(--portal-subtle);color:var(--portal-text);text-decoration:none;transition:background-color .18s,border-color .18s,transform .18s; }
.home-attention-card.has-returns { border-color:var(--ntc-red-dark);background:var(--ntc-red-dark);color:var(--portal-on-dark); }
.home-attention-heading { display:flex;align-items:center;gap:.55rem;font-size:.9rem;font-weight:700; }
.home-attention-heading>i:first-child { font-size:1.15rem; }
.home-attention-heading>i:last-child { margin-left:auto;font-size:1rem;transition:transform .18s; }
.home-attention-card>strong { margin-top:auto;font-size:3.7rem;font-weight:700;letter-spacing:-.06em;line-height:1; }
.home-attention-card>small { margin-top:.35rem;color:var(--portal-muted);font-size:.82rem; }
.home-attention-card.has-returns>small { color:rgba(255,255,255,.85); }
.home-attention-card:hover { border-color:var(--portal-control-border);background:var(--portal-line-subtle);color:var(--portal-text);transform:translateY(-2px); }
.home-attention-card.has-returns:hover { border-color:var(--ntc-red-dark);background:var(--ntc-red);color:var(--portal-on-dark); }
.home-attention-card:hover .home-attention-heading>i:last-child { transform:translate(2px,-2px); }
.home-attention-card:focus-visible { outline:2px solid var(--portal-focus);outline-offset:3px; }
@media(max-width:1199.98px) {
 .home-flow-summary { grid-template-columns:minmax(0,1fr); }
 .home-attention-card { order:-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.3rem 1rem;min-height:0; }
 .home-attention-heading { grid-column:1;grid-row:1; }
 .home-attention-card>strong { grid-column:2;grid-row:1 / 3;margin:0;font-size:3rem; }
 .home-attention-card>small { grid-column:1;grid-row:2;margin:0; }
}
@media(max-width:767.98px) {
 .home-flow-summary { gap:1.15rem;padding:1rem; }
 .home-flow-main { gap:1.1rem;padding:0; }
 .home-flow-total>strong { font-size:2.85rem; }
 .home-flow-metrics { grid-template-columns:1fr;gap:0;margin-top:.85rem; }
 .home-flow-metrics>div { display:flex;align-items:center;justify-content:space-between;gap:.5rem; }
 .home-flow-metrics dd { margin:0; }
 .home-attention-card { padding:1rem; }
}
.portal-body .shipment-workspace { overflow:hidden; }
.shipment-workspace .shipment-list-toolbar { padding:1rem 1.25rem;border-bottom:1px solid var(--portal-line-subtle);background:var(--portal-surface); }
.shipment-workspace .shipment-view-switch { background:transparent;border:0;padding:0;gap:1rem; }
.shipment-workspace .shipment-view-switch a { padding:.6rem .1rem;border-radius:0;border-bottom:2px solid transparent;box-shadow:none;background:transparent;color:var(--portal-muted); }
.shipment-workspace .shipment-view-switch a.is-active { border-bottom-color:var(--ntc-red);color:var(--portal-text);background:transparent; }
.search-return-alert { display:inline-flex;align-items:center;gap:.45rem;min-height:2.6rem;margin:0;padding:.35rem .65rem;background:var(--ntc-red);border:1px solid var(--ntc-red);border-radius:0;color:var(--portal-on-dark);font-size:.82rem;font-weight:700;text-decoration:none;transition:background-color .18s,border-color .18s,transform .18s; }
.search-return-alert>i { color:inherit;font-size:.95rem; }
.search-return-alert strong { font-size:inherit;font-weight:700; }
.search-return-alert .search-return-count { display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;padding:0 .25rem;background:var(--portal-on-dark);border-radius:0;color:var(--portal-accent-text);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:800; }
.search-return-alert:hover { background:var(--ntc-red-dark);border-color:var(--ntc-red-dark);color:var(--portal-on-dark); }
.search-return-alert:active { transform:translateY(1px); }
.route-shipments .search-return-alert:focus-visible { outline-color:var(--portal-text); }
.shipment-workspace .shipment-filter-card { padding:1.25rem;border:0;border-radius:0;background:var(--portal-subtle);gap:1rem; }
/* Search controls share one compact desktop header; smaller screens wrap naturally. */
.route-shipments .portal-content { padding-top:1.1rem; }
.route-shipments .shipment-workspace { margin-bottom:.75rem; }
.route-shipments .shipment-list-toolbar { display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.5rem 1rem;min-height:3.8rem;padding:.55rem 1.25rem; }
.route-shipments .shipment-view-switch { flex:0 0 auto;gap:.85rem; }
.route-shipments .shipment-view-switch a { min-height:2.65rem;padding:.45rem .1rem;font-size:.82rem;white-space:nowrap; }
.route-shipments .shipment-lookup-actions { gap:.4rem;margin-left:auto; }
.route-shipments .shipment-lookup-actions .btn { min-height:2.4rem;padding:.4rem .65rem;font-size:.78rem;white-space:nowrap; }
.route-shipments .shipment-primary-actions { display:flex;align-items:center;gap:.65rem;padding:.7rem 1.25rem;border-bottom:1px solid var(--portal-line-subtle);background:var(--portal-subtle); }
.route-shipments .shipment-primary-actions .search-return-alert { min-height:2.8rem;padding:.45rem .75rem;font-size:.85rem;white-space:nowrap; }
.route-shipments .shipment-primary-actions .shipment-month-picker { display:grid;grid-template-columns:minmax(9rem,1fr) minmax(13rem,17rem);align-items:center;gap:.75rem;flex:0 1 29rem;margin:0;padding:.45rem .65rem;border:1px solid var(--portal-control-border);border-radius:0;background:var(--portal-surface); }
.route-shipments .shipment-month-picker label { display:flex;align-items:center;gap:.55rem;margin:0;color:var(--portal-text);font-size:.85rem;font-weight:700;white-space:nowrap; }
.route-shipments .shipment-month-picker label i { display:grid;place-items:center;width:2rem;height:2rem;border-radius:0;background:var(--ntc-red-soft);color:var(--portal-accent-text);font-size:1rem; }
.route-shipments .shipment-month-picker .form-select { min-width:0;min-height:2.8rem;padding-block:.4rem;font-size:.875rem;font-weight:650; }
.route-shipments .shipment-period-reset { margin-left:auto;color:var(--portal-muted);font-size:.78rem;font-weight:600;text-decoration:none;white-space:nowrap; }
.route-shipments .shipment-period-reset:hover { color:var(--portal-accent-text);text-decoration:underline; }
.route-shipments .shipment-barcode-action { display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.8rem;margin-left:auto;padding:.45rem .85rem;border:1px solid var(--portal-control-border);border-radius:0;background:var(--portal-surface);color:var(--portal-text);font-size:.85rem;font-weight:700;text-decoration:none;white-space:nowrap;transition:background-color .18s,border-color .18s,color .18s,transform .18s; }
.route-shipments .shipment-barcode-action i:first-child { color:var(--portal-accent-text);font-size:1.05rem; }
.route-shipments .shipment-barcode-action i:last-child { color:var(--portal-muted); }
.route-shipments .shipment-barcode-action:hover { border-color:var(--ntc-red);background:var(--ntc-red);color:var(--portal-on-dark); }
.route-shipments .shipment-barcode-action:hover i { color:var(--portal-on-dark); }
.route-shipments .shipment-primary-actions :is(.search-return-alert,.shipment-barcode-action):focus-visible { outline:2px solid var(--portal-focus);outline-offset:3px; }
.route-shipments .shipment-filter-card { align-items:end;grid-template-columns:minmax(16rem,1fr) minmax(12rem,18rem) auto;gap:.75rem;padding:.8rem 1.25rem;background:var(--portal-surface); }
.route-shipments .shipment-filter-card > div { min-width:0; }
.route-shipments .shipment-filter-card label { display:block;margin-bottom:.3rem;color:var(--portal-muted);font-size:.75rem;font-weight:650; }
.route-shipments .shipment-filter-card .form-control,.route-shipments .shipment-filter-card .form-select { min-height:2.6rem;padding-block:.45rem; }
.route-shipments .shipment-filter-actions { display:flex;align-items:center;gap:.65rem;min-height:2.6rem; }
.route-shipments .shipment-filter-actions .btn { min-height:2.6rem;padding:.45rem .8rem;white-space:nowrap; }
.route-shipments .shipment-clear-filters { color:var(--portal-muted);font-size:.8rem;font-weight:600;text-decoration:none;white-space:nowrap; }
.route-shipments .shipment-clear-filters:hover { color:var(--portal-accent-text);text-decoration:underline; }
@media (min-width:1200px) {
  .route-shipments .desktop-shipment-table thead th { padding:.55rem .8rem; }
  .route-shipments .desktop-shipment-table tbody td { padding:.55rem .8rem;line-height:1.35; }
}
@media (max-width:991.98px) {
  .route-shipments .shipment-list-toolbar .shipment-view-switch { width:100%; }
  .route-shipments .shipment-filter-card { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .route-shipments .shipment-filter-card .filter-receiver { grid-column:1 / -1; }
  .route-shipments .shipment-filter-card .shipment-filter-actions { grid-column:auto; }
}
@media (max-width:767.98px) {
  .route-shipments .shipment-list-toolbar { gap:.65rem;padding:1rem; }
  .route-shipments .shipment-view-switch a { flex:1;justify-content:center; }
  .route-shipments .shipment-lookup-actions { order:4;flex:0 0 auto;width:auto;margin-left:auto;justify-content:flex-end; }
  .route-shipments .shipment-lookup-actions form { flex:0 0 auto; }
  .route-shipments .shipment-lookup-actions .btn { width:auto;flex:0 0 auto;justify-content:center; }
  .route-shipments .shipment-primary-actions { flex-wrap:wrap;padding:.75rem 1rem; }
  .route-shipments .shipment-primary-actions .search-return-alert,.route-shipments .shipment-barcode-action { flex:1 1 100%;justify-content:center;min-height:2.85rem; }
  .route-shipments .shipment-primary-actions .shipment-month-picker { grid-template-columns:minmax(0,1fr);flex:1 1 100%;gap:.4rem;width:100%;padding:.7rem; }
  .route-shipments .shipment-month-picker .form-select { width:100%; }
  .route-shipments .shipment-period-reset { order:3;flex:1 1 100%;margin:0;text-align:center; }
  .route-shipments .shipment-filter-card { grid-template-columns:minmax(0,1fr);gap:.75rem;padding:1rem; }
  .route-shipments .shipment-filter-card .filter-receiver,.route-shipments .shipment-filter-card .shipment-filter-actions { grid-column:auto; }
  .route-shipments .shipment-filter-actions { justify-content:space-between; }
  .route-shipments .shipment-filter-actions .btn { flex:1; }
}
.shipment-workspace .shipment-list-card { border:0;border-radius:0; }
.shipment-list-card .card-topline { padding-inline:1.25rem; }
.route-shipments .shipment-results-heading { display:flex;flex-wrap:wrap;align-items:center;gap:.55rem 1rem; }
.route-shipments .attention-list-guidance { display:inline-flex;align-items:center;gap:.45rem;margin:0;color:var(--portal-muted);font-size:.82rem;line-height:1.35; }
.route-shipments .attention-list-guidance>i { color:var(--portal-accent-text);font-size:.95rem; }
.route-shipments .attention-list-guidance strong { color:var(--portal-text);font-weight:650; }
.route-shipments .shipment-results-heading .card-topline-actions { margin-left:auto; }
.shipment-list-card .shipment-money-summary { align-items:center;background:var(--portal-subtle);font-size:.875rem; }
.portal-body .table thead th { background:var(--portal-subtle);color:var(--portal-muted);font-size:.875rem;font-weight:600;text-transform:none;letter-spacing:0;border-bottom:1px solid var(--portal-line);padding:.8rem 1rem;white-space:nowrap; }
.portal-body .table tbody td,.portal-body .table tbody th { padding:.7rem 1rem;border-color:var(--portal-line-subtle);font-size:.875rem; }
.route-shipments .desktop-shipment-table .table thead th { padding:.45rem .65rem;font-size:.72rem; }
.route-shipments .desktop-shipment-table .table tbody td { padding:.42rem .65rem;font-size:.81rem;line-height:1.25; }
.route-shipments .desktop-shipment-table .table tbody td strong { font-size:.82rem;font-weight:650; }
.route-shipments .desktop-shipment-table .table tbody td small { margin-top:.08rem;font-size:.71rem;line-height:1.2; }
.route-shipments .desktop-shipment-table .shipment-status { gap:0; }
.route-shipments .desktop-shipment-table .status-badge { padding:.28rem .42rem;font-size:.76rem;line-height:1.2; }
.desktop-shipment-table :is(th,td):first-child { padding-left:1.25rem; }
.desktop-shipment-table :is(th,td):last-child { width:7.25rem;padding-right:1rem; }
.desktop-shipment-table .table-action { margin-inline:auto; }
.route-shipments .desktop-shipment-table .table-action { min-width:4.8rem;min-height:2.1rem;height:2.1rem;padding:.3rem .5rem;font-size:.75rem; }
.portal-body .table-action { display:inline-flex;align-items:center;justify-content:center;gap:.4rem;width:auto;min-width:5.7rem;height:2.45rem;min-height:2.45rem;padding:.4rem .65rem;border:1px solid var(--portal-control-border);border-radius:0;background:var(--portal-surface);color:var(--portal-text);font-size:.8rem;font-weight:700;white-space:nowrap;transition:background-color .18s,border-color .18s,color .18s,transform .18s; }
.portal-body .table-action i { color:var(--portal-accent-text);font-size:.95rem; }
.portal-body .table-action:hover { background:var(--ntc-red);border-color:var(--ntc-red);color:var(--portal-on-dark); }
.portal-body .table-action:hover i { color:var(--portal-on-dark); }
.portal-body .table-action:active { transform:translateY(1px); }
@media(max-width:767.98px) {
  .route-shipments .shipment-results-heading { padding-block:.9rem; }
  .route-shipments .attention-list-guidance { order:3;flex:1 1 100%; }
  .route-shipments .mobile-shipment-list > a > div { grid-row:1 / 3; }
  .route-shipments .mobile-shipment-open { display:inline-flex;align-items:center;justify-content:center;gap:.35rem;grid-column:2;grid-row:2;justify-self:end;align-self:end;min-height:2.2rem;padding:.35rem .6rem;border:1px solid var(--portal-control-border);border-radius:0;background:var(--portal-surface);color:var(--portal-text);font-size:.78rem;font-weight:700;white-space:nowrap; }
  .route-shipments .mobile-shipment-open i { color:var(--portal-accent-text); }
  .route-shipments .mobile-shipment-list > a:hover .mobile-shipment-open,.route-shipments .mobile-shipment-list > a:focus-visible .mobile-shipment-open { background:var(--ntc-red);border-color:var(--ntc-red);color:var(--portal-on-dark); }
  .route-shipments .mobile-shipment-list > a:hover .mobile-shipment-open i,.route-shipments .mobile-shipment-list > a:focus-visible .mobile-shipment-open i { color:var(--portal-on-dark); }
}
@media (min-width:768px) and (max-width:1199.98px) {
  .route-shipments .desktop-shipment-table .table thead th { padding:.4rem .5rem; }
  .route-shipments .desktop-shipment-table .table tbody td { padding:.38rem .5rem; }
  .route-shipments .desktop-shipment-table :is(th,td):first-child { padding-left:.75rem; }
  .route-shipments .desktop-shipment-table :is(th,td):last-child { width:5.5rem;padding-right:.6rem; }
}
.portal-body .table tbody tr:hover>* { background-color:var(--portal-subtle); }
.portal-body .status-badge { border-radius:0;font-size:.875rem;font-weight:500; }
.portal-body .pagination-bar { padding:1rem 1.25rem;background:var(--portal-surface); }
/* Shared form navigation and import controls. Shipment creation has its own layout below. */
.portal-body .shipment-mode-bar { max-width:none;margin:0 0 1.25rem; }
.portal-body .shipment-mode-bar .shipment-mode-switch { border:0;border-radius:0;background:transparent;padding:0;gap:1.5rem; }
.portal-body .shipment-mode-bar .shipment-mode-switch a { border-radius:0;border:0;border-bottom:2px solid transparent;background:transparent;box-shadow:none;padding:.65rem 0;color:var(--portal-muted); }
.portal-body .shipment-mode-bar .shipment-mode-switch a.active { border-bottom-color:var(--ntc-red);color:var(--portal-text); }
.portal-body .import-dropzone { border-radius:0;background:var(--portal-subtle);border-color:var(--portal-control-border); }
.portal-body .import-upload-card,.portal-body .import-guide { padding:1.5rem; }
.portal-body .import-section-heading h2 { font-size:1.15rem; }
.portal-body .import-step { background:var(--portal-soft);color:var(--portal-muted);border-radius:0; }
/* Analytics: outcomes, regional comparison and separate geographic reports. */
.analytics-page { --analytics-delivered:#2b7650;--analytics-returned:#c53037;--analytics-unknown:#8c969f; }
.analytics-page-header { display:flex;align-items:center;justify-content:flex-start;margin-bottom:1.1rem; }
.analytics-kicker { display:block;margin-bottom:.35rem;color:var(--portal-accent-text);font-size:.72rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase; }
.analytics-period-form { display:grid;grid-template-columns:2.65rem minmax(0,1fr);align-items:center;gap:.7rem;flex:0 1 23rem;min-width:0;padding:.5rem .65rem;border:1px solid var(--portal-line);border-radius:0;background:var(--portal-surface);transition:border-color .16s ease; }
.analytics-period-form:hover { border-color:var(--portal-control-border); }
.analytics-period-form:focus-within { outline:2px solid var(--portal-focus);outline-offset:2px; }
.analytics-period-icon { display:grid;place-items:center;width:2.65rem;height:2.65rem;border-radius:0;background:var(--ntc-red-soft);color:var(--portal-accent-text);font-size:1.05rem; }
.analytics-period-control { min-width:0; }
.analytics-period-control label { display:block;margin:0;color:var(--portal-muted);font-size:.7rem;font-weight:650;line-height:1.2; }
.analytics-period-control .form-select { width:100%;min-width:0;min-height:0;height:1.75rem;padding:.1rem 1.8rem .1rem 0;border:0;border-radius:0;background-color:transparent;color:var(--portal-text);font-size:.9rem;font-weight:700;line-height:1.2;box-shadow:none; }
.analytics-period-control .form-select:focus { border:0;box-shadow:none; }
.analytics-summary-grid { display:grid;grid-template-columns:minmax(0,1.75fr) minmax(18rem,.75fr);gap:1rem;margin-bottom:1rem; }
.analytics-card { min-width:0;padding:1.5rem; }
.analytics-card-heading { display:flex;align-items:flex-start;justify-content:space-between;gap:1rem; }
.analytics-card-heading h2,.analytics-report-heading h2,.analytics-regions-heading h2 { margin:0;font-size:1.2rem;font-weight:700;line-height:1.25;letter-spacing:-.025em; }
.analytics-total { flex:none;display:inline-flex;align-items:baseline;gap:.3rem;padding:.4rem .65rem;border-radius:0;background:var(--portal-subtle);color:var(--portal-muted);font-size:.78rem;white-space:nowrap; }
.analytics-total strong { color:var(--portal-text);font-size:1rem; }
.analytics-outcomes-layout { display:grid;grid-template-columns:minmax(9rem,.6fr) minmax(0,1.7fr);align-items:end;gap:2rem;margin-top:2.25rem; }
.analytics-outcomes-rate strong { display:block;color:var(--portal-text);font-size:clamp(2.8rem,4vw,4rem);font-weight:750;line-height:1;letter-spacing:-.065em; }
.analytics-outcomes-rate span { display:block;margin-top:.4rem;color:var(--portal-muted);font-size:.85rem; }
.analytics-outcomes-breakdown { min-width:0; }
.analytics-outcomes-bar { display:block;width:100%;height:1rem;margin-bottom:.75rem; }
.analytics-bar-track { fill:var(--portal-disabled); }
.analytics-bar-delivered { fill:var(--analytics-delivered);background:var(--analytics-delivered); }
.analytics-bar-returned_pay { fill:var(--analytics-returned);background:var(--analytics-returned); }
.analytics-bar-unknown { fill:var(--analytics-unknown);background:var(--analytics-unknown); }
.analytics-outcome-list { margin:0; }
.analytics-outcome-list>div { display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.46rem 0;border-bottom:1px solid var(--portal-line-subtle); }
.analytics-outcome-list>div:last-child { border-bottom:0; }
.analytics-outcome-list dt { display:flex;align-items:center;gap:.6rem;min-width:0;color:var(--portal-text);font-size:.85rem;font-weight:600; }
.outcome-swatch { display:inline-block;flex:none;width:.65rem;height:.65rem;border-radius:0; }
.analytics-outcome-list dd { display:flex;align-items:baseline;justify-content:flex-end;gap:.85rem;margin:0;font-variant-numeric:tabular-nums;white-space:nowrap; }
.analytics-outcome-list dd strong { font-size:1.05rem; }
.analytics-outcome-list dd span { min-width:3.5rem;color:var(--portal-muted);font-size:.78rem;text-align:right; }
.analytics-money { display:flex;flex-direction:column;background:var(--portal-subtle); }
.analytics-money-value { margin:2.25rem 0 1.5rem; }
.analytics-money-value>span { display:block;color:var(--portal-muted);font-size:.83rem; }
.analytics-money-value strong { display:block;margin-top:.3rem;font-size:clamp(1.8rem,2.7vw,2.6rem);font-weight:750;line-height:1.14;letter-spacing:-.045em;overflow-wrap:anywhere; }
.analytics-money-value.is-unavailable strong { max-width:18ch;font-size:1.2rem;letter-spacing:-.02em; }
.analytics-money-count { display:flex;align-items:baseline;gap:.7rem;margin:auto 0 0;padding-top:1rem;border-top:1px solid var(--portal-line); }
.analytics-money-count strong { font-size:1.65rem;line-height:1; }
.analytics-money-count span,.analytics-money-note { color:var(--portal-muted);font-size:.8rem;line-height:1.4; }
.analytics-money-note { margin:.8rem 0 0; }
.analytics-regions { margin-bottom:1rem; }
.analytics-regions-heading { display:flex;align-items:center;justify-content:space-between;gap:1rem; }
.analytics-regions-heading p { margin:.35rem 0 0;color:var(--portal-muted);font-size:.8rem; }
.analytics-region-legend { display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:0;padding:0;list-style:none; }
.analytics-region-legend li { display:flex;align-items:center;gap:.4rem;color:var(--portal-muted);font-size:.76rem; }
.analytics-region-chart { display:grid;gap:1.1rem;margin-top:1.6rem; }
.analytics-region-row { display:grid;grid-template-columns:10rem minmax(0,1fr) 5rem;align-items:center;gap:1.25rem; }
.analytics-region-name { color:var(--portal-text);font-size:.84rem;font-weight:650; }
.analytics-region-bar { display:block;width:100%;height:1rem;border-radius:0;overflow:hidden; }
.analytics-region-total { font-size:.95rem;font-weight:750;font-variant-numeric:tabular-nums;text-align:right; }
.analytics-report .table-responsive:focus-visible { outline:2px solid var(--portal-focus);outline-offset:-2px; }
.analytics-report { min-width:0;overflow:hidden;scroll-margin-top:1rem; }
.analytics-report [data-analytics-panel][hidden] { display:none; }
.analytics-report-heading { display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.25rem 1.5rem 1rem; }
.analytics-report-heading p { margin:.35rem 0 0;color:var(--portal-muted);font-size:.82rem; }
.analytics-report-heading .btn { display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap; }
.analytics-report-nav { display:flex;gap:1.5rem;padding:0 1.5rem; }
.analytics-report-nav a { display:inline-flex;align-items:center;justify-content:center;min-height:2.85rem;padding:.65rem .3rem;border-bottom:3px solid transparent;color:var(--portal-muted);font-size:.88rem;font-weight:700;text-decoration:none;transition:color .15s ease,border-color .15s ease; }
.analytics-report-nav a:hover { color:var(--portal-text);border-bottom-color:var(--portal-control-border); }
.analytics-report-nav a[aria-current] { color:var(--portal-accent-text);border-bottom-color:var(--ntc-red); }
.analytics-report-nav a:focus-visible { outline:2px solid var(--portal-focus);outline-offset:-3px;border-radius:0; }
.analytics-report .table-responsive { border-top:1px solid var(--portal-line-subtle); }
.analytics-page .report-table { min-width:45rem;margin:0;font-size:.84rem; }
.analytics-page .report-table th,.analytics-page .report-table td { padding:.75rem 1rem;border-bottom:1px solid var(--portal-line-subtle);font-variant-numeric:tabular-nums; }
.analytics-page .report-table thead th { background:var(--portal-subtle);color:var(--portal-muted);font-size:.73rem;font-weight:700;white-space:nowrap; }
.analytics-page .report-table th:first-child,.analytics-page .report-table td:first-child { text-align:left; }
.analytics-page .report-table th:not(:first-child),.analytics-page .report-table td:not(:first-child) { text-align:right; }
.analytics-page .report-table tbody tr:last-child th,.analytics-page .report-table tbody tr:last-child td { border-bottom:0; }
.analytics-page .report-table tbody tr:hover { background:var(--portal-subtle); }
.analytics-page .report-table tfoot th,.analytics-page .report-table tfoot td { border-top:1px solid var(--portal-line);border-bottom:0;background:var(--portal-subtle);font-weight:750; }
.analytics-cell-total { font-weight:750; }
.analytics-cell-share { color:var(--portal-muted); }
.analytics-table-rate { display:inline-block;min-width:4.25rem;padding:.18rem .45rem;border-radius:0;background:var(--portal-subtle);color:var(--portal-text);font-weight:700; }
.analytics-empty { margin:1.8rem 0 .5rem;color:var(--portal-muted);font-size:.9rem; }
.analytics-report-empty { margin:0;padding:1.5rem;border-top:1px solid var(--portal-line-subtle); }
.analytics-no-data { display:grid;justify-items:center;padding:3rem 1.5rem;text-align:center; }
.analytics-no-data-icon { display:grid;place-items:center;width:3rem;height:3rem;margin-bottom:.9rem;border-radius:0;background:var(--portal-subtle);color:var(--portal-accent-text);font-size:1.3rem; }
.analytics-no-data h2 { margin:0;font-size:1.12rem; }
.analytics-no-data p { margin:.4rem 0 0;color:var(--portal-muted);font-size:.88rem; }
@media(max-width:1199.98px) {
  .analytics-summary-grid { grid-template-columns:minmax(0,1fr) minmax(17rem,.6fr); }
  .analytics-outcomes-layout { grid-template-columns:minmax(8rem,.6fr) minmax(0,1.7fr);gap:1.25rem; }
}
@media(max-width:991.98px) {
  .analytics-summary-grid { grid-template-columns:1fr; }
  .analytics-money-value { margin:1rem 0 1.25rem; }
}
@media(max-width:767.98px) {
  .analytics-page-header { align-items:stretch; }
  .analytics-period-form { flex-basis:auto;width:100%; }
  .analytics-card { padding:1.1rem; }
  .analytics-card-heading h2,.analytics-report-heading h2,.analytics-regions-heading h2 { font-size:1.08rem; }
  .analytics-outcomes-layout { grid-template-columns:1fr;gap:1.25rem;margin-top:1.25rem; }
  .analytics-outcomes-rate strong { font-size:3rem; }
  .analytics-regions-heading { align-items:flex-start;flex-direction:column;gap:.85rem; }
  .analytics-region-chart { gap:1.25rem;margin-top:1.3rem; }
  .analytics-region-row { grid-template-columns:minmax(0,1fr) auto;gap:.5rem; }
  .analytics-region-bar { grid-column:1/-1;grid-row:2;height:.75rem; }
  .analytics-region-total { grid-column:2;grid-row:1; }
  .analytics-report-heading { padding:1.1rem;gap:.7rem; }
  .analytics-report-heading .btn { min-height:2.6rem;padding:.5rem .65rem;font-size:.78rem; }
  .analytics-report-nav { gap:1.2rem;padding:0 1.1rem; }
}
/* Detail and barcode surfaces retain their actions and state semantics. */
.portal-body .search-card-compact { padding:1.5rem; }
.portal-body .detail-hero { background:var(--portal-surface);color:var(--portal-text);border:1px solid var(--portal-line);box-shadow:none; }
.route-track .portal-container { max-width:58rem; }
.route-login {
  color-scheme:dark;
  --portal-soft:var(--portal-night);
  --portal-surface:var(--portal-ink);
  --portal-text:var(--portal-on-dark);
  --portal-muted:var(--portal-on-dark-muted);
  --portal-label:var(--portal-dark-copy);
  --portal-line:var(--portal-dark-line-strong);
  --portal-control-border:var(--portal-dark-control-line);
  --ntc-red-soft:var(--portal-brand-focus-soft);
  --portal-focus:var(--portal-login-focus);
}
.route-login .login-screen { background:var(--portal-soft);background-image:none;align-items:center; }
.route-login .login-form-shell { max-width:30rem;padding:2.5rem;border-radius:0;box-shadow:none;border:1px solid var(--portal-line);border-top:4px solid var(--ntc-red); }
.route-login .login-brand { border-bottom:0;margin:0 0 1.5rem;padding:0;gap:.8rem; }
.route-login .login-brand img { background:var(--portal-ink);border-radius:0;padding:.65rem .9rem;height:4rem; }
.route-login .login-title { font-size:1.85rem;letter-spacing:-.04em; }
.route-login .login-form { gap:1.2rem; }
.route-login .login-form .form-control { background:var(--portal-night);color:var(--portal-text); }
.route-login .login-form .form-control:focus { border-color:var(--portal-login-focus); }
.route-login .login-form .form-control:autofill { box-shadow:0 0 0 1000px var(--portal-night) inset;-webkit-text-fill-color:var(--portal-text);caret-color:var(--portal-text); }
.route-login .login-form .form-control:autofill:focus { box-shadow:0 0 0 1000px var(--portal-night) inset,0 0 0 3px var(--ntc-red-soft); }
@media(max-width:1199.98px) {
  .portal-body:has(.mobile-tab-bar) .portal-content { padding-top:1.25rem; }
  .portal-body .portal-container { padding-inline:1.5rem; }
  .portal-body .mobile-tab-bar { background:var(--portal-ink);padding-top:.35rem; }
  .portal-body .mobile-tab-icon { background:transparent; }
  .portal-body .mobile-tab.is-active .mobile-tab-icon { color:var(--portal-on-dark);background:var(--portal-dark-hover); }
  .portal-body .mobile-tab.is-active { color:var(--portal-on-dark); }
  .portal-body .mobile-profile-panel { border-radius:0; }
}
@media(max-width:767.98px) {
  .search-return-alert { margin-inline:1rem;padding:.75rem;gap:.6rem; }
  .shipment-workspace .shipment-view-switch { width:100%;gap:.75rem; }
  .shipment-workspace .shipment-view-switch a { flex:1;font-size:.875rem;justify-content:center; }
  .portal-body .portal-container { padding-inline:1rem; }
  .portal-body .portal-content { padding-bottom:1.5rem; }
  .portal-body .card-topline { padding:1rem; }
  .home-overview .home-overview-heading { padding:1rem;gap:.75rem; }
  .home-overview-heading h2 { font-size:1.05rem; }
  .home-overview-heading a { font-size:.875rem;white-space:nowrap; }
  .home-overview .shipment-overview-grid { display:flex;flex-direction:column;gap:1rem;padding:1.25rem 1rem; }
  .home-overview .home-donut { width:10rem; }
  .home-overview .shipment-phase-copy { width:100%; }
  .home-overview .shipment-action-panel { padding:1rem; }
  .shipment-action-content { grid-template-columns:auto 1fr; }
  .shipment-action-content a { grid-column:1 / -1;width:100%;justify-content:center; }
  .portal-usage-heading { align-items:start;flex-direction:column;gap:.4rem; }
  .portal-usage-heading p { text-align:left; }
  .portal-usage-grid { grid-template-columns:1fr; }
  .portal-usage-item { min-height:0;padding:1rem; }
  .home-api-disclosure>summary { padding:1rem; }
  .shipment-workspace .shipment-list-toolbar,.shipment-workspace .shipment-filter-card { padding:1rem; }
  .shipment-lookup-actions { width:100%; }
  .shipment-lookup-actions .btn { flex:1; }
  .portal-body .shipment-form-flow>.form-section { padding:1.15rem 1rem; }
  .portal-body .variant-grid>label { padding:.7rem;min-height:0; }
  .portal-body .variant-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .portal-body .variant-grid>label { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem; }
  .portal-body .variant-grid>label small,.portal-body .variant-grid .variant-check { display:none; }
  .portal-body .form-section-header h2 { font-size:1rem; }
  .portal-body .shipment-mode-bar .shipment-mode-switch { gap:1rem; }
  .route-login .login-form-shell { padding:1.5rem; }
}
@media(prefers-reduced-motion:reduce) { .portal-body .btn { transition:none; } }
@media(prefers-reduced-motion:reduce) { .portal-usage-item,.portal-usage-index,.portal-usage-action i { transition:none; } }

/* Shipment creation: related fields stay together across desktop and mobile. */
.new-shipment-shell .shipment-mode-bar { width:100%;max-width:none;margin:0 0 1rem;padding-bottom:.85rem;border-bottom:1px solid var(--portal-line); }
.new-shipment-shell .shipment-mode-switch { white-space:nowrap; }
.new-shipment-shell .shipment-form-flow { width:100%;max-width:none;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-areas:"mode mode" "sender content" "receiver content" "packages packages" "submit submit";gap:1rem;align-items:stretch;border:0;background:transparent;overflow:visible; }
.new-shipment-shell .shipment-form[data-variant="sending"] .shipment-form-flow { grid-template-areas:"mode mode" "receiver content" "packages packages" "submit submit"; }
.new-shipment-shell .form-party-column,.new-shipment-shell .form-detail-column { display:contents; }
.new-shipment-shell .form-mode { grid-area:mode; }
.new-shipment-shell .form-sender { grid-area:sender; }
.new-shipment-shell .form-receiver { grid-area:receiver; }
.new-shipment-shell .form-content { grid-area:content; }
.new-shipment-shell .form-packages { grid-area:packages; }
.new-shipment-shell .form-submit-bar { grid-area:submit; }
.new-shipment-shell .shipment-form-flow .form-section { min-width:0;padding:1.25rem;border:1px solid var(--portal-line);border-radius:0;background:var(--portal-surface);box-shadow:none; }
.new-shipment-shell .shipment-form-flow .form-section-header { display:flex;align-items:center;gap:.7rem;margin:0 0 1.15rem;padding:0 0 .9rem;border-bottom:1px solid var(--portal-line-subtle); }
.new-shipment-shell .form-section-header h2 { margin:0;font-size:1.05rem;font-weight:700; }
.new-shipment-shell .form-section-header .section-icon { display:grid;place-items:center;flex:none;width:2.15rem;height:2.15rem;border:1px solid var(--portal-line-subtle);border-radius:0;background:var(--portal-subtle);color:var(--portal-accent-text);font-size:1rem; }
.new-shipment-shell .form-section-header .btn { margin-left:auto;white-space:nowrap; }
.new-shipment-shell .form-content .row>.col-md-7 { display:flex;align-items:flex-end; }
.new-shipment-shell .form-content .option-switch-card { width:100%;min-height:2.75rem;padding:.6rem .85rem; }
.new-shipment-shell .form-content textarea { min-height:5rem;resize:vertical; }
.new-shipment-shell .form-content #extCodeHint { display:block;margin-top:.35rem; }
.new-shipment-shell .form-mode { display:grid;grid-template-columns:12rem minmax(0,1fr);align-items:center;gap:1.25rem; }
.new-shipment-shell .form-mode .form-section-header { margin:0;padding:0;border:0; }
.new-shipment-shell .form-mode>.field-error { grid-column:2; }
.new-shipment-shell .variant-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem; }
.new-shipment-shell .variant-grid>label { min-height:4.7rem;border-radius:0;padding:.75rem 2rem .75rem .8rem; }
.new-shipment-shell .variant-grid>label small { line-height:1.35; }
.new-shipment-shell .package-guidance { display:flex;align-items:flex-start;gap:.5rem;margin:-.3rem 0 .9rem;color:var(--portal-muted);font-size:.82rem;line-height:1.45; }
.new-shipment-shell .package-guidance i { color:var(--portal-accent-text);flex:none; }
.new-shipment-shell .package-list { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:.65rem; }
.new-shipment-shell .package-list:focus-visible { outline:2px solid var(--portal-focus);outline-offset:3px; }
.new-shipment-shell .package-row,.new-shipment-shell .package-add-tile { width:100%;max-width:17.25rem;aspect-ratio:1;justify-self:start; }
.new-shipment-shell .package-row { grid-template-columns:minmax(0,1fr) auto;grid-template-rows:2rem 4.5rem auto auto;align-items:end;gap:.45rem;padding:.75rem;border:1px solid #ddcdb5;border-radius:0;background:#fffcf7;box-shadow:inset 0 .28rem 0 #f6ead7; }
.new-shipment-shell .package-row[data-package-type="letter"] { border-color:#ced7de;background:#fbfcfd;box-shadow:inset 0 .28rem 0 #edf1f4; }
.new-shipment-shell .package-row>div { min-width:0; }
.new-shipment-shell .package-index { display:grid;place-items:center;grid-column:1;grid-row:1;align-self:center;width:1.7rem;height:1.7rem;border-radius:0;background:var(--portal-subtle);color:var(--portal-text);font-variant-numeric:tabular-nums; }
.new-shipment-shell .package-parcel { display:block;grid-column:1/-1;grid-row:2;place-self:center;width:7rem;height:4.5rem;background:transparent url('../images/package-box.svg') center/contain no-repeat; }
.new-shipment-shell .package-row[data-package-type="letter"] .package-parcel { background-image:url('../images/package-letter.svg'); }
.new-shipment-shell .package-row[data-package-type="pallete"] .package-parcel { background-image:url('../images/package-pallet.svg'); }
.new-shipment-shell .package-type-field { grid-column:1/-1;grid-row:3; }
.new-shipment-shell .package-weight-field { grid-column:1/-1;grid-row:4; }
.new-shipment-shell .remove-package { grid-column:2;grid-row:1;justify-self:end;align-self:center;width:2.25rem;height:2.25rem; }
.new-shipment-shell .package-row label { display:block;margin-bottom:.2rem;color:var(--portal-text);font-size:.82rem;font-weight:650;line-height:1.25; }
.new-shipment-shell .package-row .form-control,.new-shipment-shell .package-row .form-select { min-height:2.5rem;padding-block:.4rem;font-size:.95rem; }
.new-shipment-shell .remove-package:disabled { visibility:hidden; }
.new-shipment-shell .package-add-tile { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;border:1px dashed #cbbba3;border-radius:0;background:var(--portal-subtle);color:var(--portal-text);font-size:.85rem;font-weight:700;cursor:pointer; }
.new-shipment-shell .package-add-tile[hidden] { display:none; }
.new-shipment-shell .package-add-tile:hover { border-color:var(--ntc-red);background:var(--portal-surface);color:var(--portal-accent-text); }
.new-shipment-shell .package-add-tile:focus-visible { outline:2px solid var(--portal-focus);outline-offset:2px; }
.new-shipment-shell .package-add-icon { display:grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid var(--portal-line);border-radius:0;background:var(--portal-surface);color:var(--portal-accent-text);font-size:1.2rem; }
.new-shipment-shell .option-switch-card { min-height:100%; }
.new-shipment-shell .extra-fields summary { min-height:3rem; }
.new-shipment-shell .shipment-form-flow .form-submit-bar { justify-content:flex-end;gap:.75rem;margin:0;padding:0;border:0;background:transparent;box-shadow:none; }
.new-shipment-shell .form-submit-bar .btn { display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:3rem;padding:.7rem 1.15rem; }
.new-shipment-shell .submit-shipment { min-width:13rem; }
@media(max-width:1399.98px) {
  .new-shipment-shell .package-list { grid-template-columns:repeat(2,minmax(0,17.25rem)); }
}
@media(max-width:1199.98px) {
  .new-shipment-shell .shipment-form-flow { grid-template-columns:minmax(0,1fr);grid-template-areas:"mode" "sender" "receiver" "content" "packages" "submit"; }
  .new-shipment-shell .shipment-form[data-variant="sending"] .shipment-form-flow { grid-template-areas:"mode" "receiver" "content" "packages" "submit"; }
}
@media(max-width:767.98px) {
  .new-shipment-shell .shipment-mode-bar,.new-shipment-shell .shipment-mode-switch { width:100%; }
  .new-shipment-shell .shipment-mode-switch a { flex:1;padding:.6rem .4rem;white-space:normal; }
  .new-shipment-shell .shipment-form-flow { gap:.8rem; }
  .new-shipment-shell .shipment-form-flow .form-section { padding:1rem; }
  .new-shipment-shell .form-mode { display:block; }
  .new-shipment-shell .form-mode .form-section-header { margin:0 0 .9rem;padding:0 0 .8rem;border-bottom:1px solid var(--portal-line-subtle); }
  .new-shipment-shell .form-mode>.field-error { grid-column:auto; }
  .new-shipment-shell .variant-grid { grid-template-columns:1fr; }
  .new-shipment-shell .variant-grid>label { display:grid;grid-template-columns:2.6rem minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;justify-content:normal;gap:.1rem .65rem;min-height:4.4rem;padding:.7rem .85rem; }
  .new-shipment-shell .variant-grid>label>span { grid-row:1/3; }
  .new-shipment-shell .variant-grid>label strong { grid-column:2; }
  .new-shipment-shell .variant-grid>label small { display:block;grid-column:2;line-height:1.3; }
  .new-shipment-shell .variant-grid>label .variant-check { display:block;position:static;grid-column:3;grid-row:1/3; }
  .new-shipment-shell .package-list { grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem; }
  .new-shipment-shell .package-row,.new-shipment-shell .package-add-tile { max-width:none; }
  .new-shipment-shell .package-row { grid-template-rows:1.55rem 2.2rem auto auto;gap:.18rem;padding:.4rem; }
  .new-shipment-shell .package-parcel { width:3.6rem;height:2.2rem; }
  .new-shipment-shell .package-row label { margin-bottom:.1rem;font-size:.68rem;line-height:1.15; }
  .new-shipment-shell .package-row .form-control,.new-shipment-shell .package-row .form-select { min-height:1.7rem;padding-block:.15rem;font-size:.78rem; }
  .new-shipment-shell .remove-package { width:2rem;height:2rem; }
  .new-shipment-shell .shipment-form-flow .form-submit-bar { align-items:stretch;flex-direction:column; }
  .new-shipment-shell .shipment-form-flow .form-submit-bar .btn { width:100%; }
}
