/* LE DELTA — Photos V172 : dense, moderne, noir / bleu / blanc */
body.photos-public-page{
  --photo-blue:#2f64ff;
  --photo-blue-2:#163bbd;
  --photo-ink:#02050a;
  --photo-panel:#07101a;
  --photo-panel-2:#0a1522;
  --photo-line:rgba(121,157,214,.18);
  --photo-white:#f6f8fb;
  --photo-muted:rgba(231,236,244,.64);
  background:#02050a!important;
  color:var(--photo-white)!important;
}
body.photos-public-page .container{width:min(1220px,calc(100% - 36px))!important}
body.photos-public-page .topbar{
  min-height:76px!important;
  background:rgba(2,7,12,.92)!important;
  border-bottom:1px solid rgba(110,145,190,.13)!important;
  backdrop-filter:blur(16px)!important;
}
body.photos-public-page .topbar .brand img{
  display:block!important;
  width:auto!important;
  height:46px!important;
  max-width:150px!important;
  object-fit:contain!important;
}
body.photos-public-page .topbar .links .cta{
  background:linear-gradient(145deg,#2d5fff,#4878ff)!important;
  border-color:rgba(113,151,255,.78)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(36,83,255,.22)!important;
}

/* Hero compact : plus de grand vide violet */
body.photos-public-page .album-page-hero{
  min-height:0!important;
  padding:56px 0 48px!important;
  background:
    radial-gradient(560px circle at 86% 30%,rgba(47,100,255,.20),transparent 64%),
    linear-gradient(180deg,#07111e 0%,#03070d 100%)!important;
  border-bottom:1px solid rgba(119,154,202,.13)!important;
  overflow:hidden!important;
}
body.photos-public-page .album-page-hero-inner{
  min-height:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 320px!important;
  align-items:center!important;
  gap:42px!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
body.photos-public-page .album-page-hero .eyebrow{
  margin-bottom:14px!important;
  color:#8eb2ff!important;
  letter-spacing:.18em!important;
}
body.photos-public-page .album-page-hero .eyebrow .dot{
  background:#3c74ff!important;
  box-shadow:0 0 18px rgba(60,116,255,.48)!important;
}
body.photos-public-page .album-page-hero h1{
  margin:0!important;
  max-width:810px!important;
  font-size:clamp(54px,6vw,88px)!important;
  line-height:.88!important;
  letter-spacing:-.065em!important;
  color:#fff!important;
}
body.photos-public-page .album-page-hero h1 span{
  color:#8baaff!important;
}
body.photos-public-page .album-page-hero .page-intro{
  max-width:660px!important;
  margin:20px 0 0!important;
  color:var(--photo-muted)!important;
  font-size:16px!important;
  line-height:1.55!important;
}
body.photos-public-page .album-hero-mark{
  position:relative!important;
  right:auto!important;
  top:auto!important;
  display:grid!important;
  place-items:center!important;
  align-self:center!important;
  justify-self:end!important;
  width:250px!important;
  height:250px!important;
  color:rgba(73,117,255,.15)!important;
  font-size:240px!important;
  line-height:1!important;
  filter:drop-shadow(0 0 34px rgba(47,100,255,.10))!important;
}

/* Browser compact */
body.photos-public-page .album-browser{
  padding:44px 0 52px!important;
}
body.photos-public-page .album-browser-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(260px,390px)!important;
  gap:30px!important;
  align-items:end!important;
  margin:0 0 22px!important;
}
body.photos-public-page .album-browser-head h2{
  margin:6px 0 0!important;
  max-width:690px!important;
  font-size:clamp(36px,4.2vw,62px)!important;
  line-height:.96!important;
  letter-spacing:-.052em!important;
  color:#fff!important;
}
body.photos-public-page .album-browser-head p{
  margin:0!important;
  color:var(--photo-muted)!important;
  font-size:15px!important;
  line-height:1.55!important;
}
body.photos-public-page .delta-kicker{color:#7fa4ff!important}

body.photos-public-page .delta-photo-date-card{
  display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(270px,.7fr)!important;
  align-items:stretch!important;
  gap:18px!important;
  padding:18px!important;
  border:1px solid var(--photo-line)!important;
  border-radius:24px!important;
  background:linear-gradient(145deg,#08121e,#050a11)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.26),inset 0 1px rgba(255,255,255,.025)!important;
}
body.photos-public-page .album-date-field>label{
  display:block!important;
  margin:0 0 10px!important;
  color:rgba(236,240,246,.76)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body.photos-public-page .delta-photo-calendar{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:14px 16px 12px!important;
  border:1px solid rgba(92,128,180,.18)!important;
  border-radius:18px!important;
  background:#04070c!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
}
body.photos-public-page .delta-photo-calendar-head{margin-bottom:9px!important}
body.photos-public-page .delta-photo-calendar-head strong{font-size:16px!important}
body.photos-public-page .delta-photo-calendar-head button{
  width:38px!important;height:38px!important;border-radius:11px!important;
  background:#09111c!important;border-color:rgba(122,153,196,.18)!important;
}
body.photos-public-page .delta-photo-calendar-weekdays,
body.photos-public-page .delta-photo-calendar-grid{gap:4px!important}
body.photos-public-page .delta-photo-calendar-day{
  height:42px!important;
  border-radius:10px!important;
  font-size:13px!important;
}
body.photos-public-page .delta-photo-calendar-day.has-event{
  background:rgba(47,100,255,.07)!important;
}
body.photos-public-page .delta-photo-calendar-day.is-selected{
  background:linear-gradient(145deg,#18366f,#2457e6)!important;
  border-color:rgba(119,155,255,.62)!important;
  box-shadow:0 7px 18px rgba(30,74,207,.22)!important;
}
body.photos-public-page .delta-photo-calendar-legend{margin-top:9px!important;padding-top:8px!important}

body.photos-public-page .album-search-actions{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  align-self:stretch!important;
}
body.photos-public-page .album-selection-card{
  flex:1!important;
  min-height:0!important;
  padding:22px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  border:1px solid rgba(106,142,196,.18)!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(47,100,255,.18),transparent 52%),
    #07101a!important;
}
body.photos-public-page .album-selection-card>span{
  color:#7ea4ff!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.17em!important;
}
body.photos-public-page .album-selection-card>strong{
  display:block!important;
  margin:8px 0 8px!important;
  color:#fff!important;
  font-size:clamp(22px,2.1vw,30px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
body.photos-public-page .delta-photo-date-status{
  display:block!important;
  min-height:0!important;
  margin:0!important;
  color:rgba(228,235,246,.62)!important;
  font-size:12px!important;
  line-height:1.5!important;
}
body.photos-public-page .album-search-actions :is(#album-search,#album-reset){
  width:100%!important;
  min-height:52px!important;
  border-radius:14px!important;
  justify-content:space-between!important;
  padding:0 17px!important;
  font-size:12px!important;
  font-weight:900!important;
}
body.photos-public-page #album-search{
  background:linear-gradient(145deg,#2859ed,#3f72ff)!important;
  border-color:rgba(122,156,255,.72)!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(36,83,255,.18)!important;
}
body.photos-public-page #album-reset{
  background:#09111b!important;
  border-color:rgba(128,155,194,.18)!important;
  color:#f1f4f8!important;
}

/* Albums : utiliser la place au lieu d'un immense vide */
body.photos-public-page #albums-public.delta-albums-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  margin-top:22px!important;
}
body.photos-public-page .delta-album-card,
body.photos-public-page .album-placeholder-card{
  min-width:0!important;
  border:1px solid rgba(110,143,190,.17)!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#07101a!important;
  box-shadow:none!important;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
body.photos-public-page .delta-album-card:hover,
body.photos-public-page .album-placeholder-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(75,119,255,.50)!important;
  box-shadow:0 22px 48px rgba(0,0,0,.24)!important;
}
body.photos-public-page .delta-album-cover,
body.photos-public-page .album-placeholder-visual{
  position:relative!important;
  aspect-ratio:4/5!important;
  overflow:hidden!important;
  background:#07101a!important;
}
body.photos-public-page .delta-album-cover>img,
body.photos-public-page .album-placeholder-visual>img{
  width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;
}
body.photos-public-page .album-placeholder-visual::after{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(2,5,10,.92) 100%);
}
body.photos-public-page .album-placeholder-copy{
  position:absolute!important;z-index:2!important;left:16px!important;right:16px!important;bottom:15px!important;
}
body.photos-public-page .album-placeholder-copy span{
  color:#7fa4ff!important;font-size:9px!important;font-weight:900!important;letter-spacing:.14em!important;
}
body.photos-public-page .album-placeholder-copy strong{
  display:block!important;margin-top:5px!important;color:#fff!important;font-size:19px!important;line-height:1.1!important;
}
body.photos-public-page .album-placeholder-copy small{
  display:block!important;margin-top:7px!important;color:rgba(231,236,244,.62)!important;font-size:11px!important;
}
body.photos-public-page .album-empty-compact{
  grid-column:1/-1!important;
  min-height:0!important;
  padding:18px!important;
  border:1px solid rgba(110,143,190,.17)!important;
  border-radius:18px!important;
  background:#07101a!important;
}
body.photos-public-page .album-empty-compact img{width:52px!important;height:52px!important;object-fit:contain!important}

/* Footer remonte et logo réparé */
body.photos-public-page .delta-footer{
  margin-top:0!important;
  padding:36px 0!important;
  background:#06101a!important;
  border-top:1px solid rgba(110,143,190,.13)!important;
}
body.photos-public-page .delta-footer .footer-brand img{
  display:block!important;height:52px!important;width:auto!important;max-width:150px!important;object-fit:contain!important;
}
body.photos-public-page .delta-footer-grid{align-items:center!important}
body.photos-public-page .delta-footer p{margin-top:6px!important}

@media(max-width:980px){
  body.photos-public-page .album-page-hero-inner{grid-template-columns:1fr 180px!important;gap:20px!important}
  body.photos-public-page .album-hero-mark{width:170px!important;height:170px!important;font-size:165px!important}
  body.photos-public-page .delta-photo-date-card{grid-template-columns:1fr 260px!important}
  body.photos-public-page #albums-public.delta-albums-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  body.photos-public-page .container{width:calc(100% - 28px)!important}
  body.photos-public-page .album-page-hero{padding:34px 0 30px!important}
  body.photos-public-page .album-page-hero-inner{display:block!important}
  body.photos-public-page .album-hero-mark{display:none!important}
  body.photos-public-page .album-page-hero h1{font-size:clamp(48px,14vw,66px)!important}
  body.photos-public-page .album-page-hero .page-intro{font-size:14px!important;margin-top:14px!important}
  body.photos-public-page .album-browser{padding:28px 0 34px!important}
  body.photos-public-page .album-browser-head{grid-template-columns:1fr!important;gap:10px!important;margin-bottom:16px!important}
  body.photos-public-page .album-browser-head h2{font-size:40px!important}
  body.photos-public-page .album-browser-head p{font-size:13px!important}
  body.photos-public-page .delta-photo-date-card{grid-template-columns:1fr!important;gap:12px!important;padding:12px!important;border-radius:18px!important}
  body.photos-public-page .delta-photo-calendar{padding:10px!important;border-radius:14px!important}
  body.photos-public-page .delta-photo-calendar-day{height:40px!important;font-size:12px!important}
  body.photos-public-page .album-selection-card{padding:17px!important;min-height:118px!important}
  body.photos-public-page .album-search-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}
  body.photos-public-page .album-selection-card{grid-column:1/-1!important}
  body.photos-public-page .album-search-actions :is(#album-search,#album-reset){min-height:48px!important;font-size:11px!important;padding:0 13px!important}
  body.photos-public-page #albums-public.delta-albums-grid{
    display:flex!important;grid-template-columns:none!important;gap:12px!important;margin-top:16px!important;
    overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;
    padding:0 0 9px!important;
  }
  body.photos-public-page #albums-public.delta-albums-grid::-webkit-scrollbar{display:none!important}
  body.photos-public-page #albums-public :is(.delta-album-card,.album-placeholder-card){
    flex:0 0 min(78vw,300px)!important;width:min(78vw,300px)!important;scroll-snap-align:start!important;
  }
  body.photos-public-page .delta-footer{padding:28px 0 34px!important}
}
