
/* QUINCA+ v47 — identité utilisateur, logo société et sauvegarde */

.top-v47{
  gap:14px;
}
.session-user-v47{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:170px;
  max-width:250px;
  padding:5px 10px 5px 6px;
  border:1px solid var(--line,#dbe4ef);
  border-radius:12px;
  background:var(--card,#fff);
  color:inherit;
  cursor:pointer;
  text-align:left;
}
.session-user-v47:hover{
  border-color:#8abdf7;
  box-shadow:0 6px 18px rgba(15,72,130,.10);
}
.session-avatar-v47,
.profile-avatar-v47,
.pro-avatar-img-v47{
  object-fit:cover;
  flex:none;
  border-radius:50%;
}
.session-avatar-v47{
  width:36px;
  height:36px;
}
.session-avatar-fallback-v47{
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#0f75e8,#39a7ff);
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.session-user-text-v47{
  min-width:0;
  display:flex;
  flex-direction:column;
  line-height:1.12;
  flex:1;
}
.session-user-text-v47 strong{
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  font-size:11px;
}
.session-user-text-v47 small{
  margin-top:3px;
  color:#718399;
  font-size:9px;
  font-weight:700;
}
.session-user-caret-v47{
  color:#789;
}
.side-brand-v47{
  padding-bottom:8px;
}
.company-mini-v47{
  display:flex;
  align-items:center;
  gap:7px;
  margin:8px 7px 0;
  padding:7px;
  border-radius:9px;
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.86);
  font-size:9px;
  font-weight:700;
  overflow:hidden;
}
.company-mini-v47 span{
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.company-logo-mini-v47{
  width:26px;
  height:26px;
  border-radius:7px;
  object-fit:contain;
  background:#fff;
  padding:2px;
  flex:none;
}
.company-logo-fallback-v47{
  display:grid;
  place-items:center;
  background:#fff;
  color:#0f6ed0;
  font-size:9px;
  font-weight:900;
}
.profile-hero-v47{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:16px;
}
.profile-avatar-v47{
  width:68px;
  height:68px;
}
.profile-hero-v47 h2{
  margin:0;
}
.profile-hero-v47 p{
  margin:4px 0 0;
  color:#6f8297;
  font-weight:700;
}
.profile-meta-v47{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin:12px 0 16px;
}
.profile-meta-v47>div{
  padding:10px;
  border:1px solid #e1e8f0;
  border-radius:10px;
  background:#f8fbff;
}
.profile-meta-v47 small,
.profile-meta-v47 strong{
  display:block;
}
.profile-meta-v47 small{
  color:#7d8fa2;
  font-size:9px;
  margin-bottom:4px;
}
.profile-meta-v47 strong{
  font-size:10px;
  overflow-wrap:anywhere;
}
.profile-photo-box-v47{
  padding-top:10px;
  border-top:1px solid #e4ebf3;
}
.profile-photo-box-v47 small,
.settings-help-v47{
  display:block;
  margin-top:5px;
  color:#7a8ca0;
  font-size:9px;
}
.settings-v47-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:14px;
  margin-bottom:14px;
}
.branding-card-v47,
.backup-card-v47{
  min-width:0;
}
.company-logo-preview-v47{
  width:74px;
  height:74px;
  object-fit:contain;
  border:1px solid #dce6ef;
  border-radius:14px;
  background:#fff;
  padding:6px;
}
.settings-actions-v47{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:12px;
  flex-wrap:wrap;
}
.backup-card-v47{
  display:flex;
  gap:14px;
  align-items:flex-start;
}
.backup-icon-v47{
  width:52px;
  height:52px;
  flex:none;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#eaf4ff;
  color:#1478e8;
  font-size:27px;
  font-weight:900;
}
.backup-card-v47 h3{
  margin-top:0;
}
.backup-warning-v47{
  margin:10px 0 12px;
  padding:9px 10px;
  border:1px solid #d9e8f5;
  border-radius:9px;
  background:#f5faff;
  color:#4e6f8e;
  font-size:9px;
  line-height:1.45;
}
.pro-avatar-img-v47{
  width:30px;
  height:30px;
}
body.dark-ui .session-user-v47{
  background:#12263b;
  border-color:#29445e;
}
body.dark-ui .profile-meta-v47>div,
body.dark-ui .backup-warning-v47{
  background:#13283d;
  border-color:#29445e;
}
body.dark-ui .company-logo-preview-v47{
  background:#fff;
}
@media(max-width:900px){
  .session-user-v47{
    min-width:135px;
    max-width:175px;
    padding-right:6px;
  }
  .session-user-text-v47 strong{
    font-size:10px;
  }
  .session-user-text-v47 small{
    font-size:8px;
  }
  .session-user-caret-v47{
    display:none;
  }
  .settings-v47-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .top-v47 .top-right{
    gap:6px;
  }
  .session-user-v47{
    min-width:128px;
    max-width:150px;
  }
  .session-avatar-v47{
    width:32px;
    height:32px;
  }
  .profile-meta-v47{
    grid-template-columns:1fr;
  }
  .backup-card-v47{
    flex-direction:column;
  }
}
