/* Caixa do DP 2.0 - experiencia compartilhada pelos aplicativos beta e oficial. */
body.gfl-beta-dp-v2 #view-dp.view.active {
  --dp-green: #08783f;
  --dp-green-dark: #075f35;
  --dp-green-soft: #e9f8ef;
  --dp-line: #d9e8df;
  --dp-ink: #172033;
  --dp-muted: #66768b;
  display: grid;
  align-content: start;
  gap: 10px;
  padding-bottom: 48px;
}

body.gfl-beta-dp-v2 #view-dp > * { min-width: 0; }

body.gfl-beta-dp-v2 #view-dp .dp-hero {
  min-height: 126px;
  grid-template-columns: minmax(0, 1fr) minmax(260px, auto);
  gap: 16px;
  padding: 15px 17px;
  border: 1px solid rgba(134, 239, 172, .22);
  border-radius: 16px;
  background:
    radial-gradient(circle at 11% 0%, rgba(134, 239, 172, .18), transparent 30%),
    linear-gradient(130deg, #073c27 0%, #08783f 58%, #119b53 100%);
  box-shadow: 0 14px 36px -26px rgba(6, 78, 59, .75);
}

body.gfl-beta-dp-v2 .dp-hero-copy { display: grid; align-content: center; gap: 4px; min-width: 0; }
body.gfl-beta-dp-v2 .dp-hero-copy .badge { width: fit-content; }
body.gfl-beta-dp-v2 #view-dp .dp-hero h2 { margin: 2px 0 1px; font-size: clamp(22px, 2vw, 29px); letter-spacing: -.025em; }
body.gfl-beta-dp-v2 #view-dp .dp-hero p { max-width: 760px; font-size: 12.5px; line-height: 1.4; }

body.gfl-beta-dp-v2 .dp-hero-context {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

body.gfl-beta-dp-v2 .dp-hero-context > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 26px;
  padding: 4px 9px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 999px;
  color: rgba(240, 253, 244, .90);
  background: rgba(255, 255, 255, .09);
  font-size: 10.5px;
  font-weight: 800;
}

body.gfl-beta-dp-v2 .dp-hero-context svg { width: 13px; height: 13px; }

body.gfl-beta-dp-v2 .dp-hero-actions {
  display: grid;
  grid-template-columns: 1fr auto;
  align-content: center;
  justify-content: stretch;
  gap: 7px;
  min-width: 270px;
}

body.gfl-beta-dp-v2 #dpAvailabilityBtn[hidden],
body.gfl-beta-dp-v2 #dpDistributionBtn[hidden],
body.gfl-beta-dp-v2 #dpPortfolioShareBtn[hidden],
body.gfl-beta-dp-v2 #dpRoutingControls[hidden] { display: none !important; }
body.gfl-beta-dp-v2:not(.role-dp) #dpAvailabilityBtn { display: none !important; }

body.gfl-beta-dp-v2 .dp-notify-state {
  grid-column: 1 / -1;
  min-height: 32px;
  padding: 7px 10px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 10px;
  background: rgba(2, 44, 25, .28);
}

body.gfl-beta-dp-v2 .dp-hero-actions .ghost { min-height: 35px; justify-content: center; font-size: 10.5px; }
body.gfl-beta-dp-v2 .dp-hero-actions .dp-portfolio-share-btn {
  grid-column: 1 / -1;
  border-color: rgba(187, 247, 208, .42);
  color: #f0fdf4;
  background: rgba(21, 128, 61, .34);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
}
body.gfl-beta-dp-v2 .dp-hero-actions .dp-portfolio-share-btn:hover { border-color: rgba(220, 252, 231, .72); background: rgba(22, 163, 74, .46); }

body.gfl-beta-dp-v2 .dp-portal-tabs {
  width: 100%;
  max-width: none;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  margin: 0 !important;
  padding: 6px;
  border-color: var(--dp-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px -22px rgba(15, 23, 42, .7);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.gfl-beta-dp-v2 .dp-portal-tabs::before { display: none; animation: none; }

body.gfl-beta-dp-v2 .dp-portal-tabs .folder-chip {
  width: 100%;
  height: 48px !important;
  min-height: 48px !important;
  justify-content: flex-start;
  gap: 9px;
  padding: 6px 10px !important;
  border-radius: 10px !important;
  text-align: left;
}

body.gfl-beta-dp-v2 .dp-portal-tabs .folder-chip > svg { flex: 0 0 auto; }
body.gfl-beta-dp-v2 .dp-tab-copy { display: grid; flex: 1 1 auto; min-width: 0; gap: 1px; }
body.gfl-beta-dp-v2 .dp-tab-copy strong { color: inherit; font-size: 11.5px; line-height: 1.15; }
body.gfl-beta-dp-v2 .dp-tab-copy small { overflow: hidden; color: #738297; font-size: 9.5px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-portal-tabs .folder-chip.active .dp-tab-copy small { color: #3d7155; }
body.gfl-beta-dp-v2 .dp-tab-count {
  min-width: 25px;
  padding: 4px 7px;
  border-radius: 999px;
  color: #355246;
  background: #edf4f0;
  font-size: 9.5px;
  font-weight: 900;
  text-align: center;
}
body.gfl-beta-dp-v2 .dp-portal-tabs .folder-chip.active .dp-tab-count { color: #fff; background: var(--dp-green); }

body.gfl-beta-dp-v2 .dp-sec { min-width: 0; }
body.gfl-beta-dp-v2 .dp-sec > .module,
body.gfl-beta-dp-v2 .dp-overview-grid > .module {
  overflow: hidden;
  border-color: var(--dp-line);
  border-radius: 14px;
  box-shadow: 0 10px 28px -28px rgba(15, 23, 42, .75);
}

body.gfl-beta-dp-v2 .dp-sec .module-head { min-height: 52px; padding: 9px 12px; background: linear-gradient(180deg, #fff, #fbfdfc); }
body.gfl-beta-dp-v2 .dp-sec .module-body { padding: 11px 12px; }
body.gfl-beta-dp-v2 .dp-sec .module-title strong { font-size: 12.5px; }
body.gfl-beta-dp-v2 .dp-sec .module-title span { margin-top: 2px; font-size: 9.5px; }

body.gfl-beta-dp-v2 .dp-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 10px;
}

body.gfl-beta-dp-v2 .dp-kpis .metric { min-height: 88px; padding: 10px 12px; border-radius: 12px; }
body.gfl-beta-dp-v2 .dp-kpis .metric label { font-size: 9px; }
body.gfl-beta-dp-v2 .dp-kpis .metric strong { margin: 4px 0 1px; font-size: 23px; }
body.gfl-beta-dp-v2 .dp-kpis .metric span { font-size: 9.5px; }

body.gfl-beta-dp-v2 .dp-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: 10px;
  align-items: start;
}

body.gfl-beta-dp-v2 #dpPainelRecentes { gap: 7px; }
body.gfl-beta-dp-v2 #dpPainelRecentes .dp-recente {
  min-height: 56px;
  margin: 0;
  padding: 9px 10px;
  border-color: #e3ece7;
  border-radius: 10px;
  background: #fff;
}
body.gfl-beta-dp-v2 #dpPainelRecentes .dp-recente:hover { border-color: #b9dbc7; background: #f7fcf9; }
body.gfl-beta-dp-v2 .dp-recente-main { min-width: 0; display: grid; gap: 3px; }
body.gfl-beta-dp-v2 .dp-recente-main b { overflow: hidden; color: var(--dp-ink); text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-recente-main span { display: flex; flex-wrap: wrap; gap: 5px; }

body.gfl-beta-dp-v2 .dp-shortcuts { grid-template-columns: 1fr; gap: 7px; }
body.gfl-beta-dp-v2 .dp-shortcut { min-height: 62px; padding: 9px 11px; border-color: #e3ece7; border-radius: 10px; }
body.gfl-beta-dp-v2 .dp-shortcut > svg { width: 18px; height: 18px; padding: 8px; box-sizing: content-box; border-radius: 10px; background: var(--dp-green-soft); }
body.gfl-beta-dp-v2 .dp-shortcut strong { font-size: 11.5px; }
body.gfl-beta-dp-v2 .dp-shortcut span { margin-top: 2px; font-size: 9.5px; }

body.gfl-beta-dp-v2 .dp-filter-panel {
  display: grid;
  gap: 8px;
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid #deebe3;
  border-radius: 12px;
  background: #f8fcfa;
}

body.gfl-beta-dp-v2 .dp-filter-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
body.gfl-beta-dp-v2 .dp-filter-panel-head > div { display: grid; gap: 1px; }
body.gfl-beta-dp-v2 .dp-filter-panel-head strong { color: #294337; font-size: 10.5px; }
body.gfl-beta-dp-v2 .dp-filter-panel-head span { color: #758579; font-size: 9px; }
body.gfl-beta-dp-v2 #dpFiltro { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 !important; }
body.gfl-beta-dp-v2 #dpFiltro .folder-chip { min-height: 31px; padding: 5px 8px; font-size: 9.5px; }
body.gfl-beta-dp-v2 #dpFiltro .folder-chip b { min-width: 19px; padding: 2px 5px; border-radius: 999px; background: rgba(15, 118, 78, .09); font-size: 8.5px; text-align: center; }

body.gfl-beta-dp-v2 .dp-filter-tools { margin: 0; padding: 0; border: 0; background: transparent; }
body.gfl-beta-dp-v2 .dp-filter-tools input,
body.gfl-beta-dp-v2 .dp-filter-tools select { min-height: 36px; border-color: #d7e3dc; font-size: 10.5px; }
body.gfl-beta-dp-v2 .dp-filter-tools .ghost { min-height: 36px; }

body.gfl-beta-dp-v2 .dp-caixa-summary {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 8px;
  border: 1px solid #d8e8df;
  border-radius: 999px;
  color: #3c5f4c;
  background: #f5faf7;
  font-size: 9.5px;
  font-weight: 850;
}

body.gfl-beta-dp-v2 #dpEntregas { gap: 8px; }
body.gfl-beta-dp-v2 .dp-delivery-card {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 9px;
  min-width: 0;
  padding: 11px 12px 10px 16px;
  border: 1px solid #dfe9e4;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 7px 18px -20px rgba(15, 23, 42, .8);
  content-visibility: auto;
  contain-intrinsic-size: 190px;
  transition: border-color .14s ease, box-shadow .14s ease, transform .14s ease;
}

body.gfl-beta-dp-v2 .dp-delivery-card::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 5px; background: #94a3b8; }
body.gfl-beta-dp-v2 .dp-delivery-card.st-pendente::before { background: #f59e0b; }
body.gfl-beta-dp-v2 .dp-delivery-card.st-recebido::before { background: #2563eb; }
body.gfl-beta-dp-v2 .dp-delivery-card.st-processado::before { background: #16a34a; }
body.gfl-beta-dp-v2 .dp-delivery-card:hover { transform: translateY(-1px); border-color: #b9d8c6; box-shadow: 0 15px 30px -28px rgba(15, 23, 42, .85); }

body.gfl-beta-dp-v2 .dp-delivery-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; min-width: 0; }
body.gfl-beta-dp-v2 .dp-delivery-company { min-width: 0; display: flex; align-items: flex-start; gap: 9px; }
body.gfl-beta-dp-v2 .dp-delivery-company-mark { width: 34px; height: 34px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 10px; color: var(--dp-green); background: var(--dp-green-soft); }
body.gfl-beta-dp-v2 .dp-delivery-company-mark svg { width: 17px; height: 17px; }
body.gfl-beta-dp-v2 .dp-delivery-company-copy { min-width: 0; display: grid; gap: 3px; }
body.gfl-beta-dp-v2 .dp-delivery-company-copy strong { overflow: hidden; color: var(--dp-ink); font-size: 12.5px; text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-delivery-company-copy span { color: var(--dp-muted); font-size: 9.5px; }
body.gfl-beta-dp-v2 .dp-delivery-badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }

body.gfl-beta-dp-v2 .dp-delivery-overview {
  display: grid;
  grid-template-columns: minmax(300px, .72fr) minmax(520px, 1.28fr);
  gap: 8px;
  min-width: 0;
}
body.gfl-beta-dp-v2 .dp-delivery-summary,
body.gfl-beta-dp-v2 .dp-delivery-flow { min-width: 0; display: grid; align-content: start; gap: 6px; }
body.gfl-beta-dp-v2 .dp-delivery-section-head { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-inline: 2px; }
body.gfl-beta-dp-v2 .dp-delivery-section-head > span { display: inline-flex; align-items: center; gap: 5px; color: #3a5245; font-size: 8.5px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
body.gfl-beta-dp-v2 .dp-delivery-section-head > span svg { width: 12px; height: 12px; color: var(--dp-green); }
body.gfl-beta-dp-v2 .dp-delivery-section-head small { overflow: hidden; color: #87948d; font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }

body.gfl-beta-dp-v2 .dp-delivery-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(90px, 1fr));
  gap: 6px;
}
body.gfl-beta-dp-v2 .dp-delivery-metric { min-width: 0; min-height: 49px; padding: 7px 9px; border: 1px solid #e6eee9; border-radius: 9px; background: linear-gradient(180deg, #fbfdfc, #f7faf8); }
body.gfl-beta-dp-v2 .dp-delivery-metric span { display: block; color: #7a899e; font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .04em; }
body.gfl-beta-dp-v2 .dp-delivery-metric strong { display: block; overflow: hidden; margin-top: 3px; color: #26364b; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }

body.gfl-beta-dp-v2 .dp-delivery-trail { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); height: 100%; min-height: 49px; border: 1px solid #e5ece8; border-radius: 10px; background: #fbfcfc; }
body.gfl-beta-dp-v2 .dp-trail-step { position: relative; min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 7px; padding: 8px 9px; }
body.gfl-beta-dp-v2 .dp-trail-step + .dp-trail-step { border-left: 1px solid #e5ece8; }
body.gfl-beta-dp-v2 .dp-trail-dot { width: 20px; height: 20px; display: grid; place-items: center; border-radius: 999px; color: #758579; background: #edf2ef; }
body.gfl-beta-dp-v2 .dp-trail-dot svg { width: 11px; height: 11px; }
body.gfl-beta-dp-v2 .dp-trail-step.is-done .dp-trail-dot { color: #08783f; background: #dff5e7; }
body.gfl-beta-dp-v2 .dp-trail-copy { min-width: 0; display: grid; gap: 2px; }
body.gfl-beta-dp-v2 .dp-trail-copy label { color: #7a899e; font-size: 8px; font-weight: 850; text-transform: uppercase; }
body.gfl-beta-dp-v2 .dp-trail-copy strong { overflow: hidden; color: #334155; font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-trail-copy small { overflow: hidden; color: #819087; font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }

body.gfl-beta-dp-v2 .dp-delivery-note { margin: 0; padding: 7px 9px; border-left: 3px solid #cbd5e1; border-radius: 7px; color: #64748b; background: #f8fafc; font-size: 9.5px; }
body.gfl-beta-dp-v2 .dp-delivery-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; padding-top: 7px; border-top: 1px solid #edf2ef; }
body.gfl-beta-dp-v2 .dp-delivery-actions button { min-height: 32px; padding: 6px 9px; font-size: 9.5px; }
body.gfl-beta-dp-v2 .dp-action-group { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
body.gfl-beta-dp-v2 .dp-action-group-flow { margin-left: auto; }

body.gfl-beta-dp-v2 .dp-cad-filter-panel { margin-bottom: 11px; }
body.gfl-beta-dp-v2 .dp-cad-toolbar { gap: 7px; margin: 0; }
body.gfl-beta-dp-v2 .dp-cad-toolbar input[type=text],
body.gfl-beta-dp-v2 .dp-cad-toolbar select,
body.gfl-beta-dp-v2 .dp-cad-toolbar .dp-ms-btn { min-height: 36px; font-size: 10px; }
body.gfl-beta-dp-v2 .dp-cad-grid { grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: 9px; }
body.gfl-beta-dp-v2 .dp-cad-card { padding: 11px; border-radius: 11px; content-visibility: auto; contain-intrinsic-size: 250px; }

body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-modal-shell) {
  width: min(960px, calc(100vw - 54px));
  max-height: min(90vh, calc(100dvh - 44px));
  overflow: hidden;
  border-radius: 15px;
}
body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-detail-shell) { width: min(1540px, calc(100vw - 32px)); max-height: min(94vh, calc(100dvh - 24px)); }
body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-modal-shell) > .module-head { min-height: 54px; padding: 10px 14px; background: linear-gradient(180deg, #fff, #f9fcfa); }
body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-modal-shell) > #modalBody { min-height: 0; padding: 11px 13px; overflow: hidden; }

body.gfl-beta-dp-v2 .dp-modal-shell { display: grid; align-content: start; gap: 10px; min-width: 0; }
body.gfl-beta-dp-v2 .dp-detail-shell {
  height: 100%;
  min-height: 0;
  overflow: hidden;
  grid-template-rows: auto auto auto auto minmax(140px, 1fr) auto auto;
  align-content: stretch;
}
body.gfl-beta-dp-v2 .dp-modal-intro { display: flex; align-items: flex-start; gap: 10px; padding: 10px 11px; border: 1px solid #dcebe2; border-radius: 11px; background: linear-gradient(135deg, #f0faf4, #fbfdfc); }
body.gfl-beta-dp-v2 .dp-modal-intro > svg { width: 18px; height: 18px; flex: 0 0 auto; padding: 7px; box-sizing: content-box; border-radius: 9px; color: var(--dp-green); background: #dff5e7; }
body.gfl-beta-dp-v2 .dp-modal-intro > div { min-width: 0; display: grid; gap: 3px; }
body.gfl-beta-dp-v2 .dp-modal-intro strong { color: #173827; font-size: 11.5px; }
body.gfl-beta-dp-v2 .dp-modal-intro span { color: #66768b; font-size: 9.5px; line-height: 1.4; }

body.gfl-beta-dp-v2 .dp-company-identity { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; min-height: 42px; padding: 8px 10px; border: 1px solid #dcebe2; border-radius: 11px; background: #f7fcf9; }
body.gfl-beta-dp-v2 .dp-company-identity strong { color: #183b29; font-size: 12px; }
body.gfl-beta-dp-v2 .dp-company-identity span { color: #68798f; font-size: 9.5px; }
body.gfl-beta-dp-v2 .dp-detail-controls { position: relative; z-index: 5; display: grid; gap: 7px; min-width: 0; padding: 1px 0; background: #fff; }
body.gfl-beta-dp-v2 .dp-detail-tabs { margin: 0 !important; padding: 4px; border: 1px solid #dce7e0; border-radius: 10px; background: #f8fbf9; }
body.gfl-beta-dp-v2 .dp-detail-tabs .folder-chip { min-height: 31px; padding: 5px 9px; font-size: 9.5px; }
body.gfl-beta-dp-v2 .dp-detail-toolbar { margin: 0; }
body.gfl-beta-dp-v2 .dp-detail-stage { display: grid; min-width: 0; min-height: 0; overflow: hidden; }
body.gfl-beta-dp-v2 .dp-detail-stage > .dp-detail-table-wrap,
body.gfl-beta-dp-v2 .dp-detail-stage > .personal-wrap { grid-area: 1 / 1; height: 100%; min-height: 0; max-height: none; }
body.gfl-beta-dp-v2 .dp-detail-stage > .dp-detail-table-wrap { overflow: auto; }
body.gfl-beta-dp-v2 .dp-detail-more { min-height: 36px; margin: 0; }
body.gfl-beta-dp-v2 .dp-detail-more:empty { display: none; }
body.gfl-beta-dp-v2 .dp-detail-actions { position: relative !important; bottom: auto; z-index: 4; margin: 0; padding: 9px 0 2px; border-top-color: #dfe8e3; background: #fff !important; }

body.gfl-beta-dp-v2 .dp-completion-card { display: grid; gap: 10px; }
body.gfl-beta-dp-v2 .dp-completion-feedback {
  padding: 9px 11px;
  border: 1px solid #fecaca;
  border-radius: 10px;
  background: #fef2f2;
  color: #991b1b;
  font-size: 10px;
  font-weight: 750;
  line-height: 1.45;
}
body.gfl-beta-dp-v2 .dp-completion-feedback[hidden] { display: none !important; }
body.gfl-beta-dp-v2 .dp-completion-owner { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: center; padding: 11px; border: 1px solid #bfe5cd; border-radius: 12px; background: #effbf4; }
body.gfl-beta-dp-v2 .dp-completion-avatar { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: linear-gradient(135deg, #08783f, #12a45a); font-size: 14px; font-weight: 900; }
body.gfl-beta-dp-v2 .dp-completion-owner div { display: grid; gap: 2px; }
body.gfl-beta-dp-v2 .dp-completion-owner small { color: #557062; font-size: 9px; font-weight: 800; text-transform: uppercase; }
body.gfl-beta-dp-v2 .dp-completion-owner strong { color: #14532d; font-size: 12.5px; }
body.gfl-beta-dp-v2 .dp-completion-owner span { color: #61756a; font-size: 9.5px; }
body.gfl-beta-dp-v2 .dp-completion-checks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
body.gfl-beta-dp-v2 .dp-completion-check { display: flex; align-items: center; gap: 7px; padding: 8px 9px; border: 1px solid #e2e8f0; border-radius: 9px; color: #45556a; background: #fff; font-size: 9.5px; font-weight: 750; }
body.gfl-beta-dp-v2 .dp-completion-check svg { width: 14px; height: 14px; color: #16a34a; }
body.gfl-beta-dp-v2 .dp-completion-observation { display: grid; gap: 5px; color: #475569; font-size: 9.5px; font-weight: 800; }
body.gfl-beta-dp-v2 .dp-completion-observation textarea { min-height: 82px; resize: vertical; border: 1px solid #d7e2db; border-radius: 10px; padding: 9px 10px; color: #27364a; background: #fff; font: inherit; font-size: 10.5px; }
body.gfl-beta-dp-v2 .dp-modal-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 7px; padding-top: 9px; border-top: 1px solid #e3eae6; }
body.gfl-beta-dp-v2 .dp-modal-actions button { min-height: 34px; font-size: 10px; }

/* Distribuicao de carteira: cada visao conserva o contexto de quem e responsavel. */
body.gfl-beta-dp-v2 .dp-routing-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(176px, auto);
  align-items: center;
  gap: 9px;
  padding: 8px 9px;
  border: 1px solid #d7e8de;
  border-radius: 11px;
  background: linear-gradient(115deg, #f1fbf5, #fbfdfc 65%);
}
body.gfl-beta-dp-v2 .dp-routing-bar[hidden] { display: none !important; }
body.gfl-beta-dp-v2 .dp-routing-summary { display: flex; align-items: flex-start; gap: 7px; min-width: 0; color: #496457; font-size: 9.5px; line-height: 1.35; font-weight: 750; }
body.gfl-beta-dp-v2 .dp-routing-summary svg { width: 15px; height: 15px; flex: 0 0 auto; color: var(--dp-green); }
body.gfl-beta-dp-v2 .dp-routing-scope { display: grid; grid-template-columns: auto minmax(126px, 1fr); align-items: center; gap: 7px; color: #526a5d; font-size: 9px; font-weight: 900; text-transform: uppercase; letter-spacing: .035em; }
body.gfl-beta-dp-v2 .dp-routing-scope select { min-height: 32px; border: 1px solid #cfe1d6; border-radius: 8px; padding: 4px 8px; color: #203c2c; background: #fff; font: inherit; font-size: 9.5px; font-weight: 750; letter-spacing: 0; text-transform: none; }

body.gfl-beta-dp-v2 .dp-routing-group { display: grid; gap: 7px; min-width: 0; padding: 8px; border: 1px solid #e1ebe5; border-radius: 13px; background: #fcfefd; }
body.gfl-beta-dp-v2 .dp-routing-group + .dp-routing-group { margin-top: 4px; }
body.gfl-beta-dp-v2 .dp-routing-group-head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 1px 2px; }
body.gfl-beta-dp-v2 .dp-routing-group-head > div { min-width: 0; display: grid; gap: 1px; }
body.gfl-beta-dp-v2 .dp-routing-group-head strong { overflow: hidden; color: #254536; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-routing-group-head small { overflow: hidden; color: #77897e; font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-routing-group-head b { min-width: 22px; padding: 4px 6px; border-radius: 999px; color: #17643a; background: #ddf5e6; font-size: 9px; text-align: center; }
body.gfl-beta-dp-v2 .dp-routing-group-icon { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 8px; color: #08783f; background: #e5f6eb; }
body.gfl-beta-dp-v2 .dp-routing-group-icon svg { width: 14px; height: 14px; }
body.gfl-beta-dp-v2 .dp-routing-ferias { border-color: #bfe4ea; background: linear-gradient(135deg, #f0fcff, #fbfeff); }
body.gfl-beta-dp-v2 .dp-routing-ferias .dp-routing-group-icon { color: #0f7490; background: #dff6fb; }
body.gfl-beta-dp-v2 .dp-routing-ferias .dp-routing-group-head b { color: #0f7490; background: #dff6fb; }
body.gfl-beta-dp-v2 .dp-routing-ajuda { border-color: #e6d8bf; background: linear-gradient(135deg, #fffaf1, #fffefd); }
body.gfl-beta-dp-v2 .dp-routing-ajuda .dp-routing-group-icon { color: #a35a0a; background: #fff0d6; }
body.gfl-beta-dp-v2 .dp-routing-ajuda .dp-routing-group-head b { color: #9a5d0c; background: #fff0d6; }
body.gfl-beta-dp-v2 .dp-routing-outra_carteira { border-color: #d9e0e7; background: linear-gradient(135deg, #f8fafc, #fdfefe); }
body.gfl-beta-dp-v2 .dp-routing-outra_carteira .dp-routing-group-icon { color: #526176; background: #e9edf2; }
body.gfl-beta-dp-v2 .dp-routing-outra_carteira .dp-routing-group-head b { color: #526176; background: #e9edf2; }
body.gfl-beta-dp-v2 .dp-routing-sem_responsavel { border-color: #f1d1bc; background: #fffaf7; }
body.gfl-beta-dp-v2 .dp-routing-sem_responsavel .dp-routing-group-icon { color: #b54a1c; background: #fff0e8; }
body.gfl-beta-dp-v2 .dp-routing-sem_responsavel .dp-routing-group-head b { color: #b54a1c; background: #fff0e8; }
body.gfl-beta-dp-v2 .dp-routing-group-list { display: grid; gap: 7px; min-width: 0; }

body.gfl-beta-dp-v2 .dp-routing-chips { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; margin: -1px 0 1px 43px; }
body.gfl-beta-dp-v2 .dp-routing-chip,
body.gfl-beta-dp-v2 .dp-routing-owner { display: inline-flex; align-items: center; gap: 4px; min-height: 21px; padding: 3px 7px; border: 1px solid #dce7e1; border-radius: 999px; color: #50675a; background: #f8fbf9; font-size: 8.5px; font-weight: 850; line-height: 1.15; }
body.gfl-beta-dp-v2 .dp-routing-chip svg,
body.gfl-beta-dp-v2 .dp-routing-owner svg { width: 11px; height: 11px; }
body.gfl-beta-dp-v2 .dp-routing-chip.own { color: #17643a; border-color: #cdebd8; background: #eefbf3; }
body.gfl-beta-dp-v2 .dp-routing-chip.help { color: #9a5d0c; border-color: #efdcb7; background: #fff8e9; }
body.gfl-beta-dp-v2 .dp-routing-chip.vacation { color: #0f7490; border-color: #c7e8ef; background: #effbfe; }
body.gfl-beta-dp-v2 .dp-routing-chip.supervision { color: #5c3c9b; border-color: #ded4f4; background: #f7f4ff; }
body.gfl-beta-dp-v2 .dp-routing-chip.pending { color: #b54a1c; border-color: #f2d4c3; background: #fff5ef; }
body.gfl-beta-dp-v2 .dp-routing-chip.readonly { color: #526176; border-color: #d8dee8; background: #f5f7fa; }
body.gfl-beta-dp-v2 .dp-delivery-card.is-readonly { border-color: #dfe5e8; background: linear-gradient(135deg, #fafbfc, #f6f8f7); box-shadow: none; }
body.gfl-beta-dp-v2 .dp-delivery-card.is-readonly .dp-delivery-overview { opacity: .86; }
body.gfl-beta-dp-v2 .dp-delivery-card.is-claimable { border-color: #efc981; background: linear-gradient(135deg, #fffbf1, #fff); }
body.gfl-beta-dp-v2 .dp-delivery-claim-actions { align-items: center; gap: 12px; border-top-color: #eddfc1; }
body.gfl-beta-dp-v2 .dp-delivery-claim-copy { display: inline-flex; align-items: center; gap: 7px; max-width: 620px; color: #76531a; font-size: 9.5px; font-weight: 750; line-height: 1.4; }
body.gfl-beta-dp-v2 .dp-delivery-claim-copy svg { width: 15px; height: 15px; flex: 0 0 auto; }

body.gfl-beta-dp-v2 .dp-routing-modal { display: grid; gap: 10px; }
body.gfl-beta-dp-v2 .dp-routing-current { display: grid; gap: 6px; padding: 9px; border: 1px solid #e0ebe4; border-radius: 11px; background: #fbfdfc; }
body.gfl-beta-dp-v2 .dp-routing-section-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #315440; font-size: 10px; }
body.gfl-beta-dp-v2 .dp-routing-section-head span { min-width: 22px; padding: 3px 6px; border-radius: 999px; color: #17643a; background: #e4f6ea; font-size: 8.5px; text-align: center; }
body.gfl-beta-dp-v2 .dp-routing-list { display: grid; gap: 5px; }
body.gfl-beta-dp-v2 .dp-routing-list-item { display: flex; align-items: center; justify-content: space-between; gap: 9px; padding: 7px 8px; border: 1px solid #e6eee9; border-radius: 8px; background: #fff; }
body.gfl-beta-dp-v2 .dp-routing-list-item > div { min-width: 0; display: grid; gap: 1px; }
body.gfl-beta-dp-v2 .dp-routing-list-item strong { overflow: hidden; color: #31485c; font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-routing-list-item span,
body.gfl-beta-dp-v2 .dp-routing-list-item small { overflow: hidden; color: #7a8990; font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-routing-list-item button { flex: 0 0 auto; min-height: 27px; padding: 4px 7px; color: #a8481d; font-size: 8.5px; }
body.gfl-beta-dp-v2 .dp-routing-empty { padding: 8px; border-radius: 8px; color: #77857d; background: #f4f8f5; font-size: 9px; line-height: 1.4; }
body.gfl-beta-dp-v2 .dp-routing-form .ef-grid { margin-top: 0; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid > div { display: grid; gap: 2px; padding: 8px 9px; border: 1px solid #dfeae3; border-radius: 9px; background: #f8fcf9; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid span { color: #6c8073; font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .03em; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid strong { color: #1e5032; font-size: 16px; line-height: 1; }
body.gfl-beta-dp-v2 .dp-routing-import-note { margin: -2px 1px 0; color: #667b6d; font-size: 9px; line-height: 1.4; }

/* Modais de carteira, férias e ajuda: leitura confortável e blocos bem separados. */
body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-routing-modal) {
  width: min(1040px, calc(100vw - 32px));
  max-height: calc(100dvh - 28px);
  display: flex;
  flex-direction: column;
}
body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-routing-modal) > .module-head { flex: 0 0 auto; }
body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-routing-modal) > #modalBody {
  flex: 0 1 auto;
  min-height: 0;
  max-height: calc(100dvh - 96px);
  overflow: auto;
  padding: 14px 18px 18px;
}
body.gfl-beta-dp-v2 .dp-routing-modal { gap: 14px; }
body.gfl-beta-dp-v2 .dp-routing-modal .dp-modal-intro {
  min-height: 58px;
  padding: 13px 15px;
  border-radius: 14px;
}
body.gfl-beta-dp-v2 .dp-routing-modal .dp-modal-intro strong { font-size: 13px; }
body.gfl-beta-dp-v2 .dp-routing-modal .dp-modal-intro span { font-size: 11px; line-height: 1.5; }
body.gfl-beta-dp-v2 .dp-routing-modal-grid,
body.gfl-beta-dp-v2 .dp-routing-admin-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}
body.gfl-beta-dp-v2 .dp-routing-distribution-grid { grid-template-columns: minmax(0, 1.18fr) minmax(0, .82fr); }
body.gfl-beta-dp-v2 .dp-routing-panel {
  min-width: 0;
  gap: 10px;
  padding: 13px;
  border: 1px solid #dbe8e0;
  border-radius: 14px;
  background: #fbfdfc;
  box-shadow: 0 8px 24px rgba(21, 67, 42, .045);
}
body.gfl-beta-dp-v2 .dp-routing-section-head { align-items: flex-start; font-size: 12px; }
body.gfl-beta-dp-v2 .dp-routing-section-head > div { min-width: 0; display: grid; gap: 3px; }
body.gfl-beta-dp-v2 .dp-routing-section-head > div > strong { color: #234b35; font-size: 12.5px; }
body.gfl-beta-dp-v2 .dp-routing-section-head > div > small { color: #718177; font-size: 10px; font-weight: 650; line-height: 1.4; }
body.gfl-beta-dp-v2 .dp-routing-section-head > span { min-width: 28px; padding: 4px 8px; font-size: 10px; }
body.gfl-beta-dp-v2 .dp-routing-modal .dp-routing-list { gap: 8px; }
body.gfl-beta-dp-v2 .dp-routing-scroll-list {
  max-height: 310px;
  overflow: auto;
  padding-right: 3px;
  scrollbar-gutter: stable;
}
body.gfl-beta-dp-v2 .dp-routing-modal .dp-routing-list-item {
  align-items: flex-start;
  padding: 10px 11px;
  border-radius: 10px;
}
body.gfl-beta-dp-v2 .dp-routing-modal .dp-routing-list-item > div { gap: 3px; }
body.gfl-beta-dp-v2 .dp-routing-modal .dp-routing-list-item strong { font-size: 11.5px; }
body.gfl-beta-dp-v2 .dp-routing-modal .dp-routing-list-item span,
body.gfl-beta-dp-v2 .dp-routing-modal .dp-routing-list-item small {
  overflow: visible;
  font-size: 10px;
  line-height: 1.4;
  text-overflow: initial;
  white-space: normal;
}
body.gfl-beta-dp-v2 .dp-routing-modal .dp-routing-list-item button { min-height: 31px; padding: 5px 9px; font-size: 9.5px; }
body.gfl-beta-dp-v2 .dp-routing-item-title { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; min-width: 0; }
body.gfl-beta-dp-v2 .dp-routing-item-title strong { flex: 1 1 180px; }
body.gfl-beta-dp-v2 .dp-routing-state { display: inline-flex; align-items: center; min-height: 20px; padding: 3px 7px; border-radius: 999px; font-size: 8.5px !important; font-weight: 900; }
body.gfl-beta-dp-v2 .dp-routing-state.active { color: #17643a; background: #e4f6ea; }
body.gfl-beta-dp-v2 .dp-routing-state.scheduled { color: #85540d; background: #fff0cf; }
body.gfl-beta-dp-v2 .dp-routing-empty {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 12px;
  font-size: 10.5px;
  line-height: 1.45;
}
body.gfl-beta-dp-v2 .dp-routing-empty > svg { width: 17px; height: 17px; flex: 0 0 auto; color: #1b7a49; }
body.gfl-beta-dp-v2 .dp-routing-empty > div { display: grid; gap: 2px; }
body.gfl-beta-dp-v2 .dp-routing-empty strong { color: #365846; font-size: 11px; }
body.gfl-beta-dp-v2 .dp-routing-form-head { display: flex; align-items: flex-start; gap: 9px; }
body.gfl-beta-dp-v2 .dp-routing-form-head > svg { width: 18px; height: 18px; flex: 0 0 auto; color: #08783f; }
body.gfl-beta-dp-v2 .dp-routing-form-head > div { display: grid; gap: 2px; }
body.gfl-beta-dp-v2 .dp-routing-form-head strong { color: #234b35; font-size: 12.5px; }
body.gfl-beta-dp-v2 .dp-routing-form-head span { color: #718177; font-size: 10px; line-height: 1.4; }
body.gfl-beta-dp-v2 .dp-routing-modal .ef-field > span { font-size: 9.5px; }
body.gfl-beta-dp-v2 .dp-routing-modal .ef-field input,
body.gfl-beta-dp-v2 .dp-routing-modal .ef-field select,
body.gfl-beta-dp-v2 .dp-routing-modal .ef-field textarea { min-height: 38px; font-size: 11px; }
body.gfl-beta-dp-v2 .dp-routing-modal .ef-field textarea { width: 100%; resize: vertical; padding: 9px 11px; border: 1px solid var(--line); border-radius: 9px; color: var(--text, #0f1b2d); background: #fff; font: inherit; line-height: 1.45; }
body.gfl-beta-dp-v2 .dp-routing-modal .ef-field textarea:focus { outline: none; border-color: #7ccfa2; box-shadow: 0 0 0 3px rgba(21, 128, 61, .14); }
body.gfl-beta-dp-v2 .dp-routing-modal .ef-field > small { color: #718177; font-size: 9px; line-height: 1.35; }
body.gfl-beta-dp-v2 .dp-routing-modal .dp-modal-actions { margin-top: auto; padding-top: 11px; }
body.gfl-beta-dp-v2 .dp-routing-modal .dp-modal-actions button { min-height: 37px; font-size: 10.5px; }
body.gfl-beta-dp-v2 .dp-portfolio-scope { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
body.gfl-beta-dp-v2 .dp-portfolio-scope > div { display: flex; align-items: flex-start; gap: 9px; min-width: 0; padding: 11px 12px; border: 1px solid #d8e9df; border-radius: 12px; background: linear-gradient(145deg, #f7fcf9, #fff); }
body.gfl-beta-dp-v2 .dp-portfolio-scope > div > svg { width: 17px; height: 17px; flex: 0 0 auto; color: #13804a; }
body.gfl-beta-dp-v2 .dp-portfolio-scope > div > span { min-width: 0; display: grid; gap: 2px; }
body.gfl-beta-dp-v2 .dp-portfolio-scope strong { color: #234b35; font-size: 11px; }
body.gfl-beta-dp-v2 .dp-portfolio-scope small { color: #718177; font-size: 9.5px; line-height: 1.4; }
body.gfl-beta-dp-v2 .dp-portfolio-share-list { max-height: 370px; overflow: auto; padding-right: 3px; scrollbar-gutter: stable; }
body.gfl-beta-dp-v2 .dp-portfolio-share-item > div { width: 100%; }
body.gfl-beta-dp-v2 .dp-portfolio-route { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 8px; margin: 3px 0; padding: 7px 8px; border-radius: 8px; background: #f3f8f5; }
body.gfl-beta-dp-v2 .dp-portfolio-route > span { min-width: 0; display: grid; gap: 1px; }
body.gfl-beta-dp-v2 .dp-portfolio-route small { color: #718177; font-size: 8px !important; font-weight: 800; text-transform: uppercase; letter-spacing: .025em; }
body.gfl-beta-dp-v2 .dp-portfolio-route b { overflow: hidden; color: #274a36; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
body.gfl-beta-dp-v2 .dp-portfolio-route > svg { width: 15px; height: 15px; color: #1a8a51; }
body.gfl-beta-dp-v2 .dp-portfolio-share-stats { display: flex; flex-wrap: wrap; gap: 5px; margin: 4px 0; }
body.gfl-beta-dp-v2 .dp-portfolio-share-stats > span { display: inline-flex; align-items: center; gap: 3px; padding: 3px 7px; border-radius: 999px; color: #50675a; background: #edf5f0; font-size: 8.5px !important; font-weight: 750; }
body.gfl-beta-dp-v2 .dp-portfolio-share-stats b { color: #17643a; font-size: 9px; }
body.gfl-beta-dp-v2 .dp-portfolio-readonly { display: flex; align-items: flex-start; gap: 10px; }
body.gfl-beta-dp-v2 .dp-portfolio-readonly > svg { width: 19px; height: 19px; flex: 0 0 auto; color: #187747; }
body.gfl-beta-dp-v2 .dp-portfolio-readonly > div { display: grid; gap: 3px; }
body.gfl-beta-dp-v2 .dp-portfolio-readonly strong { color: #234b35; font-size: 12px; }
body.gfl-beta-dp-v2 .dp-portfolio-readonly span { color: #718177; font-size: 10px; line-height: 1.45; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid-four { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid-four > div { min-height: 82px; padding: 11px 12px; border-radius: 12px; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid-four span { font-size: 8.5px; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid-four strong { font-size: 22px; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid-four small { color: #718177; font-size: 9px; line-height: 1.35; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid-four .is-waiting { border-color: #c8e4ee; background: #f0fbff; }
body.gfl-beta-dp-v2 .dp-routing-summary-grid-four .is-waiting strong { color: #0f7490; }
body.gfl-beta-dp-v2 .dp-routing-assignment-note {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 11px 13px;
  border: 1px solid #bfe5cd;
  border-radius: 12px;
  color: #315b43;
  background: #effbf4;
}
body.gfl-beta-dp-v2 .dp-routing-assignment-note > svg { width: 18px; height: 18px; flex: 0 0 auto; color: #08783f; }
body.gfl-beta-dp-v2 .dp-routing-assignment-note > div { display: grid; gap: 2px; }
body.gfl-beta-dp-v2 .dp-routing-assignment-note strong { font-size: 11.5px; }
body.gfl-beta-dp-v2 .dp-routing-assignment-note span { font-size: 10px; line-height: 1.45; }
body.gfl-beta-dp-v2 .dp-routing-modal .dp-routing-import-note { margin: -4px 2px 0; font-size: 10px; }
body.gfl-beta-dp-v2 .dp-routing-distribution-item > div { width: 100%; }
body.gfl-beta-dp-v2 .dp-routing-distribution-item .badge { flex: 0 0 auto; font-size: 8px; }
body.gfl-beta-dp-v2 .dp-routing-supervisor-form { margin-top: 2px; }

@media (max-width: 1120px) {
  body.gfl-beta-dp-v2 #view-dp .dp-hero { grid-template-columns: 1fr; }
  body.gfl-beta-dp-v2 .dp-hero-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; }
  body.gfl-beta-dp-v2 .dp-overview-grid { grid-template-columns: 1fr; }
  body.gfl-beta-dp-v2 .dp-delivery-overview { grid-template-columns: 1fr; }
  body.gfl-beta-dp-v2 .dp-routing-bar { grid-template-columns: 1fr; }
  body.gfl-beta-dp-v2 .dp-routing-scope { grid-template-columns: auto minmax(150px, 1fr); }
  body.gfl-beta-dp-v2 .dp-routing-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.gfl-beta-dp-v2 .dp-portfolio-scope { grid-template-columns: 1fr; }
  body.gfl-beta-dp-v2 .dp-routing-modal-grid,
  body.gfl-beta-dp-v2 .dp-routing-admin-grid,
  body.gfl-beta-dp-v2 .dp-routing-distribution-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  body.gfl-beta-dp-v2 .dp-portal-tabs { grid-template-columns: 1fr; }
  body.gfl-beta-dp-v2 .dp-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.gfl-beta-dp-v2 .dp-delivery-head { display: grid; }
  body.gfl-beta-dp-v2 .dp-delivery-badges { justify-content: flex-start; }
  body.gfl-beta-dp-v2 .dp-delivery-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.gfl-beta-dp-v2 .dp-delivery-trail { grid-template-columns: 1fr; }
  body.gfl-beta-dp-v2 .dp-trail-step + .dp-trail-step { border-top: 1px solid #e5ece8; border-left: 0; }
  body.gfl-beta-dp-v2 .dp-completion-checks { grid-template-columns: 1fr; }
  body.gfl-beta-dp-v2 .dp-routing-chips { margin-left: 0; }
  body.gfl-beta-dp-v2 .dp-routing-group-head small { white-space: normal; }
  body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-routing-modal) { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); }
  body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-routing-modal) > #modalBody { padding: 10px; }
  body.gfl-beta-dp-v2 .dp-routing-summary-grid { grid-template-columns: 1fr; }
}

@media (max-height: 760px) {
  body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-detail-shell) { max-height: calc(100dvh - 18px); }
  body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-detail-shell) > .module-head { min-height: 46px; padding-block: 7px; }
  body.gfl-beta-dp-v2 #detailModal .dialog:has(.dp-detail-shell) > #modalBody { padding-block: 7px; }
  body.gfl-beta-dp-v2 .dp-detail-shell { gap: 7px; grid-template-rows: auto auto minmax(130px, 1fr) auto auto; }
  body.gfl-beta-dp-v2 .dp-detail-shell > .dp-delivery-trail,
  body.gfl-beta-dp-v2 .dp-detail-shell > .dp-detail-kpis { display: none; }
  body.gfl-beta-dp-v2 .dp-company-identity { min-height: 34px; padding-block: 5px; }
  body.gfl-beta-dp-v2 .dp-detail-controls { gap: 5px; }
  body.gfl-beta-dp-v2 .dp-detail-tabs .folder-chip { min-height: 28px; }
  body.gfl-beta-dp-v2 .dp-detail-toolbar { padding: 5px 6px; }
  body.gfl-beta-dp-v2 .dp-detail-actions { padding-top: 6px; }
}

@media (prefers-reduced-motion: reduce) {
  body.gfl-beta-dp-v2 #view-dp *,
  body.gfl-beta-dp-v2 #detailModal * { scroll-behavior: auto !important; animation: none !important; transition-duration: .01ms !important; }
}
