
/* VandUtilaje.ro v0.6.3 */

/* version */
.version-bar{
    position:relative;
    z-index:20;
    background:#111;
    color:#fff;
    font-size:12px;
}
.version-inner{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding-top:6px;
    padding-bottom:6px;
}

/* dashboard counters */
.stat-cards{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
    margin:0 0 28px;
}
.stat-cards > div,
.stat-cards > a{
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:112px;
    padding:20px 22px;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:14px;
    text-decoration:none;
    color:inherit;
    box-shadow:0 2px 8px rgba(0,0,0,.03);
}
.stat-cards strong{
    display:block;
    font-size:32px;
    line-height:1;
    font-weight:800;
    margin-bottom:10px;
    color:#111827;
}
.stat-cards span{
    display:block;
    font-size:12px;
    line-height:1.2;
    text-transform:uppercase;
    letter-spacing:.06em;
    font-weight:800;
    color:#6b7280;
}

/* mobile photo uploader */
.photo-upload-box{
    display:flex;
    flex-direction:column;
    gap:12px;
    padding:16px;
    border:1px solid #e5e7eb;
    border-radius:14px;
    background:#fafafa;
}
.photo-upload-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}
.photo-upload-actions label{
    cursor:pointer;
}
.photo-upload-actions input[type=file]{
    position:absolute;
    width:1px;
    height:1px;
    opacity:0;
    pointer-events:none;
}
.image-preview-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(120px,1fr));
    gap:10px;
}
.image-preview-item{
    position:relative;
    aspect-ratio:4/3;
    overflow:hidden;
    border-radius:10px;
    background:#e5e7eb;
}
.image-preview-item img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.image-preview-remove{
    position:absolute;
    top:6px;
    right:6px;
    width:30px;
    height:30px;
    border:0;
    border-radius:50%;
    background:rgba(17,24,39,.82);
    color:#fff;
    font-size:20px;
    line-height:30px;
    cursor:pointer;
}
.photo-upload-meta{
    display:flex;
    justify-content:space-between;
    gap:10px;
    flex-wrap:wrap;
    color:#6b7280;
    font-size:12px;
}

/* existing image fixes */
.listing-card,.listing-image,.detail-gallery,.thumb-grid,.existing-images,.my-listing,.my-info,.detail-grid{
    min-width:0;
}
.listing-image{
    display:block;
    width:100%;
    aspect-ratio:4/3;
    overflow:hidden;
    border-radius:14px;
    background:#f3f4f6;
}
.listing-image img{
    display:block;
    width:100%;
    height:100%;
    max-width:100%;
    object-fit:cover;
}
.detail-gallery{
    width:100%;
    max-width:100%;
    overflow:hidden;
    border-radius:16px;
    background:#f3f4f6;
}
.detail-gallery img{
    display:block;
    width:100%;
    max-width:100%;
    height:auto;
    max-height:680px;
    object-fit:contain;
}
.thumb-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
}
.thumb-grid img{
    display:block;
    width:100%;
    max-width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:10px;
}
.existing-images{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(160px,1fr));
    gap:12px;
    margin-bottom:20px;
}
.existing-images > div{
    min-width:0;
    overflow:hidden;
}
.existing-images img{
    display:block;
    width:100%;
    max-width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:10px;
}
.my-listing{
    display:grid;
    grid-template-columns:120px minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
}
.my-listing > img,.my-thumb{
    width:120px;
    height:90px;
    max-width:100%;
    object-fit:cover;
    border-radius:10px;
    overflow:hidden;
}
.listing-card img,.detail-page img{
    max-width:100%;
}

/* form */
.field-help{
    color:#6b7280;
    font-size:11px;
}
.form-error{
    padding:12px 14px;
    border:1px solid #d33;
    border-radius:10px;
    background:#fff7f7;
}
.form-error ul{
    margin:6px 0 0;
    padding-left:20px;
}

@media(max-width:900px){
    .stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
    .thumb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .my-listing{grid-template-columns:90px minmax(0,1fr)}
    .my-listing > img,.my-thumb{width:90px;height:68px}
    .my-actions{grid-column:1/-1}
    .version-inner{padding-left:12px;padding-right:12px}
    .photo-upload-actions .btn{
        flex:1 1 160px;
        text-align:center;
    }
}
