.car-gallery-upload { display:inline-block; padding:10px 16px; border-radius:8px; background:#057718; color:#fff; font-weight:800; }
.car-gallery-upload:hover { background:#045c12; }
.car-gallery-section { margin:24px 0; }
.car-driver-list { list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.car-driver { display:grid; grid-template-columns:190px minmax(0,1fr); align-items:center; gap:18px; padding:12px 16px; }
.car-driver h3 { margin:0; font-size:.95rem; overflow-wrap:anywhere; }
.car-image-grid { display:flex; flex-wrap:wrap; gap:10px; min-width:0; }
.car-image-card { flex:0 1 180px; width:180px; max-width:100%; min-width:0; box-sizing:border-box; margin:0; padding:8px; background:#eef7ef; border:1px solid #d5e6d9; border-radius:8px; text-align:center; }
.car-image-card img { display:block; width:100%; height:100px; object-fit:contain; }
.car-image-card figcaption { margin-top:6px; font-size:.75rem; font-weight:800; }
.car-no-avatar { margin:0; color:#4b6553; font-size:.85rem; }
.car-image-unavailable { min-height:100px; display:grid; place-items:center; font-size:.8rem; }
@media(max-width:600px) { .car-driver { grid-template-columns:105px minmax(0,1fr); gap:10px; padding:10px; } .car-driver h3 { font-size:.8rem; } .car-image-card { flex-basis:145px; width:145px; } .car-image-card img { height:80px; } }

.car-gallery-search { margin:24px 0 16px; }
.car-gallery-search label { display:block; font-weight:800; margin-bottom:8px; }
.car-gallery-search input { width:100%; max-width:480px; box-sizing:border-box; padding:12px; border:1px solid #aebeb2; border-radius:8px; font:inherit; }
.car-gallery-search p { margin:8px 0; color:#4b6553; }
.car-image-card .car-avatar-zoom { display:block; width:100%; padding:0; border:0; background:transparent; border-radius:6px; cursor:zoom-in; }
.car-image-card .car-avatar-zoom:hover { background:transparent; }
.car-avatar-zoom:focus-visible { outline:3px solid #067b14; outline-offset:3px; }
.car-avatar-preview { position:fixed; z-index:10000; width:min(460px,calc(100vw - 24px)); max-height:calc(100vh - 24px); box-sizing:border-box; padding:16px; border:1px solid #8bae94; border-radius:14px; background:#f5faf5; box-shadow:0 12px 42px #082c3c40; pointer-events:none; }
.car-avatar-preview[hidden] { display:none; }
.car-avatar-preview img { display:block; width:100%; height:min(310px,calc(100vh - 110px)); object-fit:contain; }
.car-avatar-preview p { margin:10px 0 0; font-size:.9rem; font-weight:700; text-align:center; color:#173b23; }
