.photos-page{max-width:1100px;margin:0 auto;padding:18px}

.photos-toolbar{
  display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;
  padding:12px;border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}

.photos-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.photos-right input{
  padding:10px 12px;border-radius:12px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(0,0,0,.25);
  color:#fff;min-width:240px;
}

.counter{color:rgba(255,255,255,.75)}
.hint{color:rgba(255,255,255,.75)}

.photos-grid{
  margin-top:16px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
@media(max-width:980px){.photos-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.photos-grid{grid-template-columns:repeat(2,1fr)}}

.photo-card{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04)}
.photo-imgbox{position:relative;aspect-ratio:4/3}
.photo-imgbox img{width:100%;height:100%;object-fit:cover;display:block}

.blurred{filter:blur(6px) brightness(.85);transform:scale(1.05)}
.photo-overlay{
  position:absolute;inset:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;background:rgba(0,0,0,.35);
}
.price-tag{font-weight:900}

.select-btn{
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);
  color:#fff;border-radius:12px;padding:10px 14px;font-weight:900;cursor:pointer;
}

.photo-card.selected{outline:2px solid rgba(34,197,94,.85)}
.photo-card.selected .select-btn{background:rgba(34,197,94,.85);border-color:transparent}

.download-badge{
  position:absolute;bottom:10px;right:10px;
  background:rgba(34,197,94,.90);
  color:#fff;text-decoration:none;
  padding:8px 10px;border-radius:12px;font-weight:900
}
.photo-card.selected {
  outline: 3px solid rgba(130, 80, 200, 0.9);
  transform: translateY(-2px);
}
.notice-success{
  margin: 12px 0;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(0, 200, 120, 0.12);
  border: 1px solid rgba(0, 200, 120, 0.25);
}
