.album-body{background:#f7f4ee;color:#171715}.album-header{position:sticky;top:0;z-index:40;min-height:72px;padding:12px max(4vw,20px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:rgba(247,244,238,.9);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(216,209,196,.72)}.album-brand{font:26px Georgia,serif;color:var(--ink);text-decoration:none}.album-brand span{color:var(--gold)}.album-header-center{display:grid;justify-items:center;gap:2px}.album-header-center small{font-size:9px;color:var(--muted);letter-spacing:.08em}.live-indicator{font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;display:flex;align-items:center;gap:7px}.live-indicator i{width:7px;height:7px;border-radius:50%;background:#4c8c68;box-shadow:0 0 0 5px rgba(76,140,104,.12);animation:livePulse 2s infinite}.album-back{justify-self:end;color:var(--ink);text-decoration:none;font-size:11px;font-weight:800}.album-main{max-width:1540px;margin:auto}.album-hero{padding:90px max(5vw,24px) 52px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:8vw;align-items:end}.album-hero-copy{max-width:830px}.album-hero h1{font-size:clamp(48px,7.4vw,108px);margin:0 0 24px;line-height:.9}.album-hero h1 em{color:var(--gold);font-weight:400}.album-hero-copy>p:last-of-type{max-width:720px;font-size:17px;color:var(--muted);line-height:1.8}.album-stats{display:flex;gap:28px;flex-wrap:wrap;margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}.album-stats div{display:flex;align-items:baseline;gap:7px}.album-stats strong{font:32px Georgia,serif}.album-stats span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.album-hero-note{border-left:1px solid var(--gold-soft);padding-left:24px}.album-hero-note span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:800}.album-hero-note p{font:20px/1.5 Georgia,serif;margin:12px 0 0;color:#4e4942}.album-controls{position:sticky;top:72px;z-index:30;padding:14px max(5vw,24px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(247,244,238,.94);border-top:1px solid var(--line);border-bottom:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.album-filter-scroll{display:flex;gap:6px;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.album-filter-scroll::-webkit-scrollbar{display:none}.album-filter{flex:0 0 auto;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font-size:10px;font-weight:800;color:var(--muted)}.album-filter.active{background:var(--forest);color:#fff;border-color:var(--forest)}.album-feed-wrap{padding:30px max(3vw,16px) 100px}.album-feed{columns:5 230px;column-gap:12px}.album-card{position:relative;break-inside:avoid;margin:0 0 12px;border-radius:16px;overflow:hidden;background:#e8e3db;box-shadow:0 3px 12px rgba(31,28,23,.05);animation:photoIn .48s cubic-bezier(.2,.75,.2,1) both}.album-card img{width:100%;height:auto;min-height:180px;object-fit:cover;transition:transform .45s cubic-bezier(.2,.75,.2,1),filter .3s}.album-card:hover img{transform:scale(1.018)}.album-card-overlay{position:absolute;inset:auto 0 0;padding:46px 12px 11px;background:linear-gradient(transparent,rgba(10,10,9,.72));color:#fff;display:flex;align-items:end;justify-content:space-between;gap:8px;opacity:0;transition:.2s}.album-card:hover .album-card-overlay,.album-card:focus-within .album-card-overlay{opacity:1}.album-card-meta{display:grid;gap:2px}.album-card-meta strong{font-size:10px}.album-card-meta small{font-size:8px;opacity:.72}.album-card-actions{display:flex;gap:6px}.album-card-actions button{width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#1b1a18;font-size:18px}.album-card-actions button.favorite-active{color:#a13f49}.new-photo-banner{max-width:760px;margin:0 auto 20px;padding:12px 15px;border-radius:999px;background:var(--forest);color:#fff;display:flex;justify-content:center;align-items:center;gap:16px;font-size:11px;box-shadow:0 12px 32px rgba(21,49,39,.2);position:sticky;top:136px;z-index:28}.new-photo-banner button{border:0;background:#fff;color:var(--forest);border-radius:999px;padding:7px 12px;font-size:10px;font-weight:800}.album-empty{text-align:center;padding:90px 20px;color:var(--muted)}.album-empty strong{display:block;font:28px Georgia,serif;color:var(--ink)}.album-share-card{margin:0 max(5vw,24px) 90px;padding:42px clamp(28px,5vw,65px);background:var(--forest-2);color:#fff;border-radius:28px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.album-share-card h2{max-width:700px;margin-bottom:14px}.album-share-card p:last-child{max-width:760px;color:rgba(255,255,255,.66);line-height:1.7}.album-share-card .button.secondary{border-color:rgba(255,255,255,.3);color:#fff}.album-footer{padding:42px max(5vw,24px) max(42px,calc(20px + env(safe-area-inset-bottom)));border-top:1px solid var(--line);display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center}.album-footer span{font:24px Georgia,serif}.album-footer p{margin:0;font-size:10px;color:var(--muted)}.album-footer a{font-size:10px;color:var(--ink);font-weight:800}.album-mobile-action{display:none}.album-modal,.lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.album-modal-backdrop{position:absolute;inset:0;background:rgba(10,12,11,.56);backdrop-filter:blur(7px)}.album-modal-card{position:relative;z-index:1;width:min(560px,94vw);background:var(--paper);border-radius:24px;padding:30px;box-shadow:0 35px 110px rgba(0,0,0,.34)}.album-modal-card h2{margin-bottom:10px}.album-modal-card>p:not(.kicker){color:var(--muted);font-size:12px;line-height:1.7}.album-modal-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:28px;color:var(--muted)}.album-field{display:grid;gap:7px;font-size:11px;font-weight:800;margin:18px 0 12px}.album-field input{border:1px solid var(--line);border-radius:12px;background:#fff;padding:13px}.album-dropzone{display:grid;place-items:center;text-align:center;gap:5px;border:1px dashed #baa98c;border-radius:16px;padding:35px 20px;background:#fff;cursor:pointer}.album-dropzone strong{font-size:13px}.album-dropzone span{font-size:9px;color:var(--muted)}.album-microcopy{margin:12px 0 0!important;font-size:9px!important}.upload-progress{height:5px;background:#e3ddd3;border-radius:999px;overflow:hidden;margin-top:12px}.upload-progress span{display:block;height:100%;width:0;background:var(--forest);transition:width .2s}.lightbox{background:rgba(8,9,8,.94);grid-template-columns:auto minmax(0,1fr) auto}.lightbox figure{margin:0;max-width:min(1100px,82vw);max-height:88vh;display:grid;grid-template-rows:minmax(0,1fr) auto}.lightbox img{max-width:100%;max-height:80vh;margin:auto;border-radius:12px;box-shadow:0 30px 100px rgba(0,0,0,.4)}.lightbox figcaption{display:flex;align-items:center;justify-content:space-between;color:#fff;padding:12px 3px 0;font-size:10px}.lightbox figcaption button{border:0;background:none;color:#fff;font-size:26px}.lightbox figcaption button.favorite-active{color:#e98a9a}.lightbox-close{position:absolute;right:max(18px,env(safe-area-inset-right));top:max(18px,env(safe-area-inset-top));border:0;background:rgba(255,255,255,.12);color:#fff;width:44px;height:44px;border-radius:50%;font-size:25px}.lightbox-nav{border:0;background:rgba(255,255,255,.09);color:#fff;width:48px;height:48px;border-radius:50%;font-size:30px}.album-body .toast{background:var(--forest-2)}@keyframes livePulse{0%,100%{box-shadow:0 0 0 4px rgba(76,140,104,.10)}50%{box-shadow:0 0 0 8px rgba(76,140,104,.04)}}@keyframes photoIn{from{opacity:0;transform:translateY(9px) scale(.995)}to{opacity:1;transform:none}}
@media(max-width:850px){.album-header{grid-template-columns:auto 1fr auto}.album-header-center small{display:none}.album-hero{grid-template-columns:1fr;padding-top:62px}.album-hero-note{max-width:560px}.album-controls{top:72px}.album-feed{columns:3 180px}.album-share-card{grid-template-columns:1fr}.album-share-card .button{justify-self:start}.album-footer{grid-template-columns:1fr;text-align:center}.album-footer a{justify-self:center}}
@media(max-width:600px){.album-header{min-height:calc(64px + env(safe-area-inset-top));padding-top:max(10px,env(safe-area-inset-top));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.album-header-center{justify-items:end}.album-header-center .live-indicator{font-size:8px}.album-back{display:none}.album-hero{padding:54px max(20px,env(safe-area-inset-left)) 36px}.album-hero h1{font-size:clamp(44px,14vw,70px)}.album-hero-copy>p:last-of-type{font-size:14px}.album-stats{gap:16px}.album-stats strong{font-size:26px}.album-controls{top:calc(64px + env(safe-area-inset-top));padding:10px max(12px,env(safe-area-inset-left));}.album-upload-button{display:none}.album-filter{min-height:42px}.album-feed-wrap{padding:16px max(8px,env(safe-area-inset-left)) 110px}.album-feed{columns:2 150px;column-gap:7px}.album-card{margin-bottom:7px;border-radius:11px}.album-card-overlay{opacity:1;padding:34px 8px 8px}.album-card-meta small{display:none}.album-card-actions button{width:34px;height:34px}.album-hero-note{padding-left:16px}.album-hero-note p{font-size:17px}.new-photo-banner{top:calc(116px + env(safe-area-inset-top));margin:0 8px 14px;border-radius:16px}.album-share-card{margin:0 16px 90px;padding:28px 22px;border-radius:20px}.album-mobile-action{display:block;position:fixed;left:50%;transform:translateX(-50%);bottom:max(14px,calc(8px + env(safe-area-inset-bottom)));z-index:35}.album-mobile-action button{border:0;border-radius:999px;background:var(--forest);color:#fff;min-height:50px;padding:0 24px;font-weight:800;box-shadow:0 15px 40px rgba(12,32,24,.28)}.album-modal{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right));padding-bottom:max(10px,env(safe-area-inset-bottom))}.album-modal-card{padding:26px 20px}.lightbox{grid-template-columns:1fr;padding:70px 10px max(25px,env(safe-area-inset-bottom))}.lightbox figure{max-width:100%;max-height:100%}.lightbox img{max-height:74vh}.lightbox-nav{position:absolute;top:50%;width:42px;height:42px}.lightbox-nav.prev{left:12px}.lightbox-nav.next{right:12px}}
@media(prefers-reduced-motion:reduce){.live-indicator i,.album-card{animation:none}.album-card img{transition:none}}
/* v7 : zone de sélection devenue un vrai bouton (clavier), contrastes, glisser-déposer */
.album-dropzone{width:100%;font:inherit;color:var(--ink)}.album-dropzone:hover,.album-dropzone.is-dragging{border-color:var(--forest);background:#f3f7f4}.album-dropzone:focus-visible{outline:2px solid var(--gold-ink);outline-offset:3px}
.album-hero-note span{color:var(--gold-ink)}.album-share-card .kicker{color:var(--gold-soft)}
.album-card-actions button:focus-visible,.album-filter:focus-visible,.lightbox button:focus-visible{outline:2px solid var(--gold-ink);outline-offset:2px}
.lightbox button:focus-visible{outline-color:#fff}
.album-mobile-action button{white-space:nowrap}
