/* BeautyGrafik V29B — zdjęcie referencyjne */
.bg-ref-upload-box{
    margin:16px 0 14px;
    padding:16px;
    border:1px solid rgba(214,167,122,.32);
    border-radius:22px;
    background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,239,232,.9));
    box-shadow:0 12px 30px rgba(82,58,45,.08);
}
.bg-ref-upload-head{display:flex;gap:12px;align-items:flex-start}
.bg-ref-icon{
    width:38px;height:38px;border-radius:14px;display:flex;align-items:center;justify-content:center;
    background:#f5e8df;color:#9b6d4b;font-size:19px;flex:0 0 auto;
}
.bg-ref-upload-head strong{display:block;font-size:15px;color:#352924;margin-bottom:3px}
.bg-ref-upload-head p{margin:0;color:#86736b;font-size:12px;line-height:1.45}
.bg-ref-file-label{margin-top:12px!important;display:flex!important;align-items:center;justify-content:center;width:100%;min-height:46px;border-radius:16px;border:1px dashed rgba(189,135,91,.48);background:#fffaf6;color:#7a5740;font-weight:900;cursor:pointer;text-align:center}
.bg-ref-file-label input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.bg-ref-file-label span{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px}
.bg-ref-file-label span:before{content:'+';font-weight:950;font-size:18px;line-height:1}
.bg-ref-file-name{margin-top:9px;color:#5f4636;font-size:12px;font-weight:800;min-height:16px}
.bg-ref-hint{margin-top:5px;color:#9a877c;font-size:11px;line-height:1.35}
.bg-ref-upload-box.has-file{border-color:rgba(121,155,125,.45);background:linear-gradient(135deg,#fff,#f0f8f1)}
.bg-ref-upload-box.is-uploading{opacity:.74;pointer-events:none}
.bg-ref-upload-box.is-uploading .bg-ref-file-label span:before{content:'↻'}
.bg-ref-upload-error{margin-top:10px;padding:10px 12px;border-radius:14px;background:#fff0f0;color:#9b4444;font-size:12px;font-weight:800;display:none}
.bg-ref-upload-box.has-error .bg-ref-upload-error{display:block}
.bg-ref-upload-ok{margin-top:10px;padding:10px 12px;border-radius:14px;background:#edf7ef;color:#416945;font-size:12px;font-weight:800;display:none}
.bg-ref-upload-box.is-ready .bg-ref-upload-ok{display:block}
.client-v27-reschedule-mode .bg-ref-upload-box[data-bg-ref-main]{display:none!important}

.bg-ref-card-actions{
    margin-top:12px;
    padding:12px;
    border-radius:18px;
    border:1px solid rgba(214,167,122,.26);
    background:rgba(255,250,246,.88);
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
}
.bg-ref-view-link,
.bg-ref-card-actions button,
.bg-ref-mini-file span{
    min-height:38px;
    border-radius:13px;
    padding:9px 12px;
    font-size:12px;
    font-weight:900;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.bg-ref-view-link{background:linear-gradient(135deg,#d6a77a,#bd875b);color:#fff!important;box-shadow:0 10px 18px rgba(189,135,91,.18)}
.bg-ref-inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0!important}
.bg-ref-mini-file{margin:0!important;cursor:pointer;display:inline-flex!important;width:auto!important}
.bg-ref-mini-file input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.bg-ref-mini-file span{border:1px dashed rgba(189,135,91,.42);background:#fff;color:#7a5740}
.bg-ref-card-actions button{border:0;background:#f7eee9;color:#352924;cursor:pointer}
.bg-ref-card-actions .bg-ref-remove-form button{background:#fff0f0;color:#9b4444;border:1px solid #efcccc}
.bg-ref-empty-note{font-size:12px;color:#9a877c;font-weight:700}

.booking-sheet .bg-ref-card-actions,
.client-v15-modal-panel .bg-ref-card-actions,
.tap-card .bg-ref-card-actions{margin-top:14px}

@media(max-width:850px){
    .bg-ref-upload-box{margin:14px 0;padding:14px;border-radius:20px}
    .bg-ref-card-actions{display:grid;grid-template-columns:1fr;align-items:stretch}
    .bg-ref-inline-form{display:grid;grid-template-columns:1fr;align-items:stretch}
    .bg-ref-view-link,.bg-ref-card-actions button,.bg-ref-mini-file span{width:100%}
}

/* BeautyGrafik V29E — podgląd zdjęcia referencyjnego w panelu salonu */
.booking-reference-pill,
.bg-ref-owner-badge{
    display:inline-flex;
    align-items:center;
    gap:6px;
    width:max-content;
    max-width:100%;
    margin-top:10px;
    padding:8px 10px;
    border-radius:999px;
    background:#fff7ed;
    border:1px solid #fed7aa;
    color:#9a3412;
    font-size:12px;
    font-weight:950;
    line-height:1;
}
.booking-reference-sheet,
.bg-ref-owner-sheet-box{
    background:#fff7ed!important;
    border-color:#fed7aa!important;
}
.booking-reference-preview{
    display:flex;
    gap:14px;
    align-items:center;
    margin-top:10px;
    color:#0f172a;
    text-decoration:none;
}
.booking-reference-preview img{
    width:96px;
    height:96px;
    border-radius:18px;
    object-fit:cover;
    border:1px solid rgba(15,23,42,.12);
    background:#fff;
    box-shadow:0 12px 24px rgba(15,23,42,.08);
    flex:0 0 auto;
}
.booking-reference-preview strong{
    display:block;
    font-size:15px;
    line-height:1.25;
    color:#0f172a;
}
.booking-reference-preview small,
.booking-reference-caption small{
    display:block;
    margin-top:4px;
    color:#64748b;
    font-size:12px;
    font-weight:800;
    line-height:1.35;
    word-break:break-word;
}
.booking-reference-caption{
    min-width:0;
}
@media (max-width: 640px){
    .booking-reference-preview{align-items:flex-start;}
    .booking-reference-preview img{width:84px;height:84px;border-radius:16px;}
}

/* BeautyGrafik V29F compact reference preview START */
.booking-reference-pill,
.bg-ref-owner-badge{margin-top:8px;padding:6px 9px;font-size:11px;gap:5px;}
.booking-reference-preview{gap:10px;margin-top:8px;}
.booking-reference-preview img{width:74px;height:74px;border-radius:14px;box-shadow:0 8px 18px rgba(15,23,42,.06);}
.booking-reference-preview strong{font-size:13px;line-height:1.2;}
.booking-reference-preview small,
.booking-reference-caption small{margin-top:3px;font-size:11px;line-height:1.3;}
@media (max-width: 640px){
    .booking-reference-preview img{width:68px;height:68px;border-radius:12px;}
}
/* BeautyGrafik V29F compact reference preview END */
