/* ShipMe brand palette: orange interactive accents, with a navy header. */
:root {
  --shipme-orange: #fe9c34;
  --shipme-orange-dark: #d97816;
  --shipme-orange-light: #fff6ea;
  --shipme-ink: #102a43;
}

/* Carrier registration: a single, deliberately composed card. The blue
   header provides contrast for the white ShipMe wordmark; the form sits on a
   soft radial white-to-silver surface, not on a second nested card. */
.page-user-register,
.page-user-register .bg {
  min-height: 100vh;
  background: #fff !important;
}
.page-user-register .main-page {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 100vh;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(2rem, 6vw, 5rem) 1.25rem;
  border: 0 !important;
  border-radius: 0 !important;
  background:
    radial-gradient(circle at 50% 5%, #fff 0%, #fbfcfd 37%, #eef2f6 100%) !important;
  box-shadow: none !important;
}
.page-user-register .shipme-register-card {
  width: min(560px, 100%);
  overflow: hidden;
  border: 1px solid rgba(16, 42, 67, .10);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 24px 58px rgba(16, 42, 67, .15), 0 3px 10px rgba(16, 42, 67, .06);
}
.page-user-register .shipme-register-card__header {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 126px;
  padding: 2rem 2.5rem;
  background: linear-gradient(120deg, #0c243d 0%, #173f65 62%, #1d537a 100%);
}
.page-user-register .branding {
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.page-user-register .branding .site-branding-logo img {
  display: block;
  width: 190px;
  max-width: 100%;
  height: auto;
  filter: drop-shadow(0 4px 10px rgba(0, 0, 0, .18));
}
.page-user-register .shipme-register-card__body {
  padding: clamp(2rem, 5vw, 3rem);
  background: radial-gradient(circle at 50% -20%, #fff 0%, #fbfcfd 54%, #f1f4f7 100%);
}
.page-user-register .highlighted .container,
.page-user-register .help .container,
.page-user-register #content,
.page-user-register #page-main-content,
.page-user-register .content-main {
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  background: transparent !important;
  box-shadow: none !important;
}
.page-user-register .page-title {
  margin: 0 0 1.75rem;
  color: var(--shipme-ink) !important;
  font-size: clamp(1.8rem, 4vw, 2.3rem);
  font-weight: 800;
  letter-spacing: -.04em;
  line-height: 1.1;
}
.page-user-register .user-register-form .form-item { margin-bottom: 1.25rem; }
.page-user-register .user-register-form label,
.page-user-register .user-register-form legend,
.page-user-register .user-register-form .fieldset-legend {
  color: #243b53 !important;
  font-weight: 700;
}
.page-user-register .user-register-form input:not([type='submit']):not([type='checkbox']),
.page-user-register .user-register-form textarea,
.page-user-register .user-register-form select {
  border: 1px solid #d6dee7 !important;
  border-radius: 9px;
  background: rgba(255, 255, 255, .94) !important;
  color: #102a43 !important;
  box-shadow: inset 0 1px 1px rgba(16, 42, 67, .02);
}
.page-user-register .user-register-form input:focus,
.page-user-register .user-register-form textarea:focus,
.page-user-register .user-register-form select:focus {
  border-color: var(--shipme-orange) !important;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(254, 156, 52, .18) !important;
}
.page-user-register .user-register-form .description,
.page-user-register .user-register-form .form-item .description {
  color: #657789 !important;
  line-height: 1.55;
}
.page-user-register .user-register-form .button--primary {
  width: 100%;
  min-height: 52px;
  margin-top: .5rem;
  border: 0 !important;
  border-radius: 9px;
  background: var(--shipme-orange) !important;
  color: #102a43 !important;
  font-weight: 800;
  box-shadow: 0 10px 20px rgba(217, 120, 22, .20);
}
.page-user-register .user-register-form .button--primary:hover,
.page-user-register .user-register-form .button--primary:focus {
  background: #ffad51 !important;
  transform: translateY(-1px);
}
@media (max-width: 575px) {
  .page-user-register .main-page { padding: 1.5rem 1rem 2.5rem; }
  .page-user-register .shipme-register-card { border-radius: 16px; }
  .page-user-register .shipme-register-card__header { min-height: 108px; padding: 1.6rem 1.5rem; }
  .page-user-register .branding .site-branding-logo img { width: 165px; }
  .page-user-register .shipme-register-card__body { padding: 1.75rem 1.4rem; }
}

/* Brand mark */
.site-branding-logo img,
header .site-branding-logo img.logo-site {
  display: block !important;
  width: 184px;
  max-width: min(184px, 48vw);
  max-height: none;
  height: auto;
}

/* A dark header gives the white part of the ShipMe logo proper contrast. */
.frontpage #header,
#header {
  background: var(--shipme-ink) !important;
  box-shadow: 0 1px 0 rgba(254, 156, 52, .35) !important;
}
#header .gva_menu_main > li > a,
#header .gva_menu_main > li > a:hover,
#header .gva_menu_main > li > a:focus {
  color: #fff !important;
}
#header #menu-bar span {
  background: #fff !important;
}

/* Primary site actions and the quote journey */
a:hover,
a:focus { color: var(--shipme-orange-dark); }
.button--primary,
input.button--primary,
button.button--primary,
.btn-theme,
.btn-theme a,
.shipme-request-wizard .button--primary {
  background: var(--shipme-orange) !important;
  border-color: var(--shipme-orange) !important;
  color: #fff !important;
}
.button--primary:hover,
.button--primary:focus,
.btn-theme:hover,
.btn-theme:focus,
.btn-theme a:hover,
.btn-theme a:focus,
.shipme-request-wizard .button--primary:hover,
.shipme-request-wizard .button--primary:focus {
  background: var(--shipme-orange-dark) !important;
  border-color: var(--shipme-orange-dark) !important;
  color: #fff !important;
}

/* The quote journey uses the same orange family as the logo arrow. */
.shipme-route-quote-block {
  background: var(--shipme-orange-dark) !important;
}
.shipme-route-quote-block button {
  background: var(--shipme-orange) !important;
}
.shipme-route-quote-block button:hover,
.shipme-route-quote-block button:focus {
  background: #bd6510 !important;
}
.shipme-request-progress li.is-current,
.shipme-request-progress li.is-complete,
.shipme-request-wizard .shipme-timeframe-options input:checked + label::before {
  background: var(--shipme-orange) !important;
}
.shipme-request-wizard .shipme-timeframe-options input:checked + label {
  border-color: var(--shipme-orange) !important;
  background: var(--shipme-orange-light) !important;
  box-shadow: 0 0 0 3px rgba(254, 156, 52, .16) !important;
}

@media (max-width: 575px) {
  .site-branding-logo img,
  header .site-branding-logo img.logo-site { width: 150px; }
}

/* My requests request-card view mode.  This lives in the active theme so the
   listing remains styled even when Views renders its rows from cache. */
.view-shipme-my-requests { max-width:1140px; margin:2rem auto; padding:0; background:transparent; box-shadow:none; }
.view-shipme-my-requests .views-row,.view-shipme-my-requests .view-content-wrap > .item { margin:0 0 1.25rem; padding:0; border:0; background:transparent; box-shadow:none; }
.shipme-my-requests__empty { display:flex; align-items:center; gap:1rem; padding:1.3rem 1.5rem; border:1px dashed #c9d8e6; border-radius:12px; background:#fbfdff; color:#52606d; }
.shipme-my-requests__empty-icon { display:grid; flex:0 0 auto; place-items:center; width:34px; height:34px; border-radius:50%; background:#fff1e2; color:var(--shipme-orange-dark); font-size:1rem; font-weight:900; }
.shipme-my-requests__empty strong { display:block; color:var(--shipme-ink); font-size:1rem; }
.shipme-my-requests__empty p { margin:.18rem 0 0; font-size:.9rem; }
@media (max-width:480px) { .shipme-my-requests__empty { align-items:flex-start; padding:1rem; } }
.shipme-request-card {     margin-bottom: 30px;
display:grid; grid-template-columns:190px minmax(0,1fr) auto; overflow:hidden; border:1px solid #e5e7eb; border-radius:12px; background:#fff; box-shadow:0 5px 18px rgba(16,42,67,.07); transition:box-shadow .18s ease,border-color .18s ease; }
.shipme-request-card:hover { border-color:var(--shipme-orange); box-shadow:0 10px 26px rgba(16,42,67,.12); }
.shipme-request-card__media { display:grid; width:190px; aspect-ratio:1 / 1; place-items:center; align-self:center; overflow:hidden; border-right:1px solid #edf0f2; background:#fffaf4; }
.shipme-request-card__image { display:block; width:100%; height:100%; object-fit:cover; }
.shipme-request-card__placeholder { display:grid; gap:.4rem; place-items:center; width:112px; height:112px; padding:.8rem; border:2px dashed #f3c58d; border-radius:10px; color:#9a4d00; font-size:.82rem; line-height:1.25; text-align:center; }
.shipme-request-card__placeholder-icon { color:var(--shipme-orange); font-size:1.5rem; line-height:1; }
.shipme-request-card__body { display:grid; align-content:center; gap:.55rem; padding:1.35rem 1.5rem; }
.shipme-request-card__category { color:var(--shipme-orange-dark); font-size:.82rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.shipme-request-card__description { color:var(--shipme-ink); font-size:1rem; font-weight:700; line-height:1.42; }
.shipme-request-card__route { display:grid; gap:.45rem; margin:0; color:#52606d; font-size:.95rem; }
.shipme-request-card__route-line { display:flex; align-items:flex-start; gap:.55rem; }
.shipme-request-card__pin { flex:0 0 auto; padding-top:.12rem; color:var(--shipme-orange); font-size:.9rem; }
.shipme-request-card__pin--delivery { color:#e45c5c; }
.shipme-request-card__meta { color:#7b8794; font-size:.8rem; }
.shipme-request-card__actions { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.8rem; padding:1.35rem; border-left:1px solid #edf0f2; }
.shipme-request-card__quotes { display:inline-flex; align-items:center; justify-content:center; min-width:132px; min-height:44px; padding:.65rem 1rem; border-radius:7px; background:var(--shipme-orange); color:var(--shipme-ink)!important; font-weight:800; text-decoration:none; }
.shipme-request-card__offer-price { margin:0 0 -.35rem; color:#52606d; font-size:.84rem; font-weight:800; line-height:1.25; text-align:center; white-space:nowrap; }
.shipme-request-card__quotes:hover,.shipme-request-card__quotes:focus { background:var(--shipme-orange-dark); color:#fff!important; }
.shipme-request-card__dimensions { display:inline-flex; align-items:center; justify-content:center; min-width:132px; min-height:38px; padding:.5rem .85rem; border:1px solid var(--shipme-orange); border-radius:7px; color:var(--shipme-orange-dark)!important; font-size:.83rem; font-weight:800; text-decoration:none; }
.shipme-request-card__dimensions:hover,.shipme-request-card__dimensions:focus { background:var(--shipme-orange-light); color:var(--shipme-orange-dark)!important; }
.shipme-request-card__manage { display:flex; gap:.8rem; font-size:.82rem; font-weight:700; }
.shipme-request-card__manage a { color:#52606d; text-decoration:underline; text-underline-offset:2px; }
.shipme-request-card__manage a:hover,.shipme-request-card__manage a:focus { color:var(--shipme-orange-dark); }
.shipme-request-card__manage .shipme-request-card__delete { color:#c9353f; }
@media (max-width:700px) { .shipme-request-card { grid-template-columns:130px minmax(0,1fr); } .shipme-request-card__media { width:130px; } .shipme-request-card__placeholder { width:82px; height:82px; font-size:.72rem; } .shipme-request-card__actions { grid-column:1 / -1; flex-direction:row; justify-content:space-between; width:100%; padding:.8rem 1rem; border-top:1px solid #edf0f2; border-left:0; } .shipme-request-card__body { padding:1rem; } }
@media (max-width:420px) { .shipme-request-card { grid-template-columns:1fr; } .shipme-request-card__media { width:100%; max-height:190px; border-right:0; border-bottom:1px solid #edf0f2; } }

/* My requests: compact, quote-ready measurement modal. */
.shipme-request-dimensions { padding:.4rem .8rem .8rem; }
.shipme-request-dimensions__help { margin:0 0 1.15rem; color:#667085; font-size:.92rem; line-height:1.45; }
.shipme-request-dimensions fieldset { min-width:0; margin:0; padding:0; border:0; }
.shipme-request-dimensions legend { margin:0 0 .7rem; color:var(--shipme-ink); font-size:1rem; font-weight:800; }
.shipme-request-dimensions .fieldset-wrapper { min-width:0; }
.shipme-request-dimensions__grid > .fieldset-wrapper,
.shipme-request-dimensions__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) 88px; gap:.6rem; align-items:end; }
.shipme-request-dimensions__grid .form-item { min-width:0; margin:0; }
.shipme-request-dimensions__grid .form-item-unit { grid-column:4; grid-row:1; }
.shipme-request-dimensions__grid .field-suffix { display:none; }
.shipme-request-dimensions label { display:block; margin:0 0 .35rem; color:#344054; font-size:.78rem; font-weight:800; letter-spacing:.01em; }
.shipme-request-dimensions input,.shipme-request-dimensions select { box-sizing:border-box; width:100%; min-height:3rem; padding:.6rem .7rem; border:1px solid #d0d5dd; border-radius:8px; background:#fff; color:var(--shipme-ink); font-size:.98rem; box-shadow:0 1px 2px rgba(16,24,40,.04); }
.shipme-request-dimensions input:focus,.shipme-request-dimensions select:focus { border-color:var(--shipme-orange); outline:0; box-shadow:0 0 0 3px rgba(254,156,52,.16); }
.shipme-request-dimensions__weight { margin-top:1.2rem!important; }
.shipme-request-dimensions__weight > .fieldset-wrapper,
.shipme-request-dimensions__weight { display:grid; grid-template-columns:minmax(0,1fr) 92px; gap:.6rem; align-items:end; }
.shipme-request-dimensions__weight .form-item { min-width:0; margin:0; }
.shipme-request-dimensions__weight .form-item-unit { grid-column:2; grid-row:1; }
.shipme-request-dimensions .form-actions { margin:1.35rem 0 0; padding-top:1rem; border-top:1px solid #eaecf0; text-align:right; }
.shipme-request-dimensions .button--primary { min-height:2.9rem; padding:.6rem 1.15rem; border:0; border-radius:8px; background:var(--shipme-orange); color:#fff; font-weight:800; box-shadow:0 4px 10px rgba(217,120,22,.2); }
@media (max-width:600px) { .shipme-request-dimensions__grid > .fieldset-wrapper,.shipme-request-dimensions__grid { grid-template-columns:1fr 1fr; } .shipme-request-dimensions__grid .form-item-unit { grid-column:1 / -1; grid-row:auto; } }

/* Shipl(y)-style single-row measurement bar. */
.shipme-request-dimensions .shipme-measurements-bar { display:flex; align-items:stretch; gap:0; margin:0; }
.shipme-request-dimensions .shipme-measurements-bar > .form-item { flex:0 1 160px; min-width:0; margin:0; }
.shipme-request-dimensions .shipme-measurements-bar > .form-item input,
.shipme-request-dimensions .shipme-measurements-bar > .form-item select { height:3.35rem; min-height:3.35rem; margin:0; border-radius:0; box-shadow:none; }
.shipme-request-dimensions .shipme-measurements-bar > .form-item:not(:first-child) input,
.shipme-request-dimensions .shipme-measurements-bar > .form-item:not(:first-child) select { border-left:0; }
.shipme-request-dimensions .shipme-measurements-bar > .form-item:first-child input { border-radius:9px 0 0 9px; }
.shipme-request-dimensions .shipme-measurements-bar .form-item-dimension-unit,
.shipme-request-dimensions .shipme-measurements-bar .form-item-weight-unit { flex:0 0 74px; }
.shipme-request-dimensions .shipme-measurements-bar .form-item-dimension-unit select,
.shipme-request-dimensions .shipme-measurements-bar .form-item-weight-unit select { background:#f2f4f7; font-weight:700; }
.shipme-request-dimensions .shipme-measurements-bar .form-item-weight { flex-basis:160px; margin-left:1rem; }
.shipme-request-dimensions .shipme-measurements-bar .form-item-weight input { border-left:1px solid #d0d5dd!important; border-radius:9px 0 0 9px; }
.shipme-request-dimensions .shipme-measurements-bar .form-actions { display:flex; margin:0 0 0 1rem; padding:0; border:0; }
.shipme-request-dimensions .shipme-measurements-bar .button--primary { min-width:115px; height:3.35rem; min-height:3.35rem; padding:.6rem 1.2rem; border-radius:9px; }
@media (max-width:760px) { .shipme-request-dimensions .shipme-measurements-bar { flex-wrap:wrap; gap:.65rem; } .shipme-request-dimensions .shipme-measurements-bar > .form-item,.shipme-request-dimensions .shipme-measurements-bar .form-item-weight { flex:1 1 calc(50% - .65rem); margin:0; } .shipme-request-dimensions .shipme-measurements-bar > .form-item input,.shipme-request-dimensions .shipme-measurements-bar > .form-item select { border:1px solid #d0d5dd!important; border-radius:8px!important; } .shipme-request-dimensions .shipme-measurements-bar .form-actions { width:100%; margin:0; } .shipme-request-dimensions .shipme-measurements-bar .button--primary { width:100%; } }

/* Desktop modal: fit the complete measurement toolbar without a scrollbar. */
.ui-dialog:has(.shipme-request-dimensions) { max-width:calc(100vw - 3rem)!important; }
#drupal-modal:has(.shipme-request-dimensions) { overflow:visible!important; }
.shipme-request-dimensions .shipme-measurements-bar > .form-item { flex:0 1 172px; }
.shipme-request-dimensions .shipme-measurements-bar .form-item-dimension-unit,
.shipme-request-dimensions .shipme-measurements-bar .form-item-weight-unit { flex-basis:82px; }
.shipme-request-dimensions .shipme-measurements-bar .form-item-weight { flex-basis:172px; }
.shipme-request-dimensions .shipme-measurements-bar > .form-item input,
.shipme-request-dimensions .shipme-measurements-bar > .form-item select,
.shipme-request-dimensions .shipme-measurements-bar .button--primary { height:3.65rem; min-height:3.65rem; font-size:1rem; }
.shipme-request-dimensions .shipme-measurements-bar .button--primary { min-width:138px; letter-spacing:.01em; }
@media (max-width:760px) { .shipme-request-dimensions .shipme-measurements-bar > .form-item,.shipme-request-dimensions .shipme-measurements-bar .form-item-weight { flex:1 1 calc(50% - .65rem); } .shipme-request-dimensions .shipme-measurements-bar .button--primary { width:100%; min-width:0; } }

/* Final desktop geometry: no flex shrinking, no oversized Save button. */
@media (min-width:761px) {
  .shipme-request-dimensions .shipme-measurements-bar {
    display:grid!important;
    grid-template-columns:minmax(135px,1.2fr) minmax(135px,1.2fr) minmax(135px,1.2fr) 88px 12px minmax(145px,1.3fr) 88px 14px 180px;
    gap:0!important;
    width:100%;
  }
  .shipme-request-dimensions .shipme-measurements-bar > .form-item,
  .shipme-request-dimensions .shipme-measurements-bar .form-item-weight { min-width:0; margin:0!important; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item-dimension-unit,
  .shipme-request-dimensions .shipme-measurements-bar .form-item-weight-unit { width:auto; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item-dimension-unit { grid-column:4; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item-weight { grid-column:6; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item-weight-unit { grid-column:7; }
  .shipme-request-dimensions .shipme-measurements-bar > .form-item input,
  .shipme-request-dimensions .shipme-measurements-bar > .form-item select { width:100%!important; }
  .shipme-request-dimensions .shipme-measurements-bar > .form-submit,
  .shipme-request-dimensions .shipme-measurements-bar .button--primary { grid-column:9; width:100%!important; min-width:0!important; margin:0!important; }
}

/* Site-wide premium dialog treatment. */
.ui-widget-overlay { background:rgba(9,30,52,.62)!important; backdrop-filter:blur(3px); }
.ui-dialog { overflow:hidden!important; padding:0!important; border:1px solid rgba(255,255,255,.24)!important; border-radius:16px!important; background:#fff!important; box-shadow:0 28px 75px rgba(9,30,52,.35)!important; }
.ui-dialog .ui-dialog-titlebar { min-height:3.9rem; margin:0!important; padding:0 4.5rem 0 1.5rem!important; border:0!important; border-radius:0!important; background:linear-gradient(120deg,#102a43,#183d60)!important; color:#fff!important; display:flex; align-items:center; }
.ui-dialog .ui-dialog-title { width:100%; margin:0!important; color:#fff!important; font-size:1.05rem; font-weight:800; letter-spacing:.01em; }
.ui-dialog .ui-dialog-titlebar-close { top:50%!important; right:1rem!important; width:2rem!important; height:2rem!important; margin:-1rem 0 0!important; padding:0!important; border:1px solid rgba(255,255,255,.28)!important; border-radius:50%!important; background:rgba(255,255,255,.13)!important; color:#fff!important; transition:background .15s ease,transform .15s ease; }
.ui-dialog .ui-dialog-titlebar-close:hover,.ui-dialog .ui-dialog-titlebar-close:focus { background:var(--shipme-orange)!important; transform:rotate(90deg); }
.ui-dialog .ui-dialog-content { height:auto!important; min-height:0!important; max-height:calc(100vh - 11rem); padding:1.4rem 1.5rem!important; overflow:auto; color:#344054; }
.ui-dialog:has(.shipme-request-dimensions) .ui-dialog-content { overflow:visible!important; padding:1.2rem 1.5rem 1.35rem!important; }
.ui-dialog:has(.shipme-request-dimensions) { height:auto!important; }

/* High-contrast close control and optically centred measurement submit. */
.ui-dialog .ui-dialog-titlebar-close { border-color:#fff!important; background:#fff!important; box-shadow:0 2px 7px rgba(0,0,0,.2); opacity:1!important; }
.ui-dialog .ui-dialog-titlebar-close .ui-icon { width:100%!important; height:100%!important; background-image:none!important; text-indent:0!important; overflow:visible!important; }
.ui-dialog .ui-dialog-titlebar-close .ui-icon::before { display:block; color:#102a43; content:'×'; font-size:1.5rem; font-weight:900; line-height:1.75rem; text-align:center; }
.ui-dialog .ui-dialog-titlebar-close:hover,.ui-dialog .ui-dialog-titlebar-close:focus { background:var(--shipme-orange)!important; }
.ui-dialog .ui-dialog-titlebar-close:hover .ui-icon::before,.ui-dialog .ui-dialog-titlebar-close:focus .ui-icon::before { color:#fff; }
.shipme-request-dimensions .shipme-measurements-bar > input.form-submit,
.shipme-request-dimensions .shipme-measurements-bar > .button--primary { display:block!important; height:3.65rem!important; min-height:3.65rem!important; padding:0!important; line-height:3.65rem!important; text-align:center!important; }

/* Do not use the legacy jQuery UI sprite for the close glyph. */
.ui-dialog .ui-dialog-titlebar-close { display:grid!important; place-items:center; font-size:0!important; line-height:1!important; text-indent:0!important; }
.ui-dialog .ui-dialog-titlebar-close .ui-icon { display:none!important; }
.ui-dialog .ui-dialog-titlebar-close::before { color:#102a43; content:'×'; font-size:1.55rem; font-weight:900; line-height:1; transform:translateY(-1px); }
.ui-dialog .ui-dialog-titlebar-close:hover::before,.ui-dialog .ui-dialog-titlebar-close:focus::before { color:#fff; }
.shipme-request-dimensions .shipme-measurements-bar .form-item-dimension-unit select,
.shipme-request-dimensions .shipme-measurements-bar .form-item-weight-unit select { border-radius:0 9px 9px 0!important; }

/* Shared ShipMe modal-form component. Apply `.shipme-modal-form` to any
   custom Drupal form rendered in a modal; basic controls inherit this same
   treatment everywhere, while the component supplies the consistent form UI. */
.ui-dialog .form-item { margin:0 0 1rem!important; }
.ui-dialog .form-item > label { display:block; margin:0 0 .45rem; color:#172f45; font-size:.88rem; font-weight:800; letter-spacing:.01em; line-height:1.25; text-transform:none; }
.ui-dialog .form-item input:not([type='checkbox']):not([type='radio']),
.ui-dialog .form-item select,
.ui-dialog .form-item textarea { box-sizing:border-box; width:100%; border:1px solid #cbd5df; border-radius:8px; background:#fff; color:#172f45; font:inherit; transition:border-color .16s ease,box-shadow .16s ease; }
.ui-dialog .form-item input:not([type='checkbox']):not([type='radio']),
.ui-dialog .form-item select { min-height:3rem; padding:.65rem .8rem; }
.ui-dialog .form-item textarea { min-height:7rem; padding:.75rem .8rem; line-height:1.45; resize:vertical; }
.ui-dialog .form-item input:focus,
.ui-dialog .form-item select:focus,
.ui-dialog .form-item textarea:focus { border-color:#e68b25; outline:0; box-shadow:0 0 0 3px rgba(230,139,37,.16); }
.ui-dialog .form-item .description { margin:.4rem 0 0; color:#667085; font-size:.82rem; line-height:1.4; }
.ui-dialog .shipme-request-note { margin:0 0 1.15rem; padding:.9rem 1rem; border:1px solid #f5dfbf; border-radius:10px; background:#fff7eb; color:#9a4f00; font-size:.9rem; line-height:1.55; }
.ui-dialog .form-actions { display:flex; justify-content:flex-end; margin:1.2rem 0 0!important; padding:0!important; border:0!important; }
.ui-dialog .form-actions .button--primary { min-height:3rem; margin:0!important; padding:.7rem 1.35rem!important; border:0!important; border-radius:8px!important; background:#e68b25!important; box-shadow:0 7px 16px rgba(201,112,22,.22); color:#fff!important; font-size:.88rem; font-weight:800; letter-spacing:.02em; text-transform:uppercase; transition:background .16s ease,transform .16s ease,box-shadow .16s ease; }
.ui-dialog .form-actions .button--primary:hover,
.ui-dialog .form-actions .button--primary:focus { background:#c97116!important; box-shadow:0 9px 20px rgba(201,112,22,.3); transform:translateY(-1px); }

/* Compact offer form: small enough for normal screens, while retaining
   scrolling as a safety net on very small viewports. */
.ui-dialog:has(.shipme-offer-modal-form),
.ui-dialog:has(.shipme-offer-modal-form) .ui-dialog-content { height:auto!important; }
.ui-dialog:has(.shipme-offer-modal-form) .ui-dialog-content { overflow:auto!important; padding:1rem 1.5rem!important; }
.ui-dialog .shipme-offer-modal-form .shipme-request-note { margin:0 0 .75rem; padding:.65rem .8rem; font-size:.84rem; line-height:1.4; }
.ui-dialog .shipme-offer-modal-form .form-item { margin-bottom:.65rem!important; }
.ui-dialog .shipme-offer-modal-form .form-item > label { margin-bottom:.3rem; }
.ui-dialog .shipme-offer-modal-form .form-item input:not([type='checkbox']):not([type='radio']) { min-height:2.65rem; padding:.5rem .7rem; }
.ui-dialog .shipme-offer-modal-form .form-item textarea { min-height:4.25rem; padding:.55rem .7rem; }
.ui-dialog .shipme-offer-modal-form .form-actions { margin-top:.75rem!important; }
.ui-dialog .shipme-offer-modal-form .form-actions .button--primary { min-height:2.7rem; padding:.55rem 1.15rem!important; }
.ui-dialog .shipme-modal-form__error { margin:-.15rem 0 .65rem; padding:.55rem .7rem; border:1px solid #f3b6bb; border-radius:7px; background:#fff1f2; color:#b4232d; font-size:.82rem; font-weight:700; line-height:1.35; }

/* Inline measurement summary shown immediately after the dimensions modal saves. */
.shipme-request-card__dimensions-summary { margin:.55rem 0 .8rem; color:#475467; font-size:.84rem; font-weight:700; line-height:1.35; }
.shipme-request-card__dimensions-summary::before { content:'Dimensions'; display:inline-block; margin-right:.45rem; color:#667085; font-size:.72rem; font-weight:800; letter-spacing:.055em; text-transform:uppercase; }

/* Stable measurement element classes. Nested Drupal form names are not safe
   CSS hooks: use these explicit classes so the weight input can never collapse
   into the spacer between its two unit controls. */
@media (min-width:761px) {
  .shipme-request-dimensions .shipme-measurements-bar {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 88px 1rem minmax(145px,1fr) 88px 1rem 180px;
    align-items:stretch;
  }
  .shipme-request-dimensions .shipme-measurements-bar > .form-item { min-width:0; margin:0 !important; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item:has(.shipme-measurement-length) { grid-column:1; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item:has(.shipme-measurement-width) { grid-column:2; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item:has(.shipme-measurement-height) { grid-column:3; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item:has(.shipme-measurement-dimension-unit) { grid-column:4; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item:has(.shipme-measurement-weight) { grid-column:6; }
  .shipme-request-dimensions .shipme-measurements-bar .form-item:has(.shipme-measurement-weight-unit) { grid-column:7; }
  .shipme-request-dimensions .shipme-measurements-bar .form-actions { grid-column:9; display:block; margin:0 !important; padding:0; border:0; }
  .shipme-request-dimensions .shipme-measurements-bar .shipme-measurement-field { box-sizing:border-box; width:100% !important; height:3.65rem; min-height:3.65rem; }
  .shipme-request-dimensions .shipme-measurements-bar .shipme-measurement-length { border-radius:9px 0 0 9px !important; }
  .shipme-request-dimensions .shipme-measurements-bar .shipme-measurement-dimension-unit,
  .shipme-request-dimensions .shipme-measurements-bar .shipme-measurement-weight-unit { border-radius:0 9px 9px 0 !important; }
  .shipme-request-dimensions .shipme-measurements-bar .shipme-measurement-weight { border-left:1px solid #d0d5dd !important; border-radius:9px 0 0 9px !important; }
}
