
/* ScoutConnect V4.6 PRO */

/* Avatar parfaitement rond */
.v43-header-avatar,.avatar,.v41-avatar,.v45-profile-photo{
  aspect-ratio:1/1!important;
  border-radius:50%!important;
  overflow:hidden!important;
  flex:0 0 auto!important;
}
.v43-header-avatar img,.avatar img,.v41-avatar img,.v45-profile-photo img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;
  border-radius:50%!important;display:block!important;
}

/* Cloche centrée */
.v43-notif-button{
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;line-height:1!important;
}
.v43-notif-button>span:first-child{display:grid;place-items:center}

/* Connexion mobile */
@media(max-width:820px){
  body.sc-guest{background:#f6f7f2!important}
  .auth{
    display:block!important;min-height:100dvh!important;overflow:auto!important;
    background:#f6f7f2!important;
  }
  .auth-hero{display:none!important}
  .auth-formwrap{
    min-height:100dvh!important;width:100%!important;padding:calc(26px + env(safe-area-inset-top)) 18px calc(28px + env(safe-area-inset-bottom))!important;
    display:flex!important;align-items:flex-start!important;justify-content:center!important;
  }
  .authbox{
    width:min(100%,480px)!important;max-width:none!important;margin:0 auto!important;
    border-radius:24px!important;padding:22px 18px!important;background:#fff!important;
    box-shadow:0 14px 38px rgba(25,67,50,.10)!important;
  }
  .mobile-brand{display:block!important;text-align:center;font-size:27px;font-weight:900;color:var(--forest);margin-bottom:16px}
  .authbox h1{font-size:30px!important;line-height:1.05!important;margin:12px 0 8px!important}
  .authbox .input{min-height:52px!important;font-size:16px!important}
  .phone-auth-tabs{position:static!important;width:100%!important}
}

/* Calendrier : plus petit uniquement dans l'onglet Calendrier */
#calendar #calendarVisual{max-width:720px;margin:0 auto}
#calendar #calendarVisual .calendar-shell{padding:14px!important}
#calendar #calendarVisual .cal-day{font-size:13px!important}
#calendar #calendarVisual .calendar-shell-head h3{font-size:20px!important}
#home .v42-week-card{max-width:none!important}

/* Présences */
.v46-home-attendance-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.v46-attendance-faces{display:flex;align-items:center}
.v46-attendance-face{width:46px;height:46px;border-radius:50%;border:3px solid #fff;overflow:hidden;background:#e7efe9;margin-left:-8px;display:grid;place-items:center;font-weight:900}
.v46-attendance-face:first-child{margin-left:0}
.v46-attendance-face img{width:100%;height:100%;object-fit:cover}
.v46-presence-groups{display:grid;gap:16px}
.v46-presence-section{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.v46-presence-section>h3{margin:0;padding:12px 14px;background:#f6f8f6}
.v46-color-title{display:flex;align-items:center;gap:8px;padding:10px 14px;font-weight:900;border-top:1px solid var(--line)}
.v46-person-row{display:flex;align-items:center;gap:11px;padding:10px 14px;border-top:1px solid #eef1ef}
.v46-person-row .who{flex:1;min-width:0}
.v46-person-row .who b{display:block}
.v46-person-row .who small{color:var(--muted)}
.v46-role-priority{font-size:10px;padding:4px 7px;border-radius:999px;background:#edf4ef;color:#1d6647;font-weight:800}
.v46-status-present{color:#18764e;font-weight:900}
.v46-status-absent{color:#b6463e;font-weight:900}
.v46-status-pending{color:#7f8983;font-weight:800}
.v46-status-actions{display:flex;gap:5px}

/* Calendrier personnel jeunes */
.v46-personal-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#f1ecff;color:#674aa2;font-size:11px;font-weight:800}
.v46-youth-note{padding:11px 13px;background:#f5f2ff;border:1px solid #e4dafb;border-radius:14px;color:#604c88;margin:10px 0}

/* Matériel */
.v46-equipment-intro{margin-bottom:14px}
.v46-equipment-card{margin-bottom:12px}
.v46-equipment-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}
.v46-equipment-meta span{padding:5px 8px;border-radius:999px;background:#eef4ef;font-size:11px}
.v46-report{margin-top:10px;padding:10px;border-radius:13px;background:#f8faf8;border:1px solid #e5ebe7}
.v46-report-gallery{display:flex;gap:7px;overflow:auto;margin-top:8px}
.v46-report-gallery img{width:96px;height:72px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
.v46-upload{border:1px dashed #b8c9bf;border-radius:13px;padding:12px;background:#fafcfa}

/* Jeunes : navigation simple */
body.v46-youth #moreMenu [data-page="members"],
body.v46-youth #moreMenu [data-page="equipment"],
body.v46-youth #moreMenu [data-page="admin"]{display:none!important}
body.v46-youth #addDocBtn{display:none!important}
body.v46-youth #addEquipmentBtn{display:none!important}

/* Demandes de discussion */
.v46-request-box{margin-bottom:12px;padding:13px;border-radius:16px;background:#fff8e7;border:1px solid #efdfb3}
.v46-request-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid #f1e7cd}
.v46-request-row:first-of-type{border-top:0}
.v46-request-row .main{flex:1;padding:0!important;margin:0!important;width:auto!important}
.v46-request-badge{padding:5px 8px;border-radius:999px;background:#fff0c7;color:#8a6413;font-size:11px;font-weight:900}

/* Résumé rôle */
.v46-role-notice{padding:11px 13px;border-radius:14px;background:#eef5ef;color:#315f49;margin-bottom:12px}
