/* Printuvi Logistics guided form layers. Existing business logic and form fields stay intact. */
.printuvi-logistics-load-form,
.printuvi-registration-card,
.printuvi-logistics-portal,
.printuvi-logistics-load-form .load-form-card,
.printuvi-registration-card fieldset {
  --pu-bg: #171d24;
  --pu-card: #202832;
  --pu-card-alt: #252f39;
  --pu-text: #f4f7f8;
  --pu-muted: #bac6cd;
  --pu-line: #3a4652;
  --pu-accent: #32d49b;
  --pu-accent-ink: #09271d;
  color: var(--pu-text);
}
.printuvi-logistics-load-form[data-printuvi-theme="slate-emerald"],
.printuvi-registration-card[data-printuvi-theme="slate-emerald"],
.printuvi-logistics-portal[data-printuvi-theme="slate-emerald"],
.printuvi-logistics-load-form[data-printuvi-theme="slate-emerald"] .load-form-card,
.printuvi-registration-card[data-printuvi-theme="slate-emerald"] fieldset { background-color: var(--pu-bg); color: var(--pu-text); }
.printuvi-logistics-load-form[data-printuvi-theme="white"],
.printuvi-registration-card[data-printuvi-theme="white"],
.printuvi-logistics-portal[data-printuvi-theme="white"],
.printuvi-logistics-load-form[data-printuvi-theme="white"] .load-form-card,
.printuvi-registration-card[data-printuvi-theme="white"] fieldset {
  --pu-bg: #fff; --pu-card: #fff; --pu-card-alt: #f6f8fa; --pu-text: #17212b; --pu-muted: #5d6975; --pu-line: #d5dce3; --pu-accent: #087f5b; --pu-accent-ink: #fff;
  background-color: var(--pu-bg); color: var(--pu-text);
}
.printuvi-logistics-load-form[data-printuvi-theme="ocean"],
.printuvi-registration-card[data-printuvi-theme="ocean"],
.printuvi-logistics-portal[data-printuvi-theme="ocean"],
.printuvi-logistics-load-form[data-printuvi-theme="ocean"] .load-form-card,
.printuvi-registration-card[data-printuvi-theme="ocean"] fieldset {
  --pu-bg: #102238; --pu-card: #17324d; --pu-card-alt: #1d405d; --pu-text: #f4f8ff; --pu-muted: #c1d0e0; --pu-line: #345572; --pu-accent: #55c8f0; --pu-accent-ink: #082135;
  background-color: var(--pu-bg); color: var(--pu-text);
}
.printuvi-logistics-load-form[data-printuvi-theme] input,
.printuvi-logistics-load-form[data-printuvi-theme] select,
.printuvi-logistics-load-form[data-printuvi-theme] textarea,
.printuvi-registration-card[data-printuvi-theme] input,
.printuvi-registration-card[data-printuvi-theme] select,
.printuvi-registration-card[data-printuvi-theme] textarea {
  color: var(--pu-text); background: var(--pu-card); border-color: var(--pu-line);
}
.printuvi-logistics-load-form[data-printuvi-theme] label,
.printuvi-logistics-load-form[data-printuvi-theme] h2,
.printuvi-logistics-load-form[data-printuvi-theme] h3,
.printuvi-logistics-load-form[data-printuvi-theme] h4,
.printuvi-logistics-load-form[data-printuvi-theme] p,
.printuvi-registration-card[data-printuvi-theme] label,
.printuvi-registration-card[data-printuvi-theme] h2,
.printuvi-registration-card[data-printuvi-theme] h3,
.printuvi-registration-card[data-printuvi-theme] h4,
.printuvi-registration-card[data-printuvi-theme] p { color: inherit; }
.printuvi-wizard { width: 100%; margin: 0 0 1.25rem; }
.printuvi-wizard-heading { position: relative; padding: 1.25rem 1.35rem; border: 1px solid var(--pu-line); border-radius: 16px; background: var(--pu-card); margin-bottom: 1rem; }
.printuvi-wizard-eyebrow { margin: 0 0 .35rem; color: var(--pu-accent) !important; font-size: .72rem; font-weight: 800; letter-spacing: .12em; }
.printuvi-wizard-heading h3 { margin: 0 0 .4rem; font-size: clamp(1.3rem, 3vw, 1.8rem); line-height: 1.25; color: var(--pu-text) !important; }
.printuvi-wizard-heading__hint { margin: 0; color: var(--pu-muted) !important; max-width: 70ch; }
.printuvi-wizard-progress { background: var(--pu-card); border: 1px solid var(--pu-line); border-radius: 14px; padding: .7rem; margin-bottom: 1rem; overflow-x: auto; }
.printuvi-wizard-progress__list { list-style: none; display: grid; grid-template-columns: repeat(5, minmax(105px, 1fr)); gap: .4rem; padding: 0; margin: 0; min-width: 540px; }
.printuvi-wizard-progress__item { display: flex; align-items: center; gap: .55rem; min-width: 0; padding: .55rem .6rem; border-radius: 10px; color: var(--pu-muted); font-size: .82rem; }
.printuvi-wizard-progress__number { flex: 0 0 1.85rem; width: 1.85rem; height: 1.85rem; border-radius: 50%; display: inline-grid; place-items: center; border: 1px solid var(--pu-line); font-weight: 800; }
.printuvi-wizard-progress__item.is-current { background: var(--pu-card-alt); color: var(--pu-text); font-weight: 700; }
.printuvi-wizard-progress__item.is-current .printuvi-wizard-progress__number,
.printuvi-wizard-progress__item.is-complete .printuvi-wizard-progress__number { background: var(--pu-accent); color: var(--pu-accent-ink); border-color: var(--pu-accent); }
.printuvi-wizard-progress__label { overflow-wrap: anywhere; line-height: 1.25; }
.printuvi-wizard-step-status { margin: .2rem 0 .75rem; color: var(--pu-muted); font-size: .82rem; }
.printuvi-wizard-panel { border: 1px solid var(--pu-line); border-radius: 16px; padding: clamp(1rem, 2vw, 1.5rem); background: var(--pu-card); color: var(--pu-text); }
.printuvi-wizard-panel[hidden] { display: none !important; }
.printuvi-wizard-panel__title { margin: 0 0 1rem; font-size: 1.2rem; color: var(--pu-text) !important; }
.printuvi-wizard-actions { display: flex; justify-content: space-between; align-items: center; gap: .75rem; margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--pu-line); }
.printuvi-wizard-actions__spacer { flex: 1; }
.printuvi-wizard-button { appearance: none; display: inline-flex; justify-content: center; align-items: center; min-height: 42px; padding: .7rem 1.1rem; border: 1px solid var(--pu-line); border-radius: 9px; background: var(--pu-card-alt); color: var(--pu-text); font: inherit; font-weight: 700; line-height: 1.15; cursor: pointer; }
.printuvi-wizard-button--primary { background: var(--pu-accent); border-color: var(--pu-accent); color: var(--pu-accent-ink); }
.printuvi-wizard-button:disabled { opacity: .65; cursor: wait; }
.printuvi-wizard-review { border: 1px solid var(--pu-line); border-radius: 12px; padding: 1rem; background: var(--pu-card-alt); }
.printuvi-wizard-review .load-price-card { margin-bottom: 1rem; }
.printuvi-theme-toggle { position: relative; z-index: 1; margin: .25rem 0 .5rem auto; display: inline-flex; align-items: center; justify-content: center; gap: .4rem; padding: .5rem .8rem; border-radius: 999px; background: var(--pu-card, #202832); color: var(--pu-text, #fff); border: 1px solid var(--pu-line, #3a4652); font-size: .78rem; font-weight: 700; cursor: pointer; }
.printuvi-registration-card--wizard { max-width: 960px; }
.printuvi-registration-card--wizard .printuvi-registration-form { display: block; }
.printuvi-registration-card--wizard .printuvi-registration-form > fieldset { border: 1px solid var(--pu-line); border-radius: 12px; margin: 0 0 1rem; padding: 1rem; background: var(--pu-card); }
.printuvi-registration-card--wizard .printuvi-registration-form > fieldset legend { color: var(--pu-text); font-weight: 800; padding: 0 .4rem; }
.printuvi-vies-control { margin: .6rem 0 1rem; }
.printuvi-vies-result { margin: .45rem 0 0; font-size: .88rem; color: var(--pu-muted) !important; }
.printuvi-vies-result.is-success { color: #0b9b63 !important; font-weight: 700; }
.printuvi-logistics-load-form[data-printuvi-theme] .load-form-help,
.printuvi-logistics-load-form[data-printuvi-theme] .load-address-status,
.printuvi-logistics-load-form[data-printuvi-theme] .load-summary-card__hint,
.printuvi-registration-card[data-printuvi-theme] small,
.printuvi-registration-card[data-printuvi-theme] .description { color: var(--pu-muted); }
@media (max-width: 640px) {
  .printuvi-wizard-progress { padding: .35rem; }
  .printuvi-wizard-progress__item { flex-direction: column; align-items: flex-start; gap: .35rem; padding: .45rem; }
  .printuvi-wizard-progress__label { font-size: .72rem; }
  .printuvi-wizard-panel { padding: .8rem; }
  .printuvi-wizard-actions { position: sticky; bottom: .25rem; z-index: 4; background: var(--pu-card); }
  .printuvi-theme-toggle { font-size: .72rem; }
}

/* Theme switch also skins the real dashboard cards, not only the outer wrapper. */
.shipper-dashboard[data-printuvi-theme],
.driver-dashboard[data-printuvi-theme],
.driver-profile-page[data-printuvi-theme] {
  --pu-bg: #171d24; --pu-card: #202832; --pu-card-alt: #252f39; --pu-text: #f4f7f8;
  --pu-muted: #bac6cd; --pu-line: #3a4652; --pu-accent: #32d49b; --pu-accent-ink: #09271d;
  background: var(--pu-bg) !important; color: var(--pu-text) !important;
}
.shipper-dashboard[data-printuvi-theme="white"],
.driver-dashboard[data-printuvi-theme="white"],
.driver-profile-page[data-printuvi-theme="white"] {
  --pu-bg: #f5f7fa; --pu-card: #fff; --pu-card-alt: #eef2f6; --pu-text: #17212b;
  --pu-muted: #5d6975; --pu-line: #d5dce3; --pu-accent: #087f5b; --pu-accent-ink: #fff;
}
.shipper-dashboard[data-printuvi-theme="ocean"],
.driver-dashboard[data-printuvi-theme="ocean"],
.driver-profile-page[data-printuvi-theme="ocean"] {
  --pu-bg: #102238; --pu-card: #17324d; --pu-card-alt: #1d405d; --pu-text: #f4f8ff;
  --pu-muted: #c1d0e0; --pu-line: #345572; --pu-accent: #55c8f0; --pu-accent-ink: #082135;
}
.shipper-dashboard[data-printuvi-theme] .shipper-panel,
.shipper-dashboard[data-printuvi-theme] .shipper-kpi-card,
.shipper-dashboard[data-printuvi-theme] .shipper-dashboard__header,
.shipper-dashboard[data-printuvi-theme] .shipper-dashboard__lower-grid,
.driver-dashboard[data-printuvi-theme] .driver-panel,
.driver-dashboard[data-printuvi-theme] .driver-kpi-card,
.driver-profile-page[data-printuvi-theme] .driver-panel {
  background: var(--pu-card) !important; border-color: var(--pu-line) !important; color: var(--pu-text) !important;
}
.shipper-dashboard[data-printuvi-theme] h1,
.shipper-dashboard[data-printuvi-theme] h2,
.shipper-dashboard[data-printuvi-theme] h3,
.shipper-dashboard[data-printuvi-theme] p,
.shipper-dashboard[data-printuvi-theme] span,
.shipper-dashboard[data-printuvi-theme] strong,
.shipper-dashboard[data-printuvi-theme] td,
.shipper-dashboard[data-printuvi-theme] th,
.driver-dashboard[data-printuvi-theme] h1,
.driver-dashboard[data-printuvi-theme] h2,
.driver-dashboard[data-printuvi-theme] h3,
.driver-dashboard[data-printuvi-theme] p,
.driver-dashboard[data-printuvi-theme] span,
.driver-dashboard[data-printuvi-theme] strong,
.driver-profile-page[data-printuvi-theme] h1,
.driver-profile-page[data-printuvi-theme] h2,
.driver-profile-page[data-printuvi-theme] h3,
.driver-profile-page[data-printuvi-theme] p,
.driver-profile-page[data-printuvi-theme] span,
.driver-profile-page[data-printuvi-theme] strong { color: var(--pu-text); }
.shipper-dashboard[data-printuvi-theme] .shipper-panel__heading p,
.shipper-dashboard[data-printuvi-theme] .shipper-kpi-card__label,
.shipper-dashboard[data-printuvi-theme] .shipper-activity-list p,
.shipper-dashboard[data-printuvi-theme] .shipper-table__secondary,
.driver-dashboard[data-printuvi-theme] .driver-panel small,
.driver-profile-page[data-printuvi-theme] .driver-profile-form small { color: var(--pu-muted) !important; }
.shipper-dashboard[data-printuvi-theme] table,
.shipper-dashboard[data-printuvi-theme] th,
.shipper-dashboard[data-printuvi-theme] td { border-color: var(--pu-line) !important; }
.shipper-dashboard[data-printuvi-theme] input,
.shipper-dashboard[data-printuvi-theme] select,
.shipper-dashboard[data-printuvi-theme] textarea,
.driver-dashboard[data-printuvi-theme] input,
.driver-dashboard[data-printuvi-theme] select,
.driver-dashboard[data-printuvi-theme] textarea,
.driver-profile-page[data-printuvi-theme] input,
.driver-profile-page[data-printuvi-theme] select,
.driver-profile-page[data-printuvi-theme] textarea {
  background: var(--pu-card) !important; border-color: var(--pu-line) !important; color: var(--pu-text) !important;
}
.printuvi-theme-toggle { display:inline-flex; align-items:center; justify-content:center; gap:.35rem; margin:.5rem 0; padding:.55rem .8rem; border:1px solid var(--pu-line,#cbd5e1); border-radius:999px; background:var(--pu-card,#fff); color:var(--pu-text,#17212b); font-weight:700; cursor:pointer; }


/* Shared palette system for the actual portal views, including job/load detail pages. */
.printuvi-logistics-portal[data-printuvi-theme],
.shipper-load-view[data-printuvi-theme],
.driver-job-page[data-printuvi-theme],
.driver-available-loads-page[data-printuvi-theme],
.shipper-profile-page[data-printuvi-theme],
.shipper-invoice-view[data-printuvi-theme],
.driver-statements-page[data-printuvi-theme],
.driver-earnings-page[data-printuvi-theme] {
  --pu-bg: #171d24; --pu-card: #202832; --pu-card-alt: #252f39; --pu-text: #f4f7f8;
  --pu-muted: #bac6cd; --pu-line: #3a4652; --pu-accent: #32d49b; --pu-accent-ink: #09271d;
  background: var(--pu-bg); color: var(--pu-text);
}
.printuvi-logistics-portal[data-printuvi-theme="white"],
.shipper-load-view[data-printuvi-theme="white"], .driver-job-page[data-printuvi-theme="white"],
.driver-available-loads-page[data-printuvi-theme="white"], .shipper-profile-page[data-printuvi-theme="white"],
.shipper-invoice-view[data-printuvi-theme="white"], .driver-statements-page[data-printuvi-theme="white"],
.driver-earnings-page[data-printuvi-theme="white"] {
  --pu-bg: #f5f7fa; --pu-card: #fff; --pu-card-alt: #eef2f6; --pu-text: #17212b;
  --pu-muted: #5d6975; --pu-line: #d5dce3; --pu-accent: #087f5b; --pu-accent-ink: #fff;
}
.printuvi-logistics-portal[data-printuvi-theme="ocean"],
.shipper-load-view[data-printuvi-theme="ocean"], .driver-job-page[data-printuvi-theme="ocean"],
.driver-available-loads-page[data-printuvi-theme="ocean"], .shipper-profile-page[data-printuvi-theme="ocean"],
.shipper-invoice-view[data-printuvi-theme="ocean"], .driver-statements-page[data-printuvi-theme="ocean"],
.driver-earnings-page[data-printuvi-theme="ocean"] {
  --pu-bg: #102238; --pu-card: #17324d; --pu-card-alt: #1d405d; --pu-text: #f4f8ff;
  --pu-muted: #c1d0e0; --pu-line: #345572; --pu-accent: #55c8f0; --pu-accent-ink: #082135;
}
.shipper-load-view[data-printuvi-theme] .shipper-panel,
.shipper-load-view[data-printuvi-theme] .shipper-load-view__header,
.driver-job-page[data-printuvi-theme] .driver-job-panel,
.driver-available-loads-page[data-printuvi-theme] .driver-panel,
.driver-available-loads-page[data-printuvi-theme] .driver-load-card,
.driver-job-page[data-printuvi-theme] .driver-job-page__header {
  background: var(--pu-card) !important; border-color: var(--pu-line) !important; color: var(--pu-text) !important;
}
.shipper-load-view[data-printuvi-theme] p, .shipper-load-view[data-printuvi-theme] h1,
.shipper-load-view[data-printuvi-theme] h2, .shipper-load-view[data-printuvi-theme] h3,
.shipper-load-view[data-printuvi-theme] dt, .shipper-load-view[data-printuvi-theme] dd,
.driver-job-page[data-printuvi-theme] p, .driver-job-page[data-printuvi-theme] h1,
.driver-job-page[data-printuvi-theme] h2, .driver-job-page[data-printuvi-theme] h3,
.driver-available-loads-page[data-printuvi-theme] p, .driver-available-loads-page[data-printuvi-theme] h1,
.driver-available-loads-page[data-printuvi-theme] h2, .driver-available-loads-page[data-printuvi-theme] h3 { color: inherit; }
.shipper-load-view[data-printuvi-theme] input, .shipper-load-view[data-printuvi-theme] select,
.shipper-load-view[data-printuvi-theme] textarea, .driver-job-page[data-printuvi-theme] input,
.driver-job-page[data-printuvi-theme] select, .driver-job-page[data-printuvi-theme] textarea,
.driver-available-loads-page[data-printuvi-theme] input, .driver-available-loads-page[data-printuvi-theme] select,
.driver-available-loads-page[data-printuvi-theme] textarea { background: var(--pu-card-alt); color: var(--pu-text); border-color: var(--pu-line); }
.shipper-load-view[data-printuvi-theme] small, .driver-job-page[data-printuvi-theme] small,
.driver-available-loads-page[data-printuvi-theme] small { color: var(--pu-muted); }
.driver-offer-panel, .shipper-offer-item { padding: 1rem; border: 1px solid var(--pu-line, #d5dce3); border-radius: 12px; background: var(--pu-card, #fff); color: var(--pu-text, #17212b); margin: .8rem 0; }
.driver-offer-panel p, .shipper-offer-item p { margin: .4rem 0; }
.driver-offer-panel label, .shipper-offer-counter label { display: grid; gap: .4rem; margin: .5rem 0; }
.driver-offer-panel textarea, .shipper-offer-counter textarea { width: 100%; }
.driver-offer-panel small { color: var(--pu-muted); }
.shipper-offer-list { display: grid; gap: .8rem; }
.shipper-offer-actions { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .6rem; margin-top: .8rem; }
.shipper-offer-counter { flex: 1 1 260px; display: grid; gap: .6rem; }
.shipper-offer-counter input, .shipper-offer-counter textarea { width: 100%; }
.shipper-pod-evidence-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: .8rem; margin-top: 1rem; }
.shipper-pod-evidence-grid a { display: grid; gap: .5rem; border: 1px solid var(--pu-line, #d5dce3); border-radius: 10px; padding: .7rem; color: inherit; text-decoration: none; }
.shipper-pod-evidence-grid img { width: 100%; height: 180px; object-fit: contain; background: var(--pu-card-alt, #f6f8fa); border-radius: 6px; }
.printuvi-pod-form { display: grid; gap: 1rem; }
.printuvi-pod-form > label { display: grid; gap: .4rem; }
.printuvi-pod-form input[type="text"], .printuvi-pod-form textarea { width: 100%; }
.printuvi-pod-form input[type="file"] { border: 1px dashed var(--pu-line, #ccd5de); padding: .7rem; border-radius: 8px; width: 100%; }
.printuvi-pod-signature canvas { display: block; width: 100%; min-height: 140px; border: 2px dashed var(--pu-line, #ccd5de); border-radius: 10px; touch-action: none; background: #fff; }
.printuvi-pod-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .6rem; margin-top: .5rem; }
.printuvi-pod-actions [data-pod-status] { color: var(--pu-muted, #596878); font-size: .85rem; }
@media (max-width: 640px) { .shipper-offer-actions { display: grid; grid-template-columns: 1fr; } .shipper-offer-actions form { width: 100%; } .shipper-offer-actions button { width: 100%; } }

/* Apply the same accessible three-palette system to every existing logistics portal root. */
.printuvi-logistics-shipper-portal[data-printuvi-theme],
.printuvi-driver-portal[data-printuvi-theme],
.standalone-profile[data-printuvi-theme],
.printuvi-logistics-shipper-profile[data-printuvi-theme],
.printuvi-logistics-driver-profile[data-printuvi-theme],
.printuvi-invoice-page[data-printuvi-theme],
.printuvi-invoices-page[data-printuvi-theme],
.printuvi-logistics-shipper-jobs[data-printuvi-theme] {
  --pu-bg: #171d24; --pu-card: #202832; --pu-card-alt: #252f39; --pu-text: #f4f7f8;
  --pu-muted: #bac6cd; --pu-line: #3a4652; --pu-accent: #32d49b; --pu-accent-ink: #09271d;
  background: var(--pu-bg); color: var(--pu-text);
}
.printuvi-logistics-shipper-portal[data-printuvi-theme="white"],
.printuvi-driver-portal[data-printuvi-theme="white"],
.standalone-profile[data-printuvi-theme="white"],
.printuvi-logistics-shipper-profile[data-printuvi-theme="white"],
.printuvi-logistics-driver-profile[data-printuvi-theme="white"],
.printuvi-invoice-page[data-printuvi-theme="white"],
.printuvi-invoices-page[data-printuvi-theme="white"],
.printuvi-logistics-shipper-jobs[data-printuvi-theme="white"] {
  --pu-bg: #f5f7fa; --pu-card: #fff; --pu-card-alt: #eef2f6; --pu-text: #17212b;
  --pu-muted: #5d6975; --pu-line: #d5dce3; --pu-accent: #087f5b; --pu-accent-ink: #fff;
}
.printuvi-logistics-shipper-portal[data-printuvi-theme="ocean"],
.printuvi-driver-portal[data-printuvi-theme="ocean"],
.standalone-profile[data-printuvi-theme="ocean"],
.printuvi-logistics-shipper-profile[data-printuvi-theme="ocean"],
.printuvi-logistics-driver-profile[data-printuvi-theme="ocean"],
.printuvi-invoice-page[data-printuvi-theme="ocean"],
.printuvi-invoices-page[data-printuvi-theme="ocean"],
.printuvi-logistics-shipper-jobs[data-printuvi-theme="ocean"] {
  --pu-bg: #102238; --pu-card: #17324d; --pu-card-alt: #1d405d; --pu-text: #f4f8ff;
  --pu-muted: #c1d0e0; --pu-line: #345572; --pu-accent: #55c8f0; --pu-accent-ink: #082135;
}
.printuvi-logistics-shipper-portal[data-printuvi-theme] :is(.shipper-panel, .shipper-kpi-card, .shipper-dashboard__header, .shipper-dashboard__lower-grid, .shipper-load-view__header, .shipper-invoice-layout),
.printuvi-driver-portal[data-printuvi-theme] :is(.driver-panel, .driver-kpi-card, .driver-dashboard__header, .driver-job-panel, .driver-load-card),
.standalone-profile[data-printuvi-theme] :is(.shipper-profile-card, .driver-profile-card, .shipper-panel, .driver-panel),
.printuvi-logistics-shipper-profile[data-printuvi-theme] :is(.shipper-profile-card, .shipper-panel),
.printuvi-logistics-driver-profile[data-printuvi-theme] :is(.driver-profile-card, .driver-panel),
.printuvi-invoice-page[data-printuvi-theme] :is(.invoice-card, .printuvi-invoice-card, .driver-panel, .shipper-panel),
.printuvi-invoices-page[data-printuvi-theme] :is(.invoice-card, .printuvi-invoice-card, .driver-panel, .shipper-panel),
.printuvi-logistics-shipper-jobs[data-printuvi-theme] :is(.shipper-panel, .shipper-job-card) {
  background: var(--pu-card); border-color: var(--pu-line); color: var(--pu-text);
}
.printuvi-logistics-shipper-portal[data-printuvi-theme] :is(h1,h2,h3,h4,p,span,strong,td,th,dt,dd,label),
.printuvi-driver-portal[data-printuvi-theme] :is(h1,h2,h3,h4,p,span,strong,td,th,dt,dd,label),
.standalone-profile[data-printuvi-theme] :is(h1,h2,h3,h4,p,span,strong,td,th,dt,dd,label),
.printuvi-logistics-shipper-profile[data-printuvi-theme] :is(h1,h2,h3,h4,p,span,strong,td,th,dt,dd,label),
.printuvi-logistics-driver-profile[data-printuvi-theme] :is(h1,h2,h3,h4,p,span,strong,td,th,dt,dd,label),
.printuvi-invoice-page[data-printuvi-theme] :is(h1,h2,h3,h4,p,span,strong,td,th,dt,dd,label),
.printuvi-invoices-page[data-printuvi-theme] :is(h1,h2,h3,h4,p,span,strong,td,th,dt,dd,label),
.printuvi-logistics-shipper-jobs[data-printuvi-theme] :is(h1,h2,h3,h4,p,span,strong,td,th,dt,dd,label) { color: inherit; }
.printuvi-logistics-shipper-portal[data-printuvi-theme] :is(input,select,textarea),
.printuvi-driver-portal[data-printuvi-theme] :is(input,select,textarea),
.standalone-profile[data-printuvi-theme] :is(input,select,textarea),
.printuvi-logistics-shipper-profile[data-printuvi-theme] :is(input,select,textarea),
.printuvi-logistics-driver-profile[data-printuvi-theme] :is(input,select,textarea),
.printuvi-invoice-page[data-printuvi-theme] :is(input,select,textarea),
.printuvi-invoices-page[data-printuvi-theme] :is(input,select,textarea),
.printuvi-logistics-shipper-jobs[data-printuvi-theme] :is(input,select,textarea) {
  background: var(--pu-card); border-color: var(--pu-line); color: var(--pu-text);
}

/* One page-level appearance toolbar shared across every existing logistics screen. */
.printuvi-appearance-toolbar {
  --pu-toolbar-bg: var(--pu-card, #202832);
  --pu-toolbar-text: var(--pu-text, #f4f7f8);
  --pu-toolbar-line: var(--pu-line, #3a4652);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .75rem;
  flex-wrap: wrap;
  width: 100%;
  box-sizing: border-box;
  margin: 0 0 .9rem;
  padding: .55rem .75rem;
  background: var(--pu-toolbar-bg);
  border: 1px solid var(--pu-toolbar-line);
  border-radius: 12px;
  color: var(--pu-toolbar-text);
}
.printuvi-appearance-switch-label,
.printuvi-appearance-palette-label {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  color: inherit;
  font-size: .8rem;
  font-weight: 700;
}
.printuvi-appearance-switch-label { cursor: pointer; user-select: none; }
.printuvi-appearance-switch {
  appearance: none;
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  overflow: hidden;
}
.printuvi-appearance-switch-track {
  position: relative;
  display: inline-block;
  flex: 0 0 2.7rem;
  width: 2.7rem;
  height: 1.45rem;
  border-radius: 99px;
  background: #7b8794;
  border: 1px solid rgba(127, 140, 153, .75);
  box-sizing: border-box;
  transition: background .16s ease;
}
.printuvi-appearance-switch-track::after {
  content: '';
  position: absolute;
  top: .16rem;
  left: .16rem;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .25);
  transition: transform .16s ease;
}
.printuvi-appearance-switch:checked + .printuvi-appearance-switch-track { background: #0a9f72; }
.printuvi-appearance-switch:checked + .printuvi-appearance-switch-track::after { transform: translateX(1.25rem); }
.printuvi-appearance-switch:focus-visible + .printuvi-appearance-switch-track,
.printuvi-appearance-palette:focus-visible { outline: 3px solid #55c8f0; outline-offset: 2px; }
.printuvi-appearance-palette-label > span { white-space: nowrap; }
.printuvi-appearance-palette {
  min-height: 38px;
  max-width: 100%;
  padding: .35rem 2rem .35rem .6rem;
  background: var(--pu-card-alt, #252f39);
  color: var(--pu-text, #f4f7f8);
  border: 1px solid var(--pu-toolbar-line);
  border-radius: 8px;
  font: inherit;
  font-size: .8rem;
}
@media (max-width: 520px) {
  .printuvi-appearance-toolbar { justify-content: space-between; gap: .5rem; }
  .printuvi-appearance-palette-label { flex: 1 1 100%; justify-content: space-between; }
  .printuvi-appearance-palette { flex: 1 1 auto; min-width: 0; }
}

/* Dark/light applies to the whole logistics page canvas, not only the form cards. */
body.printuvi-logistics-theme-context[data-printuvi-theme="slate-emerald"] {
  --pu-page-bg: #151a20; --pu-page-card: #202832; --pu-page-card-alt: #252f39; --pu-page-line: #3a4652;
  --pu-page-text: #f4f7f8; --pu-page-muted: #bac6cd; --pu-page-accent: #32d49b;
  background: var(--pu-page-bg) !important; color: var(--pu-page-text);
}
body.printuvi-logistics-theme-context[data-printuvi-theme="white"] {
  --pu-page-bg: #fff; --pu-page-card: #fff; --pu-page-card-alt: #f3f6f9; --pu-page-line: #d5dce3;
  --pu-page-text: #17212b; --pu-page-muted: #5d6975; --pu-page-accent: #087f5b;
  background: var(--pu-page-bg) !important; color: var(--pu-page-text);
}
body.printuvi-logistics-theme-context[data-printuvi-theme="ocean"] {
  --pu-page-bg: #102238; --pu-page-card: #17324d; --pu-page-card-alt: #1d405d; --pu-page-line: #345572;
  --pu-page-text: #f4f8ff; --pu-page-muted: #c1d0e0; --pu-page-accent: #55c8f0;
  background: var(--pu-page-bg) !important; color: var(--pu-page-text);
}
body.printuvi-logistics-theme-context #content,
body.printuvi-logistics-theme-context .site-content,
body.printuvi-logistics-theme-context .content-area,
body.printuvi-logistics-theme-context .site-main,
body.printuvi-logistics-theme-context main {
  background: var(--pu-page-bg, #fff) !important;
  color: var(--pu-page-text, #17212b);
}
body.printuvi-logistics-theme-context[data-printuvi-theme="slate-emerald"] .entry-content,
body.printuvi-logistics-theme-context[data-printuvi-theme="ocean"] .entry-content { color: var(--pu-page-text); }

/* Apply the selected palette to shared portal panels and inputs across all existing logistics pages. */
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-panel,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-kpi-card,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-dashboard__header,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-panel,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-kpi-card,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-load-card,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-job-panel,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-job-page__header,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-load-view__header,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-offer-item,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-profile-panel,
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-billing-page .plu-settings-card,
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-invoice-page .plu-settings-card,
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-notifications-page .plu-settings-card,
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-logistics-load-details .plu-settings-card {
  background: var(--pu-page-card) !important;
  color: var(--pu-page-text) !important;
  border-color: var(--pu-page-line) !important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-job-page input,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-job-page select,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-job-page textarea,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-profile-page input,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-profile-page select,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-profile-page textarea,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-load-view input,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-load-view select,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-load-view textarea,
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-registration-card input,
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-registration-card select,
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-registration-card textarea {
  background: var(--pu-page-card-alt) !important;
  color: var(--pu-page-text) !important;
  border-color: var(--pu-page-line) !important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-panel p,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-panel p,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-job-page p,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-load-view p,
body.printuvi-logistics-theme-context[data-printuvi-theme] .driver-profile-page small,
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-profile-page small {
  color: var(--pu-page-muted);
}
body.printuvi-logistics-theme-context[data-printuvi-theme="white"] .printuvi-appearance-toolbar {
  background: #fff; color: #17212b; border-color: #d5dce3;
}


/* v1.8.2 accessibility hardening: one palette contract for dashboard content rendered
 * both inside and immediately after the primary shortcode root. This intentionally
 * overrides legacy light-only table/text rules in frontend.css. */
body.printuvi-logistics-theme-context[data-printuvi-theme="slate-emerald"] {
  --pu-bg:#171d24; --pu-card:#202832; --pu-card-alt:#252f39; --pu-text:#f4f7f8;
  --pu-muted:#c5d0d6; --pu-line:#465361; --pu-accent:#54e0ad; --pu-accent-ink:#071f17;
  --pu-link:#8ddcff; --pu-danger:#fecaca; --pu-danger-bg:#4c1d1d; --pu-success:#bbf7d0;
  --pu-success-bg:#123b2b; --pu-warning:#fde68a; --pu-warning-bg:#4b3510;
}
body.printuvi-logistics-theme-context[data-printuvi-theme="ocean"] {
  --pu-bg:#102238; --pu-card:#17324d; --pu-card-alt:#1d405d; --pu-text:#f8fbff;
  --pu-muted:#d0dceb; --pu-line:#466783; --pu-accent:#70d5f7; --pu-accent-ink:#071f31;
  --pu-link:#92ddff; --pu-danger:#fecaca; --pu-danger-bg:#542126; --pu-success:#bbf7d0;
  --pu-success-bg:#123b31; --pu-warning:#fde68a; --pu-warning-bg:#4a3914;
}
body.printuvi-logistics-theme-context[data-printuvi-theme="white"] {
  --pu-bg:#f5f7fa; --pu-card:#fff; --pu-card-alt:#eef2f6; --pu-text:#17212b;
  --pu-muted:#52606d; --pu-line:#cbd5df; --pu-accent:#087f5b; --pu-accent-ink:#fff;
  --pu-link:#1d4ed8; --pu-danger:#b42318; --pu-danger-bg:#fee4e2; --pu-success:#067647;
  --pu-success-bg:#dcfae6; --pu-warning:#92400e; --pu-warning-bg:#fef3c7;
}

body.printuvi-logistics-theme-context[data-printuvi-theme] :is(
  .shipper-dashboard,.driver-dashboard,.printuvi-logistics-shipper-portal,.printuvi-driver-portal,
  .standalone-profile,.printuvi-logistics-shipper-profile,.printuvi-logistics-driver-profile,
  .shipper-load-view,.driver-job-page,.driver-available-loads-page,.shipper-profile-page,
  .shipper-invoice-view,.driver-statements-page,.driver-earnings-page,
  .printuvi-dashboard-utility,.printuvi-dashboard-utility__body,.plu-panel,.plu-card
) {
  color:var(--pu-text)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(
  .shipper-panel,.driver-panel,.shipper-kpi-card,.driver-kpi-card,.printuvi-dashboard-utility,
  .plu-panel,.plu-card,.shipper-dashboard__header,.driver-dashboard__header
) {
  background:var(--pu-card)!important;
  border-color:var(--pu-line)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(
  h1,h2,h3,h4,h5,h6,strong,label,dt,dd,td
) { color:var(--pu-text)!important; }
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(
  p,small,.description,.shipper-panel__heading p,.driver-panel small,.shipper-table__secondary,
  .shipper-kpi-card__label,.shipper-activity-list p,.tracking-meta
) { color:var(--pu-muted)!important; }
body.printuvi-logistics-theme-context[data-printuvi-theme] a:not(.button):not(.shipper-button):not(.driver-button) {
  color:var(--pu-link)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(table,th,td) {
  border-color:var(--pu-line)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(th,td) {
  background:transparent!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] th {
  color:var(--pu-muted)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(input,select,textarea) {
  background:var(--pu-card-alt)!important;
  color:var(--pu-text)!important;
  border-color:var(--pu-line)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(input,textarea)::placeholder {
  color:var(--pu-muted)!important;
  opacity:.85;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-status-badge {
  background:var(--pu-card-alt)!important;
  color:var(--pu-text)!important;
  border:1px solid var(--pu-line)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(.shipper-status-badge.status-cancelled,.shipper-status-badge.status-rejected) {
  background:var(--pu-danger-bg)!important;
  color:var(--pu-danger)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] :is(.shipper-status-badge.status-completed,.shipper-status-badge.status-published) {
  background:var(--pu-success-bg)!important;
  color:var(--pu-success)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .shipper-status-badge.status-pending_approval {
  background:var(--pu-warning-bg)!important;
  color:var(--pu-warning)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-utility-action {
  background:var(--pu-card-alt)!important;
  border-color:var(--pu-line)!important;
  color:var(--pu-link)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-dashboard-utility > summary {
  background:var(--pu-card)!important;
  color:var(--pu-text)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-dashboard-utility > summary strong {
  color:var(--pu-text)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-dashboard-utility > summary small {
  color:var(--pu-muted)!important;
}
body.printuvi-logistics-theme-context[data-printuvi-theme] .printuvi-dashboard-utility[open] > summary {
  border-bottom-color:var(--pu-line)!important;
}

/* Compact shipper account utilities: no secondary footer-like wall of content. */
.printuvi-dashboard-utilities--account {
  margin-top:0;
}
.printuvi-account-utility__body > .plu-panel {
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.printuvi-account-utility__body > .plu-panel > h3:first-child {
  display:none;
}
.printuvi-account-utility__body > .plu-panel > p:first-of-type {
  margin-top:0;
}
.printuvi-account-utility__body :is(table,.widefat) {
  width:100%;
  max-width:100%;
}
.printuvi-account-utility__body .plu-card {
  padding:.8rem;
  border:1px solid var(--pu-line,#dfe7ec);
  border-radius:10px;
  background:var(--pu-card-alt,#f7f9fb);
}
@media(max-width:800px) {
  .printuvi-dashboard-utilities--account { grid-template-columns:1fr; }
}

.printuvi-dashboard-utilities--communication {
  grid-template-columns:minmax(0,560px);
  justify-content:start;
}
@media(max-width:800px) {
  .printuvi-dashboard-utilities--communication { grid-template-columns:1fr; }
}
