:root {
--dp-white:     #ffffff;
--dp-gray-50:   #f9fafb;
--dp-gray-100:  #f3f4f6;
--dp-gray-150:  #eceef1;
--dp-gray-200:  #e2e4e9;
--dp-gray-300:  #cdd0d8;
--dp-gray-400:  #9ba3af;
--dp-gray-500:  #6b7280;
--dp-gray-600:  #4b5563;
--dp-gray-700:  #374151;
--dp-gray-800:  #1f2937;
--dp-gray-900:  #111827;

--dp-blue-50:   #eff6ff;
--dp-blue-100:  #dbeafe;
--dp-blue-200:  #bfdbfe;
--dp-blue-300:  #93c5fd;
--dp-blue-400:  #60a5fa;
--dp-blue-500:  #3b82f6;
--dp-blue-600:  #2563eb;
--dp-blue-700:  #1d4ed8;
--dp-blue-800:  #1e40af;

--dp-green-50:  #f0fdf4;
--dp-green-100: #dcfce7;
--dp-green-200: #bbf7d0;
--dp-green-500: #10b981;
--dp-green-600: #059669;
--dp-green-700: #047857;
--dp-green-800: #065f46;

--dp-red-50:    #fef2f2;
--dp-red-100:   #fee2e2;
--dp-red-500:   #ef4444;
--dp-red-600:   #dc2626;

--dp-amber-50:  #fffbeb;
--dp-amber-200: #fde68a;
--dp-amber-400: #fbbf24;
--dp-amber-500: #f59e0b;
--dp-amber-700: #b45309;
--dp-amber-900: #78350f;

--sp-1:  0.25rem;   --sp-2:  0.5rem;    --sp-3:  0.75rem;
--sp-4:  1rem;      --sp-5:  1.25rem;   --sp-6:  1.5rem;
--sp-8:  2rem;      --sp-10: 2.5rem;    --sp-12: 3rem;

--r-sm:  0.375rem;  --r-md:  0.5rem;    --r-lg:  0.75rem;
--r-xl:  1rem;      --r-2xl: 1.5rem;    --r-3xl: 2rem;

--shadow-xs:  0 1px 2px 0 rgba(0,0,0,.04);
--shadow-sm:  0 1px 3px 0 rgba(0,0,0,.08), 0 1px 2px -1px rgba(0,0,0,.06);
--shadow-md:  0 4px 12px -2px rgba(0,0,0,.10), 0 2px 4px -2px rgba(0,0,0,.06);
--shadow-lg:  0 10px 30px -5px rgba(0,0,0,.12), 0 4px 8px -4px rgba(0,0,0,.06);
--shadow-xl:  0 20px 48px -10px rgba(0,0,0,.15), 0 8px 16px -8px rgba(0,0,0,.08);
--shadow-2xl: 0 32px 64px -16px rgba(0,0,0,.18);

--card-shadow:       0 1px 3px rgba(0,0,0,.06), 0 2px 8px rgba(0,0,0,.04);
--card-shadow-hover: 0 4px 12px rgba(59,130,246,.08), 0 12px 32px rgba(0,0,0,.09), 0 2px 4px rgba(0,0,0,.04);

--trans-fast: 150ms cubic-bezier(.4,0,.2,1);
--trans-base: 220ms cubic-bezier(.4,0,.2,1);
--trans-slow: 350ms cubic-bezier(.4,0,.2,1);
--trans-spring: 400ms cubic-bezier(.34,1.56,.64,1);
}

html {
scroll-behavior: smooth;
scroll-padding-top: 80px;
}

html, body {
background: var(--dp-gray-50) !important;
font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI",
Roboto, "Helvetica Neue", sans-serif !important;
}

.t-Body, .t-Login-container, .t-Body-content {
background: var(--dp-gray-50) !important;
}

#R20_GRID, .t-Body-content {
max-width: none !important;
width: 100% !important;
margin: 0 !important;
}

.t-Card-titleWrap {
padding-block-end: unset;
padding-block-start: unset;
padding-inline-end: unset;
padding-inline-start: unset;
}

.dpPageHeader {
top: 0 !important; left: 0 !important; right: 0 !important;
background: rgba(255,255,255,.97) !important;
backdrop-filter: blur(12px) !important;
-webkit-backdrop-filter: blur(12px) !important;
border-bottom: 1px solid var(--dp-gray-200) !important;
box-shadow: 0 1px 0 rgba(0,0,0,.04), 0 2px 8px rgba(0,0,0,.04) !important;
isolation: isolate !important;
}

.dpPageHeader::before {
content: '';
position: absolute;
bottom: 0; left: 0; right: 0;
height: 2px;
background: linear-gradient(90deg, var(--dp-blue-600), var(--dp-blue-400));
z-index: 1;
}

.dpHeaderMain {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
max-width: 1400px;
margin: 0 auto;
padding: 10px 16px;
position: relative;
z-index: 2;
}

.dpHeaderLeft { display: flex; align-items: center; gap: 10px; min-width: 0; flex: 1 1 0; }
.dpHeaderLogo { flex-shrink: 0; }
.dpHeaderLogo img { height: 32px; width: auto; max-width: 110px; object-fit: contain; display: block; }
.dpHeaderContent { flex: 1; min-width: 0; }

.dpHeaderTitle {
margin: 0; font-size: .9375rem; font-weight: 700;
color: var(--dp-gray-900); line-height: 1.25;
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.dpHeaderSubtitle {
margin: 1px 0 0; font-size: .6875rem; font-weight: 500;
color: var(--dp-gray-500); line-height: 1.3;
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.dpHeaderRight {
display: flex !important; align-items: center;
gap: 6px; flex-shrink: 0; flex-wrap: nowrap;
}
.dpHeaderRight::-webkit-scrollbar { display: none; }

.dpContactItem, .dpChatBtn {
display: inline-flex !important;
visibility: visible !important;
opacity: 1 !important;
position: relative; z-index: 2;
}

.dpContactItem {
align-items: center; justify-content: center; gap: 6px;
height: 34px; padding: 0 10px;
background: var(--dp-gray-50); border: 1px solid var(--dp-gray-200);
border-radius: 8px; font-size: .75rem; font-weight: 600;
color: var(--dp-gray-700); text-decoration: none;
white-space: nowrap; flex-shrink: 0; transition: all var(--trans-fast);
}
.dpContactItem:hover { background: var(--dp-blue-50); border-color: var(--dp-blue-200); color: var(--dp-blue-700); }
.dpContactItem:active { transform: scale(.97); }
.dpContactIcon { width: 15px; height: 15px; flex-shrink: 0; stroke-width: 2; }
.dpContactValue { display: inline !important; font-size: .75rem; }
.dpContactDivider { display: none !important; }

.dpChatBtn {
align-items: center; justify-content: center; gap: 6px;
height: 34px; padding: 0 14px;
background: var(--dp-blue-600) !important; color: #fff !important;
border: none; border-radius: 8px; font-size: .75rem; font-weight: 700;
text-decoration: none; white-space: nowrap; flex-shrink: 0;
transition: all var(--trans-fast);
}
.dpChatBtn:hover { background: var(--dp-blue-700) !important; }
.dpChatBtn:active { transform: scale(.97); }
.dpChatIcon { width: 15px; height: 15px; stroke-width: 2; }
.t-PageBody { position: relative !important; z-index: 1 !important; }

@media (max-width: 639px) {
.dpHeaderMain { padding: 8px 12px; gap: 8px; }
.dpHeaderLogo img { height: 28px; max-width: 90px; }
.dpHeaderTitle { font-size: .8125rem; }
.dpHeaderSubtitle { font-size: .625rem; }
.dpContactValue { display: none !important; }
.dpContactItem { padding: 0 8px; gap: 0; }
.dpChatBtn { padding: 0 10px; }
}

@media (min-width: 640px) and (max-width: 1023px) {
.dpContactValue { display: none !important; }
.dpContactItem { padding: 0 8px; position: relative; }
.dpContactItem:hover .dpContactValue {
display: block !important; position: absolute; top: calc(100% + 6px);
left: 50%; transform: translateX(-50%); background: #fff;
padding: 6px 10px; border-radius: 6px; box-shadow: 0 4px 14px rgba(0,0,0,.12);
border: 1px solid var(--dp-gray-200); z-index: 100; white-space: nowrap; font-size: .6875rem;
}
.dpContactItem:hover .dpContactValue::before {
content: ''; position: absolute; top: -4px; left: 50%;
transform: translateX(-50%) rotate(45deg); width: 7px; height: 7px;
background: #fff; border-left: 1px solid var(--dp-gray-200); border-top: 1px solid var(--dp-gray-200);
}
}

@media (min-width: 1024px) {
.dpHeaderMain { padding: 10px 24px; }
.dpHeaderLogo img { height: 36px; max-width: 130px; }
.dpHeaderTitle { font-size: 1rem; }
.dpHeaderSubtitle { font-size: .75rem; }
.dpHeaderRight { gap: 4px; }
.dpContactItem { padding: 0 12px; gap: 6px; }
.dpContactValue {
display: inline !important; position: static !important; transform: none !important;
background: none !important; padding: 0 !important; border-radius: 0 !important;
box-shadow: none !important; border: none !important;
}
.dpContactValue::before { display: none !important; }
.dpContactDivider {
display: block !important; width: 1px; height: 18px;
background: var(--dp-gray-200); flex-shrink: 0; margin: 0 2px;
}
.dpChatBtn { padding: 0 16px; gap: 6px; }
}

.dpContactDivider:last-of-type { display: none !important; }

.dpVehCard {
display: flex;
flex-direction: column;
background: var(--dp-white);
border: 1px solid var(--dp-gray-200);
border-radius: 20px;
overflow: hidden;
height: 100%;
position: relative;
box-shadow: var(--card-shadow);
transition:
box-shadow var(--trans-base),
transform var(--trans-base),
border-color var(--trans-base);
animation: vehCardIn .45s cubic-bezier(.22,1,.36,1) backwards;
}

.dpVehCard:nth-child(1) { animation-delay:   0ms; }
.dpVehCard:nth-child(2) { animation-delay:  70ms; }
.dpVehCard:nth-child(3) { animation-delay: 140ms; }
.dpVehCard:nth-child(4) { animation-delay: 210ms; }
.dpVehCard:nth-child(5) { animation-delay: 280ms; }
.dpVehCard:nth-child(6) { animation-delay: 350ms; }
.dpVehCard:nth-child(7) { animation-delay: 420ms; }
.dpVehCard:nth-child(8) { animation-delay: 490ms; }

.dpVehCard:hover {
border-color: rgba(59,130,246,.25);
box-shadow: var(--card-shadow-hover);
transform: translateY(-5px) scale(1.005);
}

.dpVehCard.is-selected {
border-color: var(--dp-blue-400) !important;
box-shadow: 0 0 0 3px rgba(59,130,246,.18), var(--card-shadow-hover) !important;
}

.dpVehCard.is-booked {
opacity: .75;
}

.dpVehCard.is-booked::after {
content: '';
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--dp-red-500), #ff8080);
z-index: 10;
}

.dpVehCard.is-booked .dpVehName {
color: var(--dp-gray-400);
}

.dpBadge {
position: absolute;
top: 14px;
display: inline-flex;
align-items: center;
gap: 5px;
padding: 5px 12px 5px 9px;
border-radius: 999px;
font-size: .65rem;
font-weight: 800;
letter-spacing: .05em;
text-transform: uppercase;
line-height: 1;
z-index: 6;
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
}

.dpBadge--booked {
right: 14px;
background: rgba(255,242,242,.92);
color: var(--dp-red-600);
border: 1px solid rgba(239,68,68,.22);
box-shadow: 0 2px 10px rgba(239,68,68,.18);
}

.dpBadge--discount {
left: 14px;
background: rgba(236,253,245,.92);
color: #047857;
border: 1px solid rgba(16,185,129,.22);
box-shadow: 0 2px 10px rgba(16,185,129,.18);
}

.dpBadge svg { flex-shrink: 0; }

.dpVehMedia {
position: relative;
padding: 32px 24px 20px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-height: 220px;

background:
radial-gradient(ellipse at 70% -20%, rgba(191,219,254,.35) 0%, transparent 55%),
radial-gradient(ellipse at 20% 110%, rgba(167,243,208,.2) 0%, transparent 50%),
linear-gradient(170deg, #f7f8fa 0%, #eef0f4 100%);
overflow: hidden;
}

.dpVehMedia::before {
content: '';
position: absolute;
bottom: -60px; right: -60px;
width: 200px; height: 200px;
border-radius: 50%;
background: radial-gradient(circle, rgba(59,130,246,.05) 0%, transparent 70%);
pointer-events: none;
}

.dpVehMedia::after {
content: '';
position: absolute;
bottom: 0; left: 0; right: 0;
height: 48px;
background: linear-gradient(to top, rgba(238,240,244,.7) 0%, transparent 100%);
pointer-events: none;
z-index: 1;
}

.dpVehBrand {
position: absolute;
top: 14px; left: 14px;
height: 24px;
z-index: 3;
display: none;
}

.dpVehBrand img {
height: 100%; width: auto; max-width: 68px;
object-fit: contain; opacity: .55;
}

.dpVehImageWrap {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
position: relative;
z-index: 2;
}

.dpVehImage {
width: 100%; height: auto; max-height: 185px;
object-fit: contain;
transition:
transform var(--trans-slow),
filter var(--trans-slow);
filter:
drop-shadow(0 10px 20px rgba(0,0,0,.13))
drop-shadow(0 3px 6px rgba(0,0,0,.07));
}

.dpVehCard:hover .dpVehImage {
transform: scale(1.06) translateY(-4px);
filter:
drop-shadow(0 16px 28px rgba(0,0,0,.16))
drop-shadow(0 4px 8px rgba(0,0,0,.08));
}

.dpVehBody {
display: flex;
flex-direction: column;
gap: 10px;
padding: 18px 18px 16px;
flex: 1;
}

.dpVehName {
margin: 0;
font-size: 1.0625rem;
font-weight: 700;
color: var(--dp-gray-900);
line-height: 1.3;
letter-spacing: -.018em;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
transition: color var(--trans-fast);
}

.dpVehMeta {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 5px;
}

.dpVehMeta + .dpVehMeta { margin-top: -3px; }

.dpTag {
display: inline-flex;
align-items: center;
gap: 4px;
padding: 3px 9px;
background: var(--dp-gray-50);
border: 1px solid var(--dp-gray-200);
border-radius: 999px;
font-size: .685rem;
font-weight: 600;
color: var(--dp-gray-600);
line-height: 1.4;
white-space: nowrap;
transition: background var(--trans-fast), border-color var(--trans-fast);
}

.dpTag--seg {
background: linear-gradient(135deg, rgba(219,234,254,.8) 0%, rgba(191,219,254,.6) 100%);
border: 1px solid rgba(59,130,246,.22);
color: var(--dp-blue-700);
font-weight: 700;
}

.dpTagIcon {
width: 10px; height: 10px;
flex-shrink: 0; opacity: .5;
}

.dpVehPricing {
display: flex;
flex-direction: column;
gap: 6px;
padding: 13px 14px 11px;

background: linear-gradient(135deg, rgba(240,253,244,.9) 0%, rgba(236,253,245,.6) 100%);
border: 1px solid rgba(16,185,129,.18);
border-left: 3px solid var(--dp-green-500);
border-radius: var(--r-lg);
position: relative;
overflow: hidden;
}

.dpVehPricing::after {
content: '';
position: absolute;
top: -8px; right: -8px;
width: 48px; height: 48px;
border-radius: 50%;
background: radial-gradient(circle, rgba(16,185,129,.08) 0%, transparent 70%);
pointer-events: none;
}

.dpPriceRow {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--sp-2);
}

.dpPriceLeft {
display: flex;
align-items: baseline;
gap: 8px;
}

.dpPriceTotal {
font-size: 1.55rem;
font-weight: 800;
color: var(--dp-gray-900);
line-height: 1;
letter-spacing: -.035em;
}

.dpPriceOld {
font-size: .78rem;
font-weight: 500;
color: var(--dp-gray-400);
text-decoration: line-through;
}

.dpPriceDays {
font-size: .66rem;
font-weight: 700;
color: var(--dp-green-700);
background: rgba(5,150,105,.1);
border: 1px solid rgba(5,150,105,.18);
padding: 3px 9px;
border-radius: 999px;
white-space: nowrap;
flex-shrink: 0;
}

.dpPriceDaily {
font-size: .68rem;
font-weight: 500;
color: var(--dp-gray-500);
}

.dpVehClause {
border: 1px solid var(--dp-gray-200);
border-radius: var(--r-md);
background: var(--dp-gray-50);
overflow: hidden;
transition:
border-color var(--trans-fast),
box-shadow var(--trans-fast);
}

.dpVehClause[open] {
border-color: var(--dp-blue-200);
box-shadow: 0 2px 8px rgba(59,130,246,.07);
}

.dpVehClauseSummary {
list-style: none;
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
padding: 9px 12px;
cursor: pointer;
user-select: none;
font-size: .685rem;
font-weight: 700;
color: var(--dp-gray-500);
letter-spacing: .015em;
transition: background var(--trans-fast), color var(--trans-fast);
}

.dpVehClauseSummary::-webkit-details-marker { display: none; }

.dpVehClauseSummary:hover {
background: var(--dp-gray-100);
color: var(--dp-gray-800);
}

.dpVehClause[open] .dpVehClauseSummary {
background: linear-gradient(90deg, var(--dp-blue-50), rgba(219,234,254,.4));
color: var(--dp-blue-700);
border-bottom: 1px solid var(--dp-blue-100);
}

.dpVehClauseSumLeft {
display: inline-flex;
align-items: center;
gap: 6px;
flex: 1;
}

.dpVehClauseSumLeft svg {
color: var(--dp-blue-400);
flex-shrink: 0;
}

.dpChevron {
flex-shrink: 0;
color: var(--dp-gray-400);
transition: transform .22s cubic-bezier(.4,0,.2,1), color .22s ease;
}

.dpVehClause[open] .dpChevron {
transform: rotate(180deg);
color: var(--dp-blue-400);
}

.dpVehClauseBody {
padding: 10px 14px 12px;
font-size: .72rem;
color: var(--dp-gray-600);
line-height: 1.75;
white-space: pre-line;
max-height: 140px;
overflow-y: auto;
}

.dpVehClauseBody::-webkit-scrollbar { width: 3px; }
.dpVehClauseBody::-webkit-scrollbar-track { background: transparent; }
.dpVehClauseBody::-webkit-scrollbar-thumb {
background: var(--dp-gray-300);
border-radius: 999px;
}

.dpVehActions {
margin-top: auto;
padding-top: 12px;
}

.dpVehActions::before {
content: '';
display: block;
height: 1px;
background: linear-gradient(90deg, transparent, var(--dp-gray-150), transparent);
margin-bottom: 12px;
}

.dpBtn {
display: flex !important;
align-items: center !important;
justify-content: center !important;
gap: var(--sp-2) !important;
width: 100% !important;
height: 44px !important;
font-size: .875rem !important;
font-weight: 700 !important;
line-height: 1 !important;
border-radius: 12px !important;
border: none !important;
cursor: pointer !important;
transition: all var(--trans-fast) !important;
white-space: nowrap !important;
letter-spacing: .01em !important;
position: relative !important;
overflow: hidden !important;
}

.dpBtn::before {
content: '';
position: absolute;
top: 0; left: -100%; bottom: 0;
width: 60%;
background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
transition: left .5s ease;
}

.dpBtn:hover::before { left: 150%; }
.dpBtn:active { transform: scale(.975) !important; }

.dpBtn--primary {
background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
color: #fff !important;
box-shadow:
0 1px 0 rgba(0,0,0,.12) inset,
0 2px 4px rgba(5,150,105,.2),
0 6px 16px rgba(5,150,105,.15) !important;
}

.dpBtn--primary:hover {
background: linear-gradient(135deg, #047857 0%, #065f46 100%) !important;
box-shadow:
0 1px 0 rgba(0,0,0,.12) inset,
0 4px 8px rgba(5,150,105,.25),
0 10px 24px rgba(5,150,105,.2) !important;
transform: translateY(-1px) !important;
}

.dpBtn--request {
background: rgba(254,242,242,.6) !important;
color: var(--dp-red-600) !important;
border: 1.5px solid rgba(239,68,68,.3) !important;
}

.dpBtn--request:hover {
background: var(--dp-red-50) !important;
border-color: var(--dp-red-500) !important;
}

.dpBtn--ghost {
background: var(--dp-white) !important;
border: 1px solid var(--dp-gray-200) !important;
color: var(--dp-gray-900) !important;
}

.dpBtn--ghost:hover {
background: var(--dp-gray-50) !important;
border-color: var(--dp-gray-300) !important;
}

.dpEmpty {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
padding: var(--sp-12) var(--sp-8);
min-height: 450px;
background: var(--dp-white);
border-radius: var(--r-2xl);
border: 2px dashed var(--dp-gray-300);
}

.dpEmpty--warning {
background: linear-gradient(135deg, #fef3c7, #fef9c3);
border-color: var(--dp-amber-400);
border-style: solid;
}

.dpEmptyIcon { width: 72px; height: 72px; margin-bottom: var(--sp-6); color: var(--dp-gray-400); stroke-width: 1.5; }
.dpEmpty--warning .dpEmptyIcon { color: var(--dp-amber-500); }
.dpEmptyTitle { margin: 0 0 var(--sp-3); font-size: 1.625rem; font-weight: 700; color: var(--dp-gray-900); }
.dpEmptyText { margin: 0; font-size: 1rem; color: var(--dp-gray-600); max-width: 520px; line-height: 1.6; }

@keyframes vehCardIn {
from {
opacity: 0;
transform: translateY(20px) scale(.97);
}
to {
opacity: 1;
transform: translateY(0) scale(1);
}
}

@keyframes fadeInUp {
from { opacity: 0; transform: translateY(16px); }
to   { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: .01ms !important;
transition-duration: .01ms !important;
}
}

@media (max-width: 768px) {
.dpVehMedia  { padding: 20px 16px 16px; min-height: 175px; }
.dpVehImage  { max-height: 145px; }
.dpVehBody   { padding: 14px 14px 12px; }
.dpVehName   { font-size: .9375rem; }
.dpPriceTotal { font-size: 1.35rem; }
}

.dpOrderSelect {
appearance: none; -webkit-appearance: none;
height: 36px; padding: 0 32px 0 12px;
border: 1px solid var(--dp-gray-200); border-radius: var(--r-lg);
background: var(--dp-white);
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");
background-repeat: no-repeat; background-position: right 10px center;
font-size: .8125rem; font-weight: 600; color: var(--dp-gray-700);
cursor: pointer; transition: border-color var(--trans-fast), box-shadow var(--trans-fast);
box-shadow: var(--shadow-xs);
}

.dpOrderSelect:focus {
outline: none;
border-color: var(--dp-blue-300);
box-shadow: 0 0 0 3px rgba(59,130,246,.12), var(--shadow-xs);
}

.dpOrderSelect:hover { border-color: var(--dp-gray-300); }

.vc-container { display: grid; grid-template-columns: 1fr 1fr; gap: 0.875rem; margin-bottom: 1.5rem; }

.vc-card {
background: #fff; border: 1px solid #e5e7eb; border-radius: 14px;
padding: 1.25rem; box-shadow: 0 1px 4px rgba(0,0,0,.05), 0 2px 8px rgba(0,0,0,.03);
transition: box-shadow .22s ease, transform .22s ease;
}

.vc-card:hover {
box-shadow: 0 4px 16px rgba(0,0,0,.08), 0 8px 24px rgba(0,0,0,.04);
transform: translateY(-1px);
}

.vc-card.full { grid-column: 1 / -1; }

.vc-header { display: flex; gap: 1.25rem; margin-bottom: 1.25rem; }

.vc-img {
width: 160px; height: 110px; border-radius: 10px; overflow: hidden;
background: #f5f6f8; flex-shrink: 0; border: 1px solid #e5e7eb;
box-shadow: 0 2px 10px rgba(0,0,0,.09);
}
.vc-img img { width: 100%; height: 100%; object-fit: cover; }

.vc-main { flex: 1; display: flex; flex-direction: column; gap: 0.75rem; }

.vc-title {
margin: 0; font-size: 1.25rem; font-weight: 700;
color: #111827; line-height: 1.35; letter-spacing: -.018em;
}

.vc-specs { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.625rem; font-size: .82rem; }
.vc-spec { display: flex; align-items: center; gap: 7px; color: #6b7280; }
.vc-spec-icon { width: 16px; height: 16px; color: #9ca3af; flex-shrink: 0; }
.vc-spec strong { color: #1a1a2e; font-weight: 600; }

.vc-badges { display: flex; gap: .5rem; flex-wrap: wrap; }
.vc-badge {
display: inline-flex; align-items: center; padding: .375rem .875rem;
background: #eff6ff; border: 1px solid #bfdbfe; border-radius: 999px;
font-size: .75rem; font-weight: 700; color: #1d4ed8; letter-spacing: .02em;
}

.vc-info { display: flex; flex-direction: column; gap: .625rem; }
.vc-info-header {
display: flex; align-items: center; gap: .625rem; font-size: .875rem;
font-weight: 700; color: #1f2937; padding-bottom: .625rem;
border-bottom: 1px solid #f3f4f6; letter-spacing: .005em;
}
.vc-info-icon { width: 20px; height: 20px; flex-shrink: 0; }
.vc-info-body { font-size: .8125rem; line-height: 1.7; color: #374151; white-space: pre-line; }

.vc-info-amount {
font-size: 2rem; font-weight: 800;
color: var(--dp-amber-900, #78350f);
margin-bottom: .2rem; letter-spacing: -.028em;
}
.vc-info-desc { font-size: .78rem; color: #6b7280; font-style: italic; }

.vc-accent-yellow { border-left: 3px solid #fbbf24; background: linear-gradient(135deg, #fffbeb 0%, #fff 60%); }
.vc-accent-blue   { border-left: 3px solid #3b82f6; }
.vc-accent-green  { border-left: 3px solid #10b981; }
.vc-accent-purple { border-left: 3px solid #8b5cf6; }

.vc-collapse { border: 1px solid #e5e7eb; background: #f9fafb; border-radius: 10px; overflow: hidden; }
.vc-collapse summary {
list-style: none; display: flex; align-items: center; justify-content: space-between;
gap: .75rem; padding: .875rem 1rem; cursor: pointer; user-select: none;
font-size: .9375rem; font-weight: 700; color: #111827; transition: background .15s ease;
}
.vc-collapse summary:hover { background: #f0f2f6; }
.vc-collapse summary::-webkit-details-marker { display: none; }
.vc-collapse .vc-sum-left { display: inline-flex; align-items: center; gap: .625rem; min-width: 0; }
.vc-collapse .vc-sum-left span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.vc-collapse .vc-chevron { width: 18px; height: 18px; flex-shrink: 0; color: #6b7280; transition: transform .18s ease; }
.vc-collapse[open] .vc-chevron { transform: rotate(180deg); }
.vc-collapse[open] summary { background: #eff6ff; color: #1d4ed8; border-bottom: 1px solid #bfdbfe; }
.vc-collapse[open] .vc-chevron { color: #3b82f6; }
.vc-collapse .vc-collapse-body { padding: .75rem 1rem 1rem; max-height: 220px; overflow-y: auto; }
.vc-collapse .vc-collapse-body::-webkit-scrollbar { width: 4px; }
.vc-collapse .vc-collapse-body::-webkit-scrollbar-track { background: transparent; }
.vc-collapse .vc-collapse-body::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 999px; }
.vc-collapse .vc-info-body { margin-top: .25rem; }

.vc-optional { display: flex; flex-direction: column; gap: .75rem; }
.vc-opt-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: .625rem; }
.vc-opt-item {
display: flex; align-items: center; gap: .625rem; padding: .75rem;
background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 8px;
font-size: .875rem; color: #374151; font-weight: 500;
transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.vc-opt-item:hover { background: #f0fdf4; border-color: #bbf7d0; box-shadow: 0 2px 8px rgba(16,185,129,.08); }
.vc-opt-check { width: 18px; height: 18px; flex-shrink: 0; color: #10b981; }

@media (max-width: 1024px) { .vc-container { grid-template-columns: 1fr; } .vc-specs { grid-template-columns: 1fr; } }
@media (max-width: 640px) {
.vc-header { flex-direction: column; }
.vc-img { width: 100%; height: 140px; }
.vc-specs { grid-template-columns: 1fr; }
.vc-opt-grid { grid-template-columns: 1fr; }
}

.dpStep2Wrap { max-width: 1180px; margin: 0 auto; }
#r20_s2_franch, #r20_s2_srv { padding: 0 10px; }
@media (max-width: 900px) { #r20_s2_franch, #r20_s2_srv { padding: 0; } }

.dpS2 {
--s2-card:   #fff; --s2-line: #e7e9ee; --s2-line2: #f0f2f6;
--s2-text:   #111827; --s2-muted: #6b7280; --s2-muted2: #9ca3af;
--s2-soft:   #f7f8fb; --s2-on: #f3f7ff; --s2-accent: #2563eb;
--s2-danger: #ef4444; --s2-radius: 16px;
--s2-shadow: 0 1px 2px rgba(16,24,40,.05), 0 4px 16px rgba(16,24,40,.05);
}

.dpS2Panel.dpS2Panel--card,
.dpS2Panel.dpS2Panel--loading {
background: var(--s2-card); border: 1px solid var(--s2-line);
border-radius: var(--s2-radius); box-shadow: var(--s2-shadow);
padding: 12px; display: flex; flex-direction: column; height: 100%;
}

.dpS2Head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.dpS2HeadTxt { min-width: 0; }
.dpS2Title { font-size: 13.5px; font-weight: 800; color: var(--s2-text); letter-spacing: .01em; }
.dpS2Subtitle { margin-top: 2px; font-size: 11.5px; color: var(--s2-muted); line-height: 1.35; }

.dpS2Chips { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.dpS2Chip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 9px; border-radius: 999px; border: 1px solid var(--s2-line); background: #fff; color: var(--s2-muted); font-size: 11px; font-weight: 700; white-space: nowrap; }
.dpS2Chip--ghost { background: var(--s2-soft); border-color: var(--s2-line2); }

.dpS2Toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 2px 0 10px; }
.dpS2Search { position: relative; flex: 1; min-width: 220px; }
.dpS2Search svg { position: absolute; left: 11px; top: 50%; transform: translateY(-50%); width: 16px; height: 16px; color: var(--s2-muted2); pointer-events: none; }
.dpS2Search input { width: 100%; height: 34px; border-radius: 999px; border: 1px solid var(--s2-line); background: #fff; padding: 0 12px 0 36px; outline: none; color: var(--s2-text); font-size: 12.5px; }
.dpS2Search input:focus { border-color: rgba(37,99,235,.35); box-shadow: 0 0 0 3px rgba(37,99,235,.10); }
.dpS2Search--disabled input { background: var(--s2-soft); }
.dpS2Count { font-size: 11.5px; color: var(--s2-muted); white-space: nowrap; }

.dpS2TableWrap { flex: 1 1 auto; min-height: 240px; background: #fff; border: 1px solid var(--s2-line); border-radius: 14px; overflow: auto; }
.dpS2Table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 12.5px; }
.dpS2Table thead th { position: sticky; top: 0; z-index: 2; background: var(--s2-soft); border-bottom: 1px solid var(--s2-line); color: var(--s2-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; padding: 9px 10px; text-align: left; }
.dpS2Table tbody td { padding: 9px 10px; border-bottom: 1px solid var(--s2-line2); vertical-align: top; color: var(--s2-text); }

.dpS2Row { cursor: pointer; transition: background var(--trans-fast); }
.dpS2Row:hover { background: #fafbff; }
.dpS2Row.is-on { background: var(--s2-on); }
.dpS2Row.is-on td:first-child { box-shadow: inset 3px 0 0 var(--s2-accent); }
.dpS2Row.is-off { opacity: .55; }
.dpS2Row.is-off:hover { background: inherit; cursor: not-allowed; }

.dpS2Check { width: 32px; text-align: center; }
.dpS2Check input { accent-color: var(--s2-accent); transform: translateY(1px); }
.dpS2CellMain { min-width: 240px; }
.dpS2Main { font-weight: 800; font-size: 12.5px; line-height: 1.25; color: var(--s2-text); }
.dpS2Sub  { margin-top: 3px; font-size: 10.5px; color: var(--s2-muted); }
.dpS2Right { text-align: right; white-space: nowrap; }
.dpS2Center { text-align: center; white-space: nowrap; }

.dpS2Pills { display: inline-flex; gap: 6px; flex-wrap: wrap; margin-left: 8px; transform: translateY(-1px); }
.dpS2Pill { font-size: 10px; padding: 2px 6px; border-radius: 999px; border: 1px solid rgba(17,24,39,.10); background: #fff; color: var(--s2-muted); }
.dpS2Pill--danger { background: rgba(239,68,68,.10); color: var(--s2-danger); border-color: rgba(239,68,68,.25); }

.dpS2QtyCell { white-space: nowrap; }
.dpS2QtyPill { display: inline-flex; align-items: center; height: 30px; border: 1px solid var(--s2-line); border-radius: 999px; background: #fff; overflow: hidden; }
.dpS2QtyBtn { width: 32px; height: 30px; border: 0; background: transparent; cursor: pointer; font-weight: 900; font-size: 18px; line-height: 1; color: var(--s2-text); }
.dpS2QtyBtn:hover { background: #f2f4f8; }
.dpS2QtyBtn:disabled { opacity: .45; cursor: not-allowed; }
.dpS2QtyVal { width: 44px; height: 30px; border: 0; outline: none; text-align: center; font-weight: 800; font-size: 12.5px; color: var(--s2-text); background: transparent; }
.dpS2QtyVal::-webkit-outer-spin-button, .dpS2QtyVal::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.dpS2QtyVal[type=number] { -moz-appearance: textfield; }

.dpS2QtyMeta { margin-top: 4px; display: flex; justify-content: flex-end; gap: 6px; font-size: 10.5px; color: var(--s2-muted); }
.dpS2QtyMeta.is-hidden { display: none; }

.dpS2Pager { display: flex; align-items: center; gap: 8px; padding: 9px 2px 2px; color: var(--s2-muted); font-size: 11.5px; }
.dpS2PagerGrow { flex: 1; }
.dpS2PagerSep { opacity: .7; }
.dpS2PagerBtn { width: 28px; height: 28px; border-radius: 10px; border: 1px solid var(--s2-line); background: #fff; cursor: pointer; }
.dpS2PagerBtn:hover { background: #f3f4f6; }
.dpS2PagerBtn:disabled { opacity: .45; cursor: not-allowed; }

.dpS2FooterNote { margin-top: 10px; padding: 10px 12px; border-radius: 12px; background: var(--s2-soft); color: #374151; font-size: 11.5px; line-height: 1.35; border: 1px solid var(--s2-line2); }
.dpS2Empty { padding: 16px; text-align: center; color: var(--s2-muted); }
.dpS2Skeleton { padding: 10px; }
.dpS2SkRow { height: 14px; border-radius: 999px; background: linear-gradient(90deg, #f2f4f8, #e9edf5, #f2f4f8); background-size: 200% 100%; animation: dpS2Shimmer 1.2s linear infinite; margin: 10px 0; }

@keyframes dpS2Shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }

@media (max-width: 900px) {
.dpS2ColHideMd { display: none; }
.dpS2Toolbar { flex-direction: column; align-items: stretch; }
.dpS2Count { text-align: right; }
.dpS2Head { flex-direction: column; align-items: stretch; }
.dpS2Chips { justify-content: flex-start; }
}

.dp20S__btnStack { display: flex; flex-direction: column; gap: 10px; margin-top: 16px; }

.t-Cards-list,
.t-Cards .t-Cards-items {
align-items: stretch !important;
}

.t-Cards-item {
display: flex !important;
flex-direction: column !important;
height: 100% !important;
}

.t-Card {
height: 100% !important;
display: flex !important;
flex-direction: column !important;
}

.t-Card-subtext {
flex: 1 !important;
display: flex !important;
flex-direction: column !important;
padding: 0 !important;
margin: 0 !important;
}

.t-Card-subtext > article.dpVehCard {
flex: 1 !important;
min-height: 580px; 
}

.t-Cards-list,
.t-Cards .t-Cards-items {
align-items: stretch !important;
}

.t-Cards-item {
display: flex !important;
flex-direction: column !important;
height: 100% !important;
}

.t-Card {
height: 100% !important;
display: flex !important;
flex-direction: column !important;
}

.t-Card-subtext {
flex: 1 !important;
display: flex !important;
flex-direction: column !important;
padding: 0 !important;
margin: 0 !important;
}

.t-Card-subtext > article.dpVehCard {
flex: 1 !important;

}

.dpVehBody {
flex: 1 !important;
}

.dpVehActions {
margin-top: auto !important;
padding: 0 16px 16px !important;
}

.dpVehActions::before {
content: '' !important;
display: block !important;
height: 1px !important;
background: var(--dp-gray-150) !important;
margin-bottom: 14px !important;
}

.dpVehCard:hover {
border-color: var(--dp-gray-300) !important;                    
box-shadow: 0 4px 14px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.04) !important;
transform: translateY(-2px) !important;                         
}

.dpVehCard:hover .dpVehImage {
transform: scale(1.03) translateY(-2px) !important;             
filter:
drop-shadow(0 10px 18px rgba(0,0,0,.13))
drop-shadow(0 3px 6px rgba(0,0,0,.06)) !important;
}

.dpVehMedia {
background: #f4f5f7 !important;      
padding: 28px 20px 20px !important;
}

.dpVehMedia::before,
.dpVehMedia::after {
display: none !important;
}

/* ============================================================
   P20 PATCH — FIX DEFINITIVO ALTEZZE BOTTONE
   Incolla IN CODA al CSS esistente
   ============================================================ */

/* ── 1. Propaga flex lungo TUTTA la catena APEX ── */
.t-Cards-list,
.t-Cards .t-Cards-items    { display: flex !important; flex-wrap: wrap !important; align-items: stretch !important; }

.t-Cards-item              { display: flex !important; flex-direction: column !important; height: auto !important; }

.t-Card                    { display: flex !important; flex-direction: column !important; height: 100% !important; flex: 1 !important; }

/* Tutti i wrapper intermedi di APEX devono stretcharsi */
.t-Card-wrap,
.t-Card-body,
.t-Card-details            { display: flex !important; flex-direction: column !important; flex: 1 !important; }

.t-Card-subtext            {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}

/* La nostra article deve occupare tutto */
.t-Card-subtext > article.dpVehCard {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
}

/* ── 2. Altezza FISSA per la sezione foto ──
   Questo è il trucco chiave: la foto ha sempre la stessa altezza
   quindi il contenuto sotto parte sempre allo stesso livello */
.dpVehMedia {
  height: 220px !important;          /* altezza fissa uniforme */
  min-height: unset !important;      /* annulla il min-height precedente */
  flex-shrink: 0 !important;         /* non si comprime */
  background: #f4f5f7 !important;
  padding: 20px 18px !important;
}

.dpVehMedia::before,
.dpVehMedia::after { display: none !important; }

/* ── 3. Body flex che si espande ── */
.dpVehBody {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  gap: 10px !important;
  padding: 16px 16px 0 !important;   /* niente padding-bottom: ci pensa Actions */
  min-height: 0 !important;
}

/* ── 4. Actions sempre in fondo, staccato dal body ── */
.dpVehActions {
  margin-top: auto !important;
  flex-shrink: 0 !important;
  padding: 14px 16px 16px !important;
  border-top: 1px solid var(--dp-gray-150) !important;
}

.dpVehActions::before { display: none !important; }

/* ── 5. Hover ridotto ── */
.dpVehCard:hover {
  border-color: var(--dp-gray-300) !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.04) !important;
  transform: translateY(-2px) !important;
}

.dpVehCard:hover .dpVehImage {
  transform: scale(1.03) translateY(-2px) !important;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.13)) drop-shadow(0 3px 6px rgba(0,0,0,.06)) !important;
}






/* ============================================================
   P20 — FORM REFINEMENT v4
   Label più curate, input puliti, coerenti col design system
   ============================================================ */

/* ── Font base uniforme ── */
.t-Form-label,
.apex-item-text,
.apex-item-datepicker,
.apex-item-select,
select.selectlist,
.apex-item-comboselect,
.apex-item-comboselect * {
  font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

/* ══════════════════════════════════════════════
   LABEL
   ══════════════════════════════════════════════ */

/* Label — discreta, non compete col valore del campo */
.t-Form-label {
  font-size: .75rem !important;
  font-weight: 500 !important;
  color: var(--dp-gray-400) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.2 !important;
  margin-bottom: 4px !important;
  display: block !important;
}

/* Floating attiva (campo con valore) */
.t-Form-fieldContainer--floatingLabel.js-show-label .t-Form-label {
  font-size: .6875rem !important;
  font-weight: 500 !important;
  color: var(--dp-gray-400) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  margin-top: 5px;
}

/* ══════════════════════════════════════════════
   INPUT TEXT / DATE PICKER
   ══════════════════════════════════════════════ */
.apex-item-text,
.apex-item-datepicker {
  font-size: .875rem !important;
  font-weight: 400 !important;
  color: var(--dp-gray-900) !important;
  background: var(--dp-white) !important;
  border: 1px solid var(--dp-gray-200) !important;
  border-radius: 8px !important;
  transition: border-color var(--trans-fast), box-shadow var(--trans-fast) !important;
  box-shadow: none !important;
  outline: none !important;
}

.apex-item-text:hover:not(:focus),
.apex-item-datepicker:hover:not(:focus) {
  border-color: var(--dp-gray-300) !important;
}

.apex-item-text:focus,
.apex-item-datepicker:focus {
  border-color: var(--dp-blue-400) !important;
  box-shadow: 0 0 0 3px rgba(59,130,246,.10) !important;
  outline: none !important;
}

/* Bottone calendario — niente bordo */
.a-Button.a-Button--calendar {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: var(--dp-gray-400) !important;
  transition: color var(--trans-fast) !important;
}
.a-Button.a-Button--calendar:hover {
  background: transparent !important;
  color: var(--dp-blue-500) !important;
}

/* ══════════════════════════════════════════════
   SELECT NATIVA
   ══════════════════════════════════════════════ */
.apex-item-select,
select.selectlist {
  font-size: .875rem !important;
  font-weight: 400 !important;
  color: var(--dp-gray-900) !important;
  background-color: var(--dp-white) !important;
  border: 1px solid var(--dp-gray-200) !important;
  border-radius: 8px !important;
  transition: border-color var(--trans-fast), box-shadow var(--trans-fast) !important;
  box-shadow: none !important;
  outline: none !important;
}

.apex-item-select:hover:not(:focus),
select.selectlist:hover:not(:focus) {
  border-color: var(--dp-gray-300) !important;
}

.apex-item-select:focus,
select.selectlist:focus {
  border-color: var(--dp-blue-400) !important;
  box-shadow: 0 0 0 3px rgba(59,130,246,.10) !important;
  outline: none !important;
}

/* ══════════════════════════════════════════════
   COMBOSELECT (Segmento, Carburante, Cambio)
   ══════════════════════════════════════════════ */
.apex-item-comboselect {
  border: 1px solid var(--dp-gray-200) !important;
  border-radius: 8px !important;
  background: var(--dp-white) !important;
  transition: border-color var(--trans-fast), box-shadow var(--trans-fast) !important;
  box-shadow: none !important;
}

.apex-item-comboselect:hover:not(:focus-within) {
  border-color: var(--dp-gray-300) !important;
}

.apex-item-comboselect:focus-within {
  border-color: var(--dp-blue-400) !important;
  box-shadow: 0 0 0 3px rgba(59,130,246,.10) !important;
}

/* Nessun doppio bordo sull'input interno */
.apex-item-comboselect .apex-item-text,
.apex-item-comboselect .apex-item-text:focus,
.apex-item-comboselect .apex-item-text:hover {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
}

/* Chip valori selezionati */
.a-Chip:not(.a-Chip--input) {
  font-size: .72rem !important;
  font-weight: 600 !important;
  background: var(--dp-blue-50) !important;
  border-color: var(--dp-blue-200) !important;
  color: var(--dp-blue-700) !important;
  border-radius: 999px !important;
}

/* Bottone expand comboselect */
.a-Button.a-Button--comboSelect {
  color: var(--dp-gray-400) !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Icona clear chip */
.a-Chip-clear { color: var(--dp-blue-400) !important; }
.a-Chip-clear:hover { color: var(--dp-red-500) !important; }

/* ══════════════════════════════════════════════
   DROPDOWN RISULTATI
   ══════════════════════════════════════════════ */
.a-ComboSelectPopup,
.a-PopupLOV-results {
  font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  border-radius: 10px !important;
  border: 1px solid var(--dp-gray-200) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.09), 0 2px 6px rgba(0,0,0,.05) !important;
  overflow: hidden !important;
}

.a-ComboSelectItem,
.a-PopupLOV-row {
  font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: .8125rem !important;
  color: var(--dp-gray-700) !important;
}

.a-ComboSelectItem:hover,
.a-ComboSelectItem--focused,
.a-PopupLOV-row:hover {
  background: var(--dp-blue-50) !important;
  color: var(--dp-blue-700) !important;
}

/* ══════════════════════════════════════════════
   RESET SPACING APEX
   ══════════════════════════════════════════════ */
.t-Form-fieldContainer { margin-bottom: 0 !important; }
.t-Form-inputContainer { margin-top: 4px !important; }
.t-Form-itemWrapper    { margin: 0 !important; }

/* ── Error ── */
.a-Form-error {
  font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: .6875rem !important;
  color: var(--dp-red-600) !important;
}