/* === SportCV public profile consolidated CSS ===
   Cleaned pass: merged the old stacked profile override layers into one final ordered block.
   CSS order is preserved to keep the visual result unchanged. */

/* === SportCV public profile CSS cleanup ===
   Consolidated final public profile overrides.
   Obsolete intermediate progress, dark-card, contact, and gap override layers were removed.
   Visual intent is unchanged. */


/* === SportCV final profile cleanup: mode clarity, safe request wording, slug behavior === */
.scv-global-create{font-weight:850;}
.hero-name{font-weight:850 !important;letter-spacing:-.045em !important;}
.hero .meta-value,.hero .meta-mini .meta-value,.hero .meta-value .flag-inline{font-weight:850 !important;}
.chip{font-weight:800 !important;}

.public-portrait-slug{cursor:default !important;pointer-events:auto !important;user-select:text !important;}
.public-portrait-slug:hover,.public-portrait-slug:focus-within{transform:none !important;box-shadow:0 6px 16px rgba(49,89,174,.07) !important;background:#F8FBFF !important;border-color:#DBE7FF !important;}

.safe-flow-title{font-weight:850 !important;}
.safe-flow-text,.safe-flow-list li{font-weight:700 !important;}

@media(max-width:640px){.hero-name{letter-spacing:-.035em !important;line-height:1.02 !important;}}

.detail-grid > div{
  display:flex;
  align-items:center;
  min-height:58px;
}
.detail-grid strong{
  margin-right:4px;
}


/* Full-width hero divider used by current public/owner profile design */
/* === Public profile: keep final full-width hero divider === */
.hero-content .hero-divider{
  width:100% !important;
  max-width:none !important;
  height:4px !important;
  border-radius:999px !important;
  background:#8fb2ff !important;
  margin:12px 0 14px !important;
}
@media(max-width:640px){
  .hero-content .hero-divider{
    width:100% !important;
    height:3px !important;
    margin:10px 0 12px !important;
  }
}

/* Centered status pills under the public slug */
/* === Profile photo stack status pills: centered under public slug, matching public profile style === */
.portrait-stack .portrait-chip-row{
  width:100% !important;
  margin:14px 0 0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
}
.portrait-stack .portrait-chip-row .chip{
  width:auto !important;
  max-width:100% !important;
  min-height:30px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  padding:6px 12px !important;
  border-radius:999px !important;
  font-size:12px !important;
  line-height:1.08 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}
.portrait-stack .portrait-chip-row .chip.parent{
  background:#F8FBFF !important;
  border:1px solid #D9E5F3 !important;
  color:#071833 !important;
}
.portrait-stack .portrait-chip-row .chip.active{
  background:#ECFDF5 !important;
  border:1px solid #BBF7D0 !important;
  color:#065F2A !important;
}
.portrait-stack .portrait-chip-row .chip .icon{
  width:14px !important;
  min-width:14px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:12px !important;
  line-height:1 !important;
}
@media(max-width:960px){
  .portrait-stack .portrait-chip-row{
    max-width:240px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}
@media(max-width:640px){
  .portrait-stack .portrait-chip-row{
    max-width:220px !important;
    margin-top:10px !important;
    gap:8px !important;
  }
  .portrait-stack .portrait-chip-row .chip{
    min-height:29px !important;
    padding:6px 11px !important;
    font-size:11.5px !important;
  }
}

/* Final progress row: 50/50 layout, 6px rhythm, white card system */
.profile-progress-row{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:6px !important;
  align-items:stretch !important;
}
.profile-progress-row.progress-only-one{
  grid-template-columns:1fr !important;
}
.profile-progress-row.is-empty{
  display:none !important;
}
.profile-progress-row > .card{
  min-width:0 !important;
  height:auto !important;
  background:#FFFFFF !important;
  background-color:#FFFFFF !important;
  background-image:none !important;
  color:#071833 !important;
  border:1px solid #D9E5F3 !important;
  border-radius:20px !important;
  box-shadow:0 10px 24px rgba(16,42,91,.06) !important;
  overflow:hidden !important;
}
.profile-progress-row > .card > .card-body,
.profile-progress-row #developmentTimelineCard .card-body,
.profile-progress-row #achievementsCard .card-body{
  height:auto !important;
  min-height:100% !important;
  padding:24px 28px !important;
  overflow:visible !important;
}
.profile-progress-row #developmentTimelineCard .card-title,
.profile-progress-row #achievementsCard .card-title{
  color:#071833 !important;
  font-family:Arial,sans-serif !important;
  font-size:21px !important;
  line-height:1.15 !important;
  letter-spacing:-.02em !important;
  text-transform:none !important;
  font-weight:900 !important;
  margin:0 0 18px !important;
}
.profile-progress-row #developmentTimelineCard .timeline,
.profile-progress-row #achievementsCard .award-list{
  display:grid !important;
  gap:6px !important;
  position:relative !important;
  overflow:visible !important;
}
.profile-progress-row #developmentTimelineCard .timeline::before{
  content:none !important;
}
.profile-progress-row #developmentTimelineCard .time-item{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) !important;
  gap:14px !important;
  align-items:start !important;
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#24344D !important;
  font-family:Arial,sans-serif !important;
  font-size:15px !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}
.profile-progress-row #developmentTimelineCard .time-year{
  min-width:46.8px !important;
  min-height:25.2px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  padding:5.4px 7.2px !important;
  border-radius:999px !important;
  background:#EEF4FF !important;
  background-image:none !important;
  border:1px solid #CFE0FF !important;
  box-shadow:none !important;
  color:#3159AE !important;
  font-family:Arial,sans-serif !important;
  font-size:13.5px !important;
  line-height:1.5 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}
.profile-progress-row #developmentTimelineCard .time-year::after{
  content:none !important;
}
.profile-progress-row #developmentTimelineCard .time-strong,
.profile-progress-row #achievementsCard .award-item,
.profile-progress-row #achievementsCard .award-item > div:last-child{
  display:block !important;
  color:#24344D !important;
  font-family:Arial,sans-serif !important;
  font-size:15px !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  margin-top:0 !important;
}
.profile-progress-row #achievementsCard .award-item{
  display:grid !important;
  grid-template-columns:22px minmax(0,1fr) !important;
  gap:12px !important;
  align-items:start !important;
  min-height:0 !important;
  padding:0 !important;
}
.profile-progress-row #achievementsCard .award-icon{
  width:22px !important;
  min-width:22px !important;
  height:22px !important;
  flex:0 0 22px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#FFFFFF !important;
  background-image:none !important;
  border:1px solid #CFE0FF !important;
  color:#3159AE !important;
  font-size:12px !important;
  line-height:1 !important;
  box-shadow:none !important;
}
.progress-view-more-btn{
  width:100% !important;
  margin-top:18px !important;
  min-height:40px !important;
  border-radius:999px !important;
  background:#EEF4FB !important;
  border:1px solid #C9DAEE !important;
  color:#244466 !important;
  font-family:inherit !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:850 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}
.progress-view-more-btn:hover{
  background:#E5EEF8 !important;
  border-color:#BFD0E4 !important;
  transform:translateY(-1px) !important;
}

/* Final right-column cards: Scout Summary, Profile Contact, Profile Details */
.right-col{
  gap:6px !important;
}
#scoutSummaryCard,
#profileContactCard,
#profileDetailsCard{
  background:#FFFFFF !important;
  background-color:#FFFFFF !important;
  background-image:none !important;
  color:#071833 !important;
  border:1px solid #D9E5F3 !important;
  border-radius:20px !important;
  box-shadow:0 10px 24px rgba(16,42,91,.06) !important;
  overflow:hidden !important;
}
#scoutSummaryCard .card-body,
#profileContactCard .card-body,
#profileDetailsCard .card-body{
  padding:24px 28px !important;
  background:#FFFFFF !important;
  background-color:#FFFFFF !important;
  background-image:none !important;
}
#scoutSummaryCard .card-title,
#profileDetailsCard .card-title,
#profileContactCard .coach-name,
#profileContactCard #coachName{
  color:#071833 !important;
  font-family:Arial,sans-serif !important;
  font-size:21px !important;
  line-height:1.15 !important;
  letter-spacing:-.02em !important;
  font-weight:900 !important;
  margin:0 0 18px !important;
  text-transform:none !important;
}
#scoutSummaryCard .summary-list,
#profileDetailsCard .detail-grid,
#profileContactCard .coach-meta{
  display:grid !important;
  gap:6px !important;
}
#scoutSummaryCard .summary-item,
#profileDetailsCard .detail-grid > div,
#profileContactCard .coach-sub,
#profileContactCard .coach-meta,
#profileContactCard .coach-meta div,
#profileContactCard #coachClub,
#profileContactCard #coachTitle,
#profileContactCard #coachStatus{
  color:#24344D !important;
  font-family:Arial,sans-serif !important;
  font-size:15px !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}
#scoutSummaryCard .summary-item{
  align-items:center !important;
  gap:14px !important;
  min-height:34px !important;
}
#scoutSummaryCard .summary-dot{
  width:28px !important;
  height:28px !important;
  flex:0 0 28px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#EEF5FF !important;
  background-color:#EEF5FF !important;
  background-image:none !important;
  border:1px solid #CFE0FF !important;
  color:#3159AE !important;
  font-size:13px !important;
  font-weight:900 !important;
  box-shadow:none !important;
}
#scoutSummaryCard .status-pill{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:18px !important;
  min-height:46px !important;
  padding:10px 18px !important;
  border-radius:999px !important;
  background:#EEF5FF !important;
  background-color:#EEF5FF !important;
  background-image:none !important;
  border:1px solid #CFE0FF !important;
  color:#3159AE !important;
  font-size:15px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  box-shadow:none !important;
}
#profileContactCard .coach-card{
  display:block !important;
  background:#FFFFFF !important;
  background-color:#FFFFFF !important;
  background-image:none !important;
}
#profileContactCard .coach-avatar{
  display:none !important;
}
#profileContactCard .coach-sub{
  display:block !important;
  margin:0 0 6px !important;
}
#profileContactCard .coach-meta,
#profileContactCard .coach-meta div{
  margin:0 !important;
}
#profileContactCard .coach-sub:empty,
#profileContactCard .coach-meta:empty{
  display:none !important;
}
#profileDetailsCard .detail-grid > div{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  min-height:0 !important;
}
#profileDetailsCard .detail-grid strong{
  color:#071833 !important;
  font-weight:900 !important;
}
#profileDetailsCard .flag-inline{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
}
#profileDetailsCard .flag-inline img{
  width:27px !important;
  height:18px !important;
  border-radius:4px !important;
}

@media(max-width:900px){
  .profile-progress-row{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:640px){
  .right-col,
  .profile-progress-row{
    gap:6px !important;
  }
  #scoutSummaryCard .card-body,
  #profileContactCard .card-body,
  #profileDetailsCard .card-body,
  .profile-progress-row #developmentTimelineCard .card-body,
  .profile-progress-row #achievementsCard .card-body{
    padding:22px 24px !important;
  }
  #scoutSummaryCard .card-title,
  #profileDetailsCard .card-title,
  #profileContactCard .coach-name,
  #profileContactCard #coachName,
  .profile-progress-row #developmentTimelineCard .card-title,
  .profile-progress-row #achievementsCard .card-title{
    font-size:20px !important;
    line-height:1.15 !important;
  }
  #scoutSummaryCard .summary-item,
  #profileDetailsCard .detail-grid > div,
  #profileContactCard .coach-sub,
  #profileContactCard .coach-meta,
  #profileContactCard .coach-meta div,
  #profileContactCard #coachClub,
  #profileContactCard #coachTitle,
  #profileContactCard #coachStatus,
  .profile-progress-row #developmentTimelineCard .time-item,
  .profile-progress-row #developmentTimelineCard .time-strong,
  .profile-progress-row #achievementsCard .award-item,
  .profile-progress-row #achievementsCard .award-item > div:last-child{
    font-size:14px !important;
    line-height:1.5 !important;
  }
  .profile-progress-row #developmentTimelineCard .time-item{
    grid-template-columns:49px minmax(0,1fr) !important;
    gap:12px !important;
  }
  .profile-progress-row #developmentTimelineCard .time-year{
    min-width:46.8px !important;
    min-height:25.2px !important;
    font-size:12.6px !important;
    line-height:1.45 !important;
    font-weight:500 !important;
  }
  .progress-view-more-btn{
    min-height:38px !important;
    font-size:13px !important;
  }
}

/* === SportCV public media viewer: view-only photos, profile photo, and video previews === */
.media-viewer-backdrop{
  position:fixed;
  inset:0;
  /* Keep the modal above the fixed global header so its controls remain clickable. */
  z-index:2147483000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(7,24,51,.52);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.media-viewer-backdrop.is-open{display:flex;}
.media-viewer{
  width:min(100%,760px);
  max-height:calc(100vh - 36px);
  overflow:hidden;
  background:#FFFFFF;
  border:1px solid #D9E5F3;
  border-radius:26px;
  box-shadow:0 30px 90px rgba(7,24,51,.28);
  display:flex;
  flex-direction:column;
}
.media-viewer-head{
  position:relative;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:15px 62px 13px;
  border-bottom:1px solid #E5EDF7;
}
.media-viewer-title{
  margin:0;
  width:100%;
  color:#071833;
  font-family:Arial,sans-serif;
  font-size:22px;
  line-height:1.15;
  letter-spacing:-.025em;
  font-weight:900;
  text-align:center;
}
.media-viewer-close{
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  width:38px;
  height:38px;
  border:1px solid #D9E5F3;
  border-radius:999px;
  background:#F8FBFF;
  color:#40516B;
  font-size:24px;
  font-weight:800;
  line-height:1;
  cursor:pointer;
}
.media-viewer-close:hover{background:#EEF4FF;color:#071833;}
.media-viewer-stage{
  padding:16px;
  overflow:auto;
  background:#F8FBFF;
}
.media-viewer-photo-shell{
  position:relative;
  display:grid;
  place-items:center;
  min-height:260px;
  border-radius:20px;
  background:#EEF4FB;
  overflow:hidden;
}
.media-viewer-photo-shell img{
  display:block;
  width:100%;
  max-height:58vh;
  object-fit:contain;
  background:#EEF4FB;
}
.media-viewer-photo-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:999px;
  background:rgba(7,24,51,.54);
  color:#fff;
  font-size:34px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 10px 28px rgba(7,24,51,.25);
}
.media-viewer-photo-nav:hover{background:rgba(7,24,51,.74);}
.media-viewer-photo-nav.prev{left:14px;}
.media-viewer-photo-nav.next{right:14px;}
.media-viewer-photo-counter{
  position:absolute;
  right:14px;
  bottom:14px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(7,24,51,.68);
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.media-viewer-photo-strip{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:10px 2px 2px;
  scrollbar-width:thin;
}
.media-viewer-photo-thumb{
  width:58px;
  min-width:58px;
  height:58px;
  padding:0;
  overflow:hidden;
  border-radius:12px;
  border:2px solid transparent;
  background:#E8F0FB;
  cursor:pointer;
}
.media-viewer-photo-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.media-viewer-photo-thumb.is-active{
  border-color:#2563EB;
  box-shadow:0 8px 18px rgba(37,99,235,.18);
}
.media-viewer-photo-meta{
  margin-top:10px;
  padding:12px 14px;
  border:1px solid #D9E5F3;
  border-radius:18px;
  background:#FFFFFF;
}
.media-viewer-photo-meta-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:22px;
}
.media-viewer-photo-uploaded{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  color:#4F5F78;
  font-size:13px;
  line-height:1.35;
  font-weight:800;
}
.media-viewer-photo-meta-label{
  color:#071833;
  font-weight:900;
}
.media-viewer-photo-comment-display{
  margin-top:8px;
  color:#2E3C53;
  font-size:14px;
  line-height:1.45;
  font-weight:650;
}
.media-viewer-photo-comment-display.is-empty{
  color:#7B88A0;
  font-style:italic;
}
.media-viewer-video-card{
  overflow:hidden;
  border-radius:20px;
  border:1px solid #D9E5F3;
  background:#FFFFFF;
  box-shadow:0 12px 28px rgba(16,42,91,.08);
}
.media-viewer-video-thumb{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  border:0;
  padding:0;
  display:block;
  overflow:hidden;
  background:#071833;
}
.media-viewer-video-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.04);
}
.media-viewer-play-badge{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:68px;
  height:68px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(7,24,51,.70);
  color:#FFFFFF;
  font-size:30px;
  font-weight:950;
  box-shadow:0 16px 34px rgba(7,24,51,.28);
}
.media-viewer-video-info{
  padding:16px;
  text-align:center;
}
.media-viewer-video-copy{
  margin:0 0 12px;
  color:#4F5F78;
  font-size:14px;
  line-height:1.5;
  font-weight:750;
}
.media-viewer-open-btn{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 18px;
  border-radius:999px;
  background:linear-gradient(135deg,#2563EB,#0EA5E9);
  color:#FFFFFF;
  text-decoration:none;
  font-size:14px;
  font-weight:900;
  box-shadow:0 12px 26px rgba(37,99,235,.18);
}
.media-viewer-native-video{
  width:100%;
  max-height:65vh;
  display:block;
  border-radius:18px;
  background:#071833;
}
.portrait.has-photo{cursor:pointer;}

@media(max-width:640px){
  .media-viewer-backdrop{padding:10px;}
  .media-viewer{border-radius:22px;max-height:calc(100vh - 20px);}
  .media-viewer-head{min-height:54px;padding:13px 54px 12px;}
  .media-viewer-title{font-size:20px;}
  .media-viewer-stage{padding:12px;}
  .media-viewer-photo-shell{min-height:220px;border-radius:17px;}
  .media-viewer-photo-nav{width:38px;height:38px;font-size:30px;}
  .media-viewer-photo-nav.prev{left:10px;}
  .media-viewer-photo-nav.next{right:10px;}
  .media-viewer-photo-thumb{width:52px;min-width:52px;height:52px;}
  .media-viewer-open-btn{width:100%;}
}

/* Restore the full blue divider under the sport / role line */
.hero-content .hero-divider{
  display:block !important;
  clear:both !important;
  width:100% !important;
  max-width:none !important;
  min-width:100% !important;
  height:4px !important;
  min-height:4px !important;
  border-radius:999px !important;
  background:#8fb2ff !important;
  opacity:1 !important;
  visibility:visible !important;
  margin:12px 0 14px !important;
}
@media(max-width:640px){
  .hero-content .hero-divider{
    height:3px !important;
    min-height:3px !important;
    margin:10px 0 12px !important;
  }
}

/* === SportCV mobile-only profile polish ===
   Keeps desktop unchanged. Tightens smartphone hero, stacked cards,
   media blocks, safe-request cards, and footer. */
@media (max-width:700px){
  .wrap{
    width:min(100%, calc(100% - 14px)) !important;
  }
  .page{
    padding:8px 0 18px !important;
  }
  .content-grid{
    gap:12px !important;
    margin-top:12px !important;
  }
  .left-col,
  .right-col{
    gap:12px !important;
  }
  .card{
    border-radius:18px !important;
    box-shadow:0 7px 18px rgba(16,42,91,.055) !important;
  }
  .card-body{
    padding:16px !important;
  }
  .card-title{
    margin-bottom:12px !important;
    font-size:19px !important;
    line-height:1.15 !important;
  }
  .card-title.upper,
  .upper{
    font-size:11px !important;
    letter-spacing:.17em !important;
  }
  .about-text{
    font-size:14px !important;
    line-height:1.65 !important;
  }

  .hero{
    border-radius:18px !important;
  }
  .hero-grid{
    grid-template-columns:1fr !important;
    gap:8px !important;
    padding:9px 11px 12px !important;
    min-height:auto !important;
    align-items:start !important;
  }
  .portrait-stack{
    width:128px !important;
    margin:0 auto 2px !important;
    justify-self:center !important;
  }
  .portrait{
    width:128px !important;
    max-width:128px !important;
    min-height:128px !important;
    border-radius:18px !important;
    box-shadow:0 10px 22px rgba(16,24,40,.12) !important;
  }
  .portrait-slug{
    margin-top:7px !important;
    min-height:24px !important;
    padding:4px 10px !important;
    font-size:11.5px !important;
  }
  .hero-content{
    padding:13px !important;
    border-radius:17px !important;
  }
  .hero-name{
    font-size:30px !important;
    line-height:1.02 !important;
    letter-spacing:-.055em !important;
  }
  .subtitle-meta{
    margin-top:7px !important;
    gap:7px !important;
  }
  .hero-role{
    font-size:15.5px !important;
    line-height:1.2 !important;
  }
  .hero-role .sport-icon-media{
    width:18px !important;
    height:18px !important;
    flex-basis:18px !important;
  }
  .hero-content .hero-divider,
  .hero-divider{
    height:3px !important;
    min-height:3px !important;
    margin:9px 0 10px !important;
  }
  .chip-row{
    gap:6px !important;
    margin-bottom:9px !important;
  }
  .chip{
    min-height:30px !important;
    padding:6px 9px !important;
    font-size:11.5px !important;
  }
  .meta-grid{
    grid-template-columns:1fr !important;
    gap:6px !important;
  }
  .meta-item,
  .meta-item.combined-age-started{
    min-height:44px !important;
    padding:8px 10px !important;
    border-radius:13px !important;
    gap:9px !important;
  }
  .meta-item.combined-age-started{
    grid-template-columns:1fr 1fr !important;
  }
  .meta-mini{
    min-height:34px !important;
    gap:8px !important;
  }
  .hero .meta-icon,
  .meta-icon{
    width:23px !important;
    min-width:23px !important;
    height:23px !important;
  }
  .hero .meta-icon svg,
  .meta-icon svg{
    width:13px !important;
    height:13px !important;
  }
  .hero .meta-label,
  .meta-label{
    font-size:9.5px !important;
    line-height:1.1 !important;
    letter-spacing:.095em !important;
    margin-bottom:2px !important;
  }
  .hero .meta-value,
  .hero .meta-mini .meta-value,
  .hero .meta-value .flag-inline,
  .meta-value{
    font-size:13.25px !important;
    line-height:1.18 !important;
  }
  .meta-value .flag-inline img{
    width:23px !important;
    height:16px !important;
  }

  .skills-grid{
    grid-template-columns:1fr !important;
    gap:0 !important;
  }
  .radar-wrap{
    border-radius:16px !important;
    padding:9px !important;
  }
  .radar-note{
    font-size:11px !important;
    margin-top:6px !important;
  }

  .photo-gallery{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
  }
  .photo-item,
  .video-thumb{
    border-radius:9px !important;
  }
  .media-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  .video-shell{
    border-radius:10px !important;
  }
  .video-meta{
    padding:6px 7px 7px !important;
    font-size:10.5px !important;
    line-height:1.25 !important;
  }
  .media-show-all-btn,
  .progress-view-more-btn{
    min-height:38px !important;
    padding:9px 12px !important;
    font-size:12px !important;
    border-radius:12px !important;
  }

  .timeline{
    gap:8px !important;
  }
  .time-item{
    grid-template-columns:58px 1fr !important;
    gap:8px !important;
    padding:9px 10px !important;
    font-size:13px !important;
    border-radius:13px !important;
  }
  .time-year{
    font-size:12.5px !important;
  }
  .award-list,
  .summary-list{
    gap:8px !important;
  }
  .award-item,
  .summary-item{
    font-size:13.5px !important;
    line-height:1.45 !important;
  }
  .quote{
    font-size:16px !important;
    line-height:1.7 !important;
  }

  #contactOpportunityCard .card-body,
  #privacyRequestRuleCard .card-body,
  #scoutSummaryCard .card-body,
  #profileContactCard .card-body,
  #profileDetailsCard .card-body{
    padding:17px 18px !important;
  }
  #contactRequestBtn.btn-primary,
  .btn-primary{
    min-height:50px !important;
    padding:14px 16px !important;
    border-radius:13px !important;
    font-size:16px !important;
  }
  #contactOpportunityCard .contact-note,
  .contact-note{
    margin-top:10px !important;
    font-size:13px !important;
    line-height:1.55 !important;
    text-align:left !important;
  }
  .safe-flow-head{
    gap:9px !important;
    margin-bottom:8px !important;
  }
  .safe-flow-icon{
    width:34px !important;
    height:34px !important;
    border-radius:12px !important;
  }
  .safe-flow-title{
    font-size:17px !important;
    line-height:1.15 !important;
  }
  .safe-flow-text{
    font-size:12.75px !important;
    line-height:1.55 !important;
  }
  .safe-flow-list{
    gap:7px !important;
    margin-top:11px !important;
  }
  .safe-flow-list li{
    gap:8px !important;
    font-size:12.5px !important;
    line-height:1.42 !important;
  }
  .safe-flow-list li:before{
    width:18px !important;
    height:18px !important;
    flex-basis:18px !important;
    font-size:11px !important;
  }

  #scoutSummaryCard .card-title,
  #profileDetailsCard .card-title,
  #profileContactCard .coach-name,
  #profileContactCard #coachName{
    font-size:19px !important;
    margin-bottom:13px !important;
  }
  #scoutSummaryCard .summary-list,
  #profileDetailsCard .detail-grid,
  #profileContactCard .coach-meta{
    gap:7px !important;
  }
  #scoutSummaryCard .summary-item,
  #profileDetailsCard .detail-grid > div,
  #profileContactCard .coach-sub,
  #profileContactCard .coach-meta,
  #profileContactCard .coach-meta div,
  #profileContactCard #coachClub,
  #profileContactCard #coachTitle,
  #profileContactCard #coachStatus{
    font-size:13.5px !important;
    line-height:1.45 !important;
  }
  #scoutSummaryCard .summary-dot,
  #profileDetailsCard .detail-grid .summary-dot{
    width:23px !important;
    height:23px !important;
    flex-basis:23px !important;
  }
  #statusPill.status-pill{
    margin-top:13px !important;
    min-height:40px !important;
    padding:10px 12px !important;
    font-size:12.5px !important;
  }


  .scv-global-footer{
    margin-top:28px !important;
  }
}

@media (max-width:390px){
  .hero-name{
    font-size:28px !important;
  }
  .media-grid{
    gap:6px !important;
  }
  .video-meta{
    font-size:10px !important;
  }
}

/* Photo names + visible photo comments on mobile */
.photo-name-badge{
  position:absolute;
  left:6px;
  right:6px;
  top:6px;
  z-index:2;
  padding:4px 7px;
  border-radius:999px;
  background:rgba(7,24,51,.62);
  color:#fff;
  font-size:10.5px;
  line-height:1.15;
  font-weight:900;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  pointer-events:none;
  box-shadow:0 6px 14px rgba(7,24,51,.18);
}
.photo-item-media{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  overflow:hidden;
}
.photo-comment-preview{
  display:none;
}
.media-viewer-photo-meta{
  display:block !important;
}
.media-viewer-photo-meta-top{
  min-height:0 !important;
  justify-content:flex-start !important;
}
.media-viewer-photo-uploaded{
  font-size:12.5px !important;
  color:#637089 !important;
}
.media-viewer-photo-comment-display{
  display:block !important;
  white-space:normal !important;
  overflow:visible !important;
  max-height:none !important;
}
@media(max-width:640px){
  .photo-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .photo-name-badge{
    left:6px;
    right:6px;
    top:6px;
    padding:4px 6px;
    font-size:9.5px;
  }
  .photo-item{
    aspect-ratio:auto !important;
    min-height:0 !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    background:#fff !important;
    border-radius:13px !important;
    overflow:hidden !important;
    text-align:left !important;
  }
  .photo-item .photo-item-media{
    height:auto !important;
    aspect-ratio:1 / 1 !important;
    border-radius:0 !important;
    flex:0 0 auto !important;
  }
  .photo-item .photo-item-media img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
  }
  .photo-item.has-comment .photo-comment-preview{
    display:block !important;
    padding:7px 8px 8px !important;
    border-top:1px solid #E5EDF7 !important;
    background:#fff !important;
    color:#43506A !important;
    font-size:11px !important;
    line-height:1.35 !important;
    font-weight:750 !important;
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  .media-viewer-stage{
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
    max-height:calc(100vh - 74px) !important;
  }
  .media-viewer-photo-shell{
    min-height:170px !important;
  }
  .media-viewer-photo-shell img{
    max-height:42vh !important;
  }
  .media-viewer-photo-meta{
    margin-top:10px !important;
    padding:11px 12px !important;
  }
  .media-viewer-photo-comment-display{
    margin-top:7px !important;
    font-size:13px !important;
    line-height:1.45 !important;
  }
}

/* Final photo viewer correction: keep the edit icon on the right and make the photo footer white like the viewer header. */
.media-viewer-photo-meta{
  background:#FFFFFF !important;
  border:1px solid #E2EAF5 !important;
}
.media-viewer-photo-meta-top{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  flex-wrap:nowrap !important;
}
.media-viewer-photo-uploaded{
  flex:1 1 auto !important;
  min-width:0 !important;
}
.media-viewer-photo-edit-btn{
  flex:0 0 34px !important;
  margin-left:auto !important;
}
.media-viewer-photo-comment-display{
  background:#FFFFFF !important;
  border:1px solid #E2EAF5 !important;
  white-space:normal !important;
  overflow:visible !important;
  max-height:none !important;
}
.media-viewer-comment-inline-actions{
  margin-left:auto !important;
  flex:0 0 auto !important;
}
.photo-item.has-comment .photo-comment-preview{
  background:#FFFFFF !important;
}
@media(max-width:640px){
  .media-viewer-photo-meta{
    background:#FFFFFF !important;
  }
  .media-viewer-photo-meta-top{
    align-items:center !important;
    justify-content:space-between !important;
    flex-wrap:nowrap !important;
  }
  .media-viewer-photo-uploaded{
    flex:1 1 auto !important;
    min-width:0 !important;
  }
  .media-viewer-photo-edit-btn{
    flex:0 0 34px !important;
    margin-left:auto !important;
  }
  .media-viewer-comment-inline-actions{
    width:auto !important;
    margin-left:auto !important;
    justify-content:flex-end !important;
    flex:0 0 auto !important;
  }
  .media-viewer-photo-comment-display{
    background:#FFFFFF !important;
    border-color:#E2EAF5 !important;
    white-space:normal !important;
    overflow:visible !important;
    max-height:none !important;
  }
}

/* Remove the border around photo comments; keep the photo footer/header white. */
.media-viewer-photo-comment-display{
  border:none !important;
  box-shadow:none !important;
  background:#FFFFFF !important;
}
.photo-item.has-comment .photo-comment-preview{
  border-top:none !important;
  box-shadow:none !important;
  background:#FFFFFF !important;
}
@media(max-width:640px){
  .media-viewer-photo-comment-display{
    border:none !important;
    box-shadow:none !important;
    background:#FFFFFF !important;
  }
  .photo-item.has-comment .photo-comment-preview{
    border-top:none !important;
    box-shadow:none !important;
    background:#FFFFFF !important;
  }
}

/* Final photo comment layout: plain white footer, no comment border, and long comments wrap to multiple lines. */
.media-viewer-photo-meta{
  min-width:0 !important;
  max-width:100% !important;
  background:#FFFFFF !important;
}
.media-viewer-photo-meta-top,
.media-viewer-photo-uploaded{
  min-width:0 !important;
}
.media-viewer-photo-comment-display{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  margin-top:10px !important;
  padding:0 !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  color:#24344D !important;
  font-size:14px !important;
  line-height:1.55 !important;
  font-weight:750 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  overflow-wrap:break-word !important;
  word-break:normal !important;
}
.photo-item,
.photo-comment-preview,
.photo-comment-preview-date,
.photo-comment-preview-text{
  min-width:0 !important;
  max-width:100% !important;
}
.photo-comment-preview-date,
.photo-comment-preview-text{
  display:block !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  overflow-wrap:break-word !important;
  word-break:normal !important;
}
.photo-comment-preview-date{
  margin-bottom:4px !important;
  color:#4F5F78 !important;
  font-size:11.5px !important;
  line-height:1.3 !important;
  font-weight:900 !important;
}
.photo-comment-preview-text{
  color:#24344D !important;
  font-size:11.5px !important;
  line-height:1.4 !important;
  font-weight:750 !important;
}
@media(max-width:640px){
  .photo-item.has-comment .photo-comment-preview{
    display:block !important;
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    padding:8px 9px 10px !important;
    border:none !important;
    border-top:none !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:#FFFFFF !important;
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
  }
  .media-viewer-photo-meta{
    padding:12px 13px !important;
  }
  .media-viewer-photo-comment-display{
    margin-top:9px !important;
    font-size:13px !important;
    line-height:1.5 !important;
  }
}

/* === SportCV final profile section spacing balance === */
.content-grid{
  gap:18px !important;
  margin-top:18px !important;
}
.left-col,
.right-col{
  gap:18px !important;
}
@media (max-width:960px){
  .content-grid{
    gap:16px !important;
    margin-top:16px !important;
  }
  .left-col,
  .right-col{
    gap:16px !important;
  }
}
@media (max-width:640px){
  .content-grid{
    gap:14px !important;
    margin-top:14px !important;
  }
  .left-col,
  .right-col{
    gap:14px !important;
  }
}

/* === SportCV current files: compact mobile profile badges === */
@media (max-width:700px){
  .portrait-stack{
    width:128px !important;
    max-width:128px !important;
  }


  .portrait-stack .portrait-chip-row{
    width:auto !important;
    max-width:188px !important;
    margin:7px auto 0 !important;
    gap:6px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .portrait-stack .portrait-chip-row .chip{
    width:auto !important;
    max-width:188px !important;
    min-height:24px !important;
    padding:4px 9px !important;
    border-radius:999px !important;
    font-size:10.5px !important;
    line-height:1 !important;
    font-weight:850 !important;
    gap:5px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-shadow:none !important;
  }

  .portrait-stack .portrait-chip-row .chip .icon{
    width:12px !important;
    min-width:12px !important;
    height:12px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:11px !important;
    line-height:1 !important;
    transform:none !important;
  }

  .portrait-stack .portrait-chip-row .chip span:last-child{
    display:inline-block !important;
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
}

/* === SportCV mobile portrait/status block: stronger left alignment === */
@media (max-width:700px){
  .hero .portrait-stack{
    transform:translateX(-54px) !important;
  }
}
@media (max-width:380px){
  .hero .portrait-stack{
    transform:translateX(-42px) !important;
  }
}

/* === SportCV mobile recommended hero layout ===
   Mobile only. Keeps desktop behavior, but makes the phone profile header
   a compact two-column profile card: photo/slug left, identity/status right,
   details full-width below. */
@media (max-width:700px){
  .hero{
    overflow:hidden !important;
    border-radius:20px !important;
    background:#FFFFFF !important;
  }

  .hero .hero-grid{
    --scv-mobile-photo:116px;
    display:grid !important;
    grid-template-columns:var(--scv-mobile-photo) minmax(0,1fr) !important;
    column-gap:10px !important;
    row-gap:7px !important;
    align-items:start !important;
    padding:12px 14px 14px !important;
    min-height:auto !important;
  }

  .hero .portrait-stack{
    grid-column:1 !important;
    grid-row:1 / span 3 !important;
    width:var(--scv-mobile-photo) !important;
    max-width:var(--scv-mobile-photo) !important;
    justify-self:start !important;
    align-self:start !important;
    margin:0 !important;
    transform:none !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
  }

  .hero .portrait{
    width:var(--scv-mobile-photo) !important;
    max-width:var(--scv-mobile-photo) !important;
    min-height:var(--scv-mobile-photo) !important;
    height:var(--scv-mobile-photo) !important;
    aspect-ratio:1 / 1 !important;
    border-radius:18px !important;
    box-shadow:0 10px 22px rgba(16,24,40,.10) !important;
  }


  .hero .hero-content{
    display:contents !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:transparent !important;
  }

  .hero .hero-name-row{
    grid-column:2 !important;
    grid-row:1 !important;
    min-width:0 !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:0 !important;
    margin:2px 0 0 !important;
  }

  .hero .hero-name{
    max-width:100% !important;
    font-size:clamp(22px,6.1vw,28px) !important;
    line-height:1.02 !important;
    letter-spacing:-.055em !important;
    overflow-wrap:break-word !important;
  }

  .hero .subtitle-meta{
    grid-column:2 !important;
    grid-row:2 !important;
    min-width:0 !important;
    margin-top:2px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:5px !important;
  }

  .hero .hero-role{
    max-width:100% !important;
    font-size:clamp(14px,4.05vw,17px) !important;
    line-height:1.18 !important;
    letter-spacing:-.03em !important;
    font-weight:900 !important;
    flex-wrap:wrap !important;
    word-break:normal !important;
  }

  .hero .hero-role .sport-icon-media{
    width:16px !important;
    height:16px !important;
    flex-basis:16px !important;
  }

  .hero .subtitle-country{
    display:inline-flex !important;
    min-height:25px !important;
    max-width:100% !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:10.75px !important;
    line-height:1 !important;
    font-weight:850 !important;
    gap:6px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .hero .subtitle-country img{
    width:20px !important;
    height:14px !important;
    border-radius:3px !important;
    flex:0 0 auto !important;
  }

  .hero .hero-content > .portrait-chip-row,
  .hero .portrait-chip-row.mobile-moved-to-hero{
    grid-column:2 !important;
    grid-row:3 !important;
    width:100% !important;
    max-width:100% !important;
    margin:1px 0 0 !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:5px !important;
  }

  .hero .hero-content > .portrait-chip-row .chip,
  .hero .portrait-chip-row.mobile-moved-to-hero .chip{
    width:auto !important;
    max-width:100% !important;
    min-height:21px !important;
    padding:4px 7px !important;
    border-radius:999px !important;
    font-size:9.5px !important;
    line-height:1 !important;
    font-weight:850 !important;
    gap:4px !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }

  .hero .hero-content > .portrait-chip-row .chip .icon,
  .hero .portrait-chip-row.mobile-moved-to-hero .chip .icon{
    width:10px !important;
    min-width:10px !important;
    height:10px !important;
    font-size:10px !important;
    line-height:1 !important;
    transform:none !important;
  }

  .hero .hero-divider{
    grid-column:1 / -1 !important;
    width:100% !important;
    height:3px !important;
    min-height:3px !important;
    margin:4px 0 3px !important;
  }

  .hero .meta-grid{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
    max-width:none !important;
    width:100% !important;
    margin-top:0 !important;
  }

  .hero .meta-item,
  .hero .meta-item.combined-age-started{
    min-height:44px !important;
    padding:8px 10px !important;
    border-radius:14px !important;
    gap:9px !important;
  }

  .hero .meta-item.combined-age-started{
    grid-template-columns:1fr 1fr !important;
  }

  .hero .meta-mini{
    gap:8px !important;
    min-height:32px !important;
  }

  .hero .meta-icon{
    width:23px !important;
    min-width:23px !important;
    height:23px !important;
  }

  .hero .meta-icon svg{
    width:13px !important;
    height:13px !important;
  }

  .hero .meta-label{
    font-size:9.25px !important;
    line-height:1.1 !important;
    letter-spacing:.095em !important;
    margin-bottom:2px !important;
  }

  .hero .meta-value,
  .hero .meta-mini .meta-value,
  .hero .meta-value .flag-inline{
    font-size:13px !important;
    line-height:1.18 !important;
  }

  .hero .meta-value .flag-inline img{
    width:23px !important;
    height:16px !important;
  }
}

@media (max-width:390px){
  .hero .hero-grid{
    --scv-mobile-photo:104px;
    column-gap:9px !important;
    padding:11px 12px 13px !important;
  }
  .hero .hero-name{
    font-size:clamp(21px,6vw,25px) !important;
  }
  .hero .hero-role{
    font-size:clamp(13px,3.9vw,15.5px) !important;
  }
  .hero .hero-content > .portrait-chip-row .chip,
  .hero .portrait-chip-row.mobile-moved-to-hero .chip{
    font-size:9px !important;
    padding:4px 6px !important;
  }
}

/* === SportCV mobile-safe Sport + Role split final override === */
.hero-role .sport-inline{
  min-width:0 !important;
  max-width:100% !important;
}
.hero-sport-line,
.hero-role-line{
  min-width:0 !important;
}
.hero-sport-line{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
}
.hero-role-separator{
  margin:0 4px !important;
  color:#6B7A93 !important;
}
.hero-role-line{
  display:inline !important;
}

/* Final compact photo/video note footer for media viewer */
.media-viewer-photo-meta,
.media-viewer-media-footer{
  margin-top:10px !important;
  min-height:auto !important;
  padding:12px 14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  border:1px solid #E2EAF5 !important;
  border-radius:16px !important;
  background:#FFFFFF !important;
  box-shadow:0 8px 18px rgba(16,42,91,.045) !important;
}
.media-viewer-media-footer-main{
  flex:1 1 auto !important;
  min-width:0 !important;
  display:grid !important;
  gap:4px !important;
}
.media-viewer-photo-uploaded,
.media-viewer-media-date{
  display:block !important;
  color:#52627A !important;
  font-size:12.5px !important;
  line-height:1.25 !important;
  font-weight:850 !important;
  letter-spacing:-.01em !important;
}
.media-viewer-photo-comment-display,
.media-viewer-media-note{
  min-height:0 !important;
  max-height:54px !important;
  width:100% !important;
  display:block !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  overflow:auto !important;
  color:#24344D !important;
  font-size:14px !important;
  line-height:1.42 !important;
  font-weight:800 !important;
}
.media-viewer-photo-comment-display.is-empty,
.media-viewer-media-note.is-empty{
  color:#7B88A0 !important;
  font-style:italic !important;
  font-weight:750 !important;
}
.media-viewer-photo-edit-btn,
.media-viewer-media-edit-btn{
  flex:0 0 36px !important;
  width:36px !important;
  min-width:36px !important;
  height:36px !important;
  padding:0 !important;
  border:1px solid #D9E5F3 !important;
  border-radius:999px !important;
  background:#F8FBFF !important;
  color:#3159AE !important;
  display:grid !important;
  place-items:center !important;
  cursor:pointer !important;
  box-shadow:none !important;
}
.media-viewer-photo-edit-btn:hover,
.media-viewer-media-edit-btn:hover{
  background:#EEF4FF !important;
  border-color:#CFE0FF !important;
  transform:translateY(-1px) !important;
}
.media-viewer-photo-edit-btn svg,
.media-viewer-media-edit-btn svg{
  width:17px !important;
  height:17px !important;
  display:block !important;
}
.media-viewer-photo-edit-label,
.media-viewer-media-edit-label{
  display:none !important;
}
.media-viewer-photo-meta.is-editing,
.media-viewer-media-footer.is-editing{
  align-items:stretch !important;
  display:grid !important;
  gap:8px !important;
  min-height:auto !important;
}
.media-viewer-comment-inline-input,
.media-viewer-media-note-input{
  width:100% !important;
  min-height:46px !important;
  height:46px !important;
  max-height:46px !important;
  resize:none !important;
  overflow:auto !important;
  border:1px solid #CFE0FF !important;
  border-radius:14px !important;
  background:#FFFFFF !important;
  color:#24344D !important;
  padding:9px 12px !important;
  font:inherit !important;
  font-size:13.5px !important;
  line-height:1.35 !important;
  font-weight:750 !important;
  outline:none !important;
}
.media-viewer-comment-inline-input:focus,
.media-viewer-media-note-input:focus{
  border-color:#0EA5E9 !important;
  box-shadow:0 0 0 4px rgba(14,165,233,.16) !important;
}
.media-viewer-comment-inline-actions,
.media-viewer-media-edit-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  margin-left:auto !important;
}
.media-viewer-comment-inline-count,
.media-viewer-media-count{
  color:#7B88A0 !important;
  font-size:11.5px !important;
  line-height:1 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}
.media-viewer-comment-inline-save,
.media-viewer-comment-inline-cancel,
.media-viewer-media-save-btn,
.media-viewer-media-cancel-btn{
  min-height:30px !important;
  border:0 !important;
  border-radius:999px !important;
  padding:7px 11px !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:950 !important;
  cursor:pointer !important;
  white-space:nowrap !important;
}
.media-viewer-comment-inline-save,
.media-viewer-media-save-btn{
  background:linear-gradient(135deg,#2563EB,#0EA5E9) !important;
  color:#FFFFFF !important;
}
.media-viewer-comment-inline-cancel,
.media-viewer-media-cancel-btn{
  background:#EEF4FB !important;
  color:#24344D !important;
}
.media-viewer-video-card{
  box-shadow:0 12px 28px rgba(16,42,91,.09) !important;
}
.media-viewer-video-info,
.media-viewer-inline-note{
  border-top:1px solid #E2EAF5 !important;
  padding:11px 14px !important;
}
@media(max-width:640px){
  .media-viewer-photo-meta,
  .media-viewer-media-footer{
    margin-top:8px !important;
    padding:11px 12px !important;
    border-radius:15px !important;
    gap:10px !important;
  }
  .media-viewer-photo-uploaded,
  .media-viewer-media-date{
    font-size:12px !important;
  }
  .media-viewer-photo-comment-display,
  .media-viewer-media-note{
    max-height:62px !important;
    font-size:13.5px !important;
    line-height:1.38 !important;
  }
  .media-viewer-photo-edit-btn,
  .media-viewer-media-edit-btn{
    width:34px !important;
    min-width:34px !important;
    height:34px !important;
    flex-basis:34px !important;
  }
  .media-viewer-comment-inline-actions,
  .media-viewer-media-edit-actions{
    width:100% !important;
    justify-content:flex-end !important;
    flex-wrap:wrap !important;
  }
}


/* Premium media note editor: full-width textarea, balanced actions, mobile-safe */
.media-viewer-photo-meta.is-editing,
.media-viewer-media-footer.is-editing{
  display:block !important;
  width:100% !important;
  padding:14px !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#FFFFFF 0%,#F8FBFF 100%) !important;
  border:1px solid #DDE8F7 !important;
  box-shadow:0 10px 22px rgba(16,42,91,.06) !important;
}
.media-viewer-note-edit-shell{
  width:100% !important;
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
}
.media-viewer-note-edit-head{
  width:100% !important;
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}
.media-viewer-note-edit-date{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:#52627A !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  letter-spacing:-.015em !important;
}
.media-viewer-note-edit-count{
  flex:0 0 auto !important;
  min-height:28px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  background:#EEF4FF !important;
  border:1px solid #D8E6FF !important;
  color:#5B6B84 !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
}
.media-viewer-note-edit-textarea,
.media-viewer-comment-inline-input.media-viewer-note-edit-textarea,
.media-viewer-media-note-input.media-viewer-note-edit-textarea{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:76px !important;
  height:76px !important;
  max-height:132px !important;
  resize:vertical !important;
  overflow:auto !important;
  display:block !important;
  padding:12px 14px !important;
  border:1px solid #CFE0FF !important;
  border-radius:16px !important;
  background:#FFFFFF !important;
  color:#17243A !important;
  font:inherit !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:800 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 0 0 0 rgba(37,99,235,0) !important;
  outline:none !important;
}
.media-viewer-note-edit-textarea:focus,
.media-viewer-comment-inline-input.media-viewer-note-edit-textarea:focus,
.media-viewer-media-note-input.media-viewer-note-edit-textarea:focus{
  border-color:#2563EB !important;
  background:#FFFFFF !important;
  box-shadow:0 0 0 4px rgba(37,99,235,.10) !important;
}
.media-viewer-note-edit-actions,
.media-viewer-comment-inline-actions.media-viewer-note-edit-actions,
.media-viewer-media-edit-actions.media-viewer-note-edit-actions{
  width:100% !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
}
.media-viewer-note-edit-cancel,
.media-viewer-note-edit-save,
.media-viewer-comment-inline-cancel.media-viewer-note-edit-cancel,
.media-viewer-comment-inline-save.media-viewer-note-edit-save,
.media-viewer-media-cancel-btn.media-viewer-note-edit-cancel,
.media-viewer-media-save-btn.media-viewer-note-edit-save{
  min-height:36px !important;
  border-radius:999px !important;
  padding:9px 16px !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:950 !important;
  cursor:pointer !important;
  border:1px solid transparent !important;
  white-space:nowrap !important;
}
.media-viewer-note-edit-cancel,
.media-viewer-comment-inline-cancel.media-viewer-note-edit-cancel,
.media-viewer-media-cancel-btn.media-viewer-note-edit-cancel{
  background:#EEF4FB !important;
  color:#24344D !important;
  border-color:#DDE8F7 !important;
}
.media-viewer-note-edit-save,
.media-viewer-comment-inline-save.media-viewer-note-edit-save,
.media-viewer-media-save-btn.media-viewer-note-edit-save{
  background:linear-gradient(135deg,#2563EB,#0EA5E9) !important;
  color:#FFFFFF !important;
  box-shadow:0 8px 16px rgba(37,99,235,.16) !important;
}
.media-viewer-note-edit-cancel:hover,
.media-viewer-note-edit-save:hover{
  transform:translateY(-1px) !important;
}
@media(max-width:640px){
  .media-viewer-photo-meta.is-editing,
  .media-viewer-media-footer.is-editing{
    padding:12px !important;
    border-radius:16px !important;
  }
  .media-viewer-note-edit-head{
    gap:8px !important;
  }
  .media-viewer-note-edit-date{
    font-size:12.5px !important;
  }
  .media-viewer-note-edit-count{
    min-height:26px !important;
    padding:6px 9px !important;
    font-size:11.5px !important;
  }
  .media-viewer-note-edit-textarea,
  .media-viewer-comment-inline-input.media-viewer-note-edit-textarea,
  .media-viewer-media-note-input.media-viewer-note-edit-textarea{
    min-height:88px !important;
    height:88px !important;
    font-size:13.5px !important;
    line-height:1.42 !important;
    padding:11px 12px !important;
  }
  .media-viewer-note-edit-actions,
  .media-viewer-comment-inline-actions.media-viewer-note-edit-actions,
  .media-viewer-media-edit-actions.media-viewer-note-edit-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  .media-viewer-note-edit-cancel,
  .media-viewer-note-edit-save,
  .media-viewer-comment-inline-cancel.media-viewer-note-edit-cancel,
  .media-viewer-comment-inline-save.media-viewer-note-edit-save,
  .media-viewer-media-cancel-btn.media-viewer-note-edit-cancel,
  .media-viewer-media-save-btn.media-viewer-note-edit-save{
    width:100% !important;
    min-height:38px !important;
  }
}

/* Cleaner video viewer: keep controls separate from the note/comment footer */
.media-viewer-video-card{
  position:relative !important;
  overflow:hidden !important;
  border-radius:18px !important;
  border:1px solid #DDE8F7 !important;
  background:#F8FBFF !important;
  box-shadow:0 12px 28px rgba(16,42,91,.09) !important;
}
.media-viewer-video-card.media-viewer-preview-card{
  background:#071833 !important;
}
.media-viewer-video-thumb.is-preview{
  border:0 !important;
  border-radius:18px !important;
  box-shadow:none !important;
}
.media-viewer-video-open-float{
  position:absolute !important;
  right:14px !important;
  bottom:14px !important;
  z-index:5 !important;
  min-height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:10px 15px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#2563EB,#0EA5E9) !important;
  color:#FFFFFF !important;
  text-decoration:none !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:950 !important;
  box-shadow:0 12px 26px rgba(37,99,235,.22) !important;
}
.media-viewer-video-open-float:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 14px 30px rgba(37,99,235,.26) !important;
}
.media-viewer-inline-note,
.media-viewer-video-info{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  border-top:1px solid #E2EAF5 !important;
  padding:10px 12px !important;
  background:#FFFFFF !important;
}
.media-viewer-inline-note p,
.media-viewer-video-copy{
  margin:0 !important;
  min-width:0 !important;
  color:#52627A !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}
.media-viewer-video-card.media-viewer-preview-card .media-viewer-video-info{
  display:none !important;
}
.media-viewer-video-card.media-viewer-link-card .media-viewer-video-info{
  min-height:74px !important;
}
.media-viewer-video-card + .media-viewer-media-footer,
.media-viewer-native-video + .media-viewer-media-footer{
  margin-top:12px !important;
}
@media(max-width:640px){
  .media-viewer-video-card{
    border-radius:16px !important;
  }
  .media-viewer-video-thumb.is-preview{
    border-radius:16px !important;
  }
  .media-viewer-video-open-float{
    right:10px !important;
    bottom:10px !important;
    min-height:34px !important;
    padding:9px 12px !important;
    font-size:12px !important;
  }
  .media-viewer-inline-note,
  .media-viewer-video-info{
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:8px !important;
    padding:10px 11px !important;
  }
  .media-viewer-inline-note .media-viewer-open-btn,
  .media-viewer-video-info .media-viewer-open-btn{
    width:100% !important;
  }
}


/* Video note edit mode: keep the editor clean by removing the label and character counter. */
#mediaViewerVideoFooter .media-viewer-note-edit-head,
#mediaViewerVideoFooter .media-viewer-note-edit-count,
#mediaViewerVideoFooter .media-viewer-media-count{
  display:none !important;
}
#mediaViewerVideoFooter.is-editing .media-viewer-note-edit-shell{
  gap:12px !important;
}
#mediaViewerVideoFooter.is-editing .media-viewer-note-edit-textarea{
  margin-top:0 !important;
}

/* Video modal only: make the regular-browser video popup about 10% smaller. */
@media (min-width:701px){
  .media-viewer:has(#mediaViewerVideoFooter),
  .media-viewer:has(.media-viewer-video-card),
  .media-viewer:has(.media-viewer-native-video),
  .media-viewer:has(.media-viewer-video){
    width:min(846px, calc(100vw - 44px)) !important;
  }
}
@media (max-width:700px){
  .media-viewer:has(#mediaViewerVideoFooter),
  .media-viewer:has(.media-viewer-video-card),
  .media-viewer:has(.media-viewer-native-video),
  .media-viewer:has(.media-viewer-video){
    width:min(100%, calc(100vw - 28px)) !important;
  }
}

@media (min-width:701px){
  .media-viewer.is-video-viewer-smaller{
    width:min(846px, calc(100vw - 44px)) !important;
  }
}
@media (max-width:700px){
  .media-viewer.is-video-viewer-smaller{
    width:min(100%, calc(100vw - 28px)) !important;
  }
}

@media (max-width:640px){
  .hero .hero-actions{
    display:grid !important;
    grid-template-columns:minmax(0,.46fr) minmax(0,.54fr) !important;
    gap:8px !important;
    align-items:stretch !important;
  }
  .hero .hero-actions .btn,
  .hero .hero-actions .btn-primary{
    width:100% !important;
    min-width:0 !important;
    min-height:46px !important;
    padding:10px 12px !important;
    white-space:nowrap !important;
  }
  .hero .hero-actions .btn-primary{
    font-size:14px !important;
  }
  .hero .hero-actions .btn-soft,
  .hero .hero-actions .btn-secondary,
  .hero .hero-actions .btn-outline{
    font-size:13.5px !important;
  }
}
@media (max-width:390px){
  .hero .hero-actions{
    gap:7px !important;
  }
  .hero .hero-actions .btn,
  .hero .hero-actions .btn-primary{
    min-height:44px !important;
    padding:9px 10px !important;
    font-size:13px !important;
  }
}

.public-profile-actions{
  display:grid;
  grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);
  align-items:stretch;
  gap:8px;
  width:100%;
  margin-top:12px;
}
.public-profile-actions > a{
  display:flex !important;
  align-items:center;
  justify-content:center;
  min-height:50px;
  flex:0 0 auto;
  width:100%;
  padding:12px 14px;
  border-radius:13px;
  font-weight:850;
  line-height:1.15;
  text-align:center;
  text-decoration:none !important;
}
.public-profile-actions > a:first-child{
  flex-basis:auto;
}
.public-profile-actions > a:last-child{
  flex-basis:auto;
  background:#fff !important;
  border:1px solid #1765d8 !important;
  color:#1765d8 !important;
}
@media (max-width:640px){
  .public-profile-actions{
    display:grid !important;
    flex-direction:row;
    grid-template-columns:minmax(0,.46fr) minmax(0,.54fr) !important;
    margin-top:10px;
  }
  .public-profile-actions > a{
    width:100%;
    flex:1 1 0;
    min-height:46px;
    padding:10px 8px;
    white-space:nowrap;
    font-size:13px;
  }
  .public-profile-actions > a:first-child{
    font-size:13px;
  }
}

/* === Public profile only cleanup: no owner toolbar/edit CSS === */
.public-portrait-slug,
.public-portrait-slug:hover,
.public-portrait-slug:focus-within{
  cursor:default !important;
  pointer-events:auto !important;
  user-select:text !important;
  transform:none !important;
  box-shadow:0 6px 16px rgba(49,89,174,.07) !important;
  background:#F8FBFF !important;
  border-color:#DBE7FF !important;
}
.public-portrait-slug .portrait-slug-display{
  color:#3159ae !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  max-width:150px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  display:inline-block !important;
}
.media-viewer-photo-edit-btn,
.media-viewer-media-edit-btn{
  display:none !important;
}
.media-viewer-story-card .media-viewer-media-note.is-empty,
.media-viewer-story-card .media-viewer-photo-comment-display.is-empty{
  display:none !important;
}
.media-viewer-story-card .media-viewer-media-footer:has(.media-viewer-media-note.is-empty):not(:has(.media-viewer-media-date)),
.media-viewer-story-card .media-viewer-photo-meta:has(.media-viewer-photo-comment-display.is-empty):not(:has(.media-viewer-media-date)){
  display:none !important;
}
.media-viewer-profile-photo-shell .media-viewer-photo-edit-btn,
.media-viewer-profile-photo-shell .media-viewer-media-edit-btn,
.media-viewer-profile-photo-shell + .media-viewer-photo-meta,
.media-viewer-profile-photo-shell + .media-viewer-media-footer{
  display:none !important;
}
.portrait.has-photo:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 34px rgba(16,24,40,.16);
}
