:root{
    --primary:#d6007f;
    --pink-1:#ff4da6;
    --pink-2:#ff8ad2;
    --pink-bg:#fff0f7;
}
.bg-gradient-primary{
    background:linear-gradient(120deg,#d6007f 0%,#6b003b 100%)
}
body{
    background:#121015;
    color:#f1e4ee
}
.navbar,
footer{
    background:#1e0d1b
}
.btn-primary{
    background:#d6007f;
    border:none
}
.btn-primary:hover{
    background:#6b003b
}
.hero-section{
    background:url('https://images.unsplash.com/photo-1499084732479-de2c02d45fc4?auto=format&fit=crop&w=1500&q=80') center/cover no-repeat;
    min-height:100vh;
    position:relative
}
.hero-section::before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.7)
}
.hero-section>.container{
    position:relative;
    z-index:1
}
.scroll-down{
    position:absolute;
    bottom:20px;
    left:50%;
    transform:translateX(-50%);
    font-size:2rem;
    color:#ff8ac2;
    animation:bounce 2s infinite;
    z-index:1
}
@keyframes bounce{
    0%,100%{transform:translate(-50%,0)}
    50%{transform:translate(-50%,-10px)}
}
.gallery-item img,
.gallery-item video{
    object-fit:cover;
    width:100%;
    border-radius:.5rem;
    aspect-ratio:3/2
}
.gallery-item{
    background:#1e0d1b;
    border-radius:.5rem;
    box-shadow:0 4px 6px rgba(0,0,0,.4)
}
.video-overlay{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#ff8ac2;
    font-size:2rem
}
.vote-bar .btn{
    min-width:72px
}
.vote-btn i{
    transition:transform .2s
}
.vote-btn:active i{
    transform:scale(1.3)
}
.vote-bar .btn-outline-danger{
    color:#ff79c6;
    border-color:#ff79c6
}
.vote-bar .btn-outline-secondary{
    color:#c084cf;
    border-color:#c084cf
}
.vote-bar .btn:hover{
    background:rgba(255,255,255,.1)
}
.hero-section::before{
  content:'';
  position:absolute;
  inset:0;
  background:url('/data/photo_2025-06-09_22-42-40 (3).jpg') center/cover no-repeat;
  filter:blur(10px);
  opacity:.5;
  z-index:0;
}
section.bg-light{
    background:#1d1f25!important;
    color:#e6e8ef
}
section.bg-light h2{
    color:#ff79c6
}
section.bg-light p{
    color:#a0a4b0
}
#backToTop{
    position:fixed;
    right:20px;
    bottom:30px;
    display:none;
    border-radius:50%;
    z-index:1050;
    background:#d6007f;
    border:none;
    color:#fff
}

#galleryGrid{margin-left:-8px;margin-right:-8px}
#galleryGrid .gallery-item{padding-left:8px;padding-right:8px}

#commentsModal .modal-header{
  background:linear-gradient(45deg,var(--pink-1) 0%,var(--pink-2) 100%);
  border-bottom:none;
}
#commentsModal .modal-title{font-weight:700;}

.comment-btn{
  --bs-btn-border-color:var(--pink-1);
  --bs-btn-color:var(--pink-1);
  --bs-btn-hover-bg:var(--pink-1);
  --bs-btn-hover-border-color:var(--pink-1);
  --bs-btn-hover-color:#fff;
}
.comment-btn .count{margin-left:.25rem;font-weight:600;}

#commentsList{
  max-height:40vh;
  overflow:auto;
  padding-right:.25rem;
}

.comment-item{
  position:relative;
  padding:1rem 1.25rem 1rem 3.25rem;
  border-radius:1rem;
  background:var(--pink-bg);
  box-shadow:0 6px 16px rgb(0 0 0 / .05);
}
.comment-item+.comment-item{margin-top:1rem;}

.comment-item::before{
  content:"\f007";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  position:absolute;
  left:1.25rem;
  top:1.15rem;
  font-size:1.1rem;
  color:var(--pink-1);
}

.comment-author{
  font-weight:600;
  color:var(--pink-2);
}
.comment-date{
  font-size:.8rem;
  color:var(--pink-2);
  color:var(--bs-secondary-color);
}

.comment-text{margin-bottom:0;line-height:1.45;color:var(--pink-1);}