.vehiclePhotoCard{grid-column:1/-1;min-width:0}.vp-tools{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.vp-tools .btn{margin:0}.vp-figure{position:relative;margin:0;border-radius:10px;overflow:hidden;background:#e2e8f0}.vp-figure img{display:block;width:100%;height:auto;max-height:65vh;object-fit:contain}.vp-figure figcaption{position:absolute;bottom:0;left:0;right:0;padding:12px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.85));white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;font-weight:700;line-height:1.5;max-height:55%;overflow:auto;text-shadow:0 1px 3px #000}.vp-figure figcaption[hidden]{display:none}.vp-text-label{display:block;margin-top:10px}.vp-text-label textarea{width:100%;box-sizing:border-box;font-size:16px}.vp-empty,.vp-status{font-size:12px;color:#64748b;margin:8px 0}.vehiclePhotoCard small{font-size:11px;color:#64748b}.vp-dialog{padding:14px;border:0;border-radius:16px;width:min(760px,calc(100vw - 32px));max-height:90vh;box-sizing:border-box}.vp-dialog::backdrop{background:#0009}.vp-dialog .vp-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;padding:0;background:none;color:#0f172a;border-radius:0;box-shadow:none}.vp-dialog .vp-heading button{padding:9px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;white-space:nowrap}.vp-open{width:100%;display:flex;justify-content:space-between;align-items:center;margin-top:6px;padding:8px 12px;border:1px solid #dbe3ee;border-radius:10px;background:#f8fafc;color:#334155;cursor:pointer}.vp-tools button:disabled{opacity:.5}@media(max-width:760px){.vp-preview{display:none}.vp-figure figcaption{font-size:14px}}

/* Compact list action and a single mobile editor entry. */
.vp-open{display:inline-flex;width:auto;min-height:26px;align-items:center;justify-content:center;margin:0;padding:3px 9px;border-radius:999px;border:1px solid #cbd5e1;background:#f8fafc;color:#334155;font:inherit;font-size:11px;font-weight:800;line-height:1.4;white-space:nowrap;vertical-align:middle}
.mOptionLine .vp-open{float:right;margin-left:6px}
.vp-open:focus-visible,.vp-manage:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.vp-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.vp-manage{display:none;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;padding:7px 12px;font-size:12px;font-weight:800;white-space:nowrap}
.vp-edit-dialog .vp-preview{display:block}.vp-edit-dialog .vp-figure img{max-height:38vh}.vp-edit-dialog .vp-tools{margin-top:0}.vp-edit-dialog .btn{padding:8px 10px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:13px}.vp-edit-dialog small{display:block;color:#64748b;font-size:11px;margin-top:10px}.vp-edit-dialog textarea{min-height:60px;padding:8px}
@media(max-width:760px){
 #inputTab #vehiclePhotoEditor.vehiclePhotoCard{grid-column:1/-1!important;width:100%!important;min-height:0!important;padding:9px 12px!important}
 #vehiclePhotoEditor .vp-editor-heading label{margin:0!important;min-height:0!important}
 .vp-manage{display:inline-flex}.vehiclePhotoCard>.vp-editor-controls{display:none}
}

/* Keep the frame snug around the image, including portrait photos. */
.vp-figure{width:fit-content;max-width:100%;margin:0 auto;background:transparent}
.vp-figure img{width:auto;max-width:100%;height:auto}
.vp-open,.vp-manage{-webkit-tap-highlight-color:transparent}
.vp-open:focus:not(:focus-visible),.vp-manage:focus:not(:focus-visible){outline:none;box-shadow:none}
.vp-open:focus-visible,.vp-manage:focus-visible{outline-offset:-2px}

/* Photo triggers retain the existing vehicle text and card layout. */
[data-photo-car]:not(.vp-open){position:relative;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
[data-photo-car]:not(.vp-open):focus-visible{outline:2px solid #2563eb;outline-offset:1px;border-radius:2px}
[data-photo-car]:not(.vp-open):focus:not(:focus-visible){outline:none;box-shadow:none}

/* A native file input receives the tap directly in the mobile photo dialog. */
.vp-tools .vp-pick{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;margin:0;cursor:pointer}
.vp-pick input[type=file]{position:absolute;inset:0;width:100%;height:100%;padding:0;margin:0;border:0;opacity:0;cursor:pointer}
.vp-pick[aria-disabled="true"]{opacity:.5;cursor:default}
.vp-pick:focus-within{outline:2px solid #2563eb;outline-offset:2px}

/* Keep photo hit areas on the text, leaving card whitespace to expand details. */
.mLineTopCompact b[data-photo-car]{justify-self:start;min-width:0;max-width:100%}
.mSubCompact .mCarNo[data-photo-car]{flex:0 1 auto;min-width:0}
.mSubCompact .mCarNo[data-photo-car]+.mDays{margin-left:auto}
