
.ad-sidebar{
    display:flex;
    flex-direction:column;
    gap:1.5rem;
}

.ad-box{
    background:#111;
    border-radius:16px;
    color: white;
    padding:1.5rem;
    min-height:600px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-family:"Edition", monospace;
    font-size:40px;
    box-shadow:0 8px 30px rgba(0,0,0,.08);
}

.sidebar,
.question-sidebar{
    display:flex;
    flex-direction:column;
    gap:1.5rem;
}

.sidebar-box,
.card{
    background: #111;
    padding:2rem;
    border-radius:16px;
    box-shadow:0 8px 30px rgba(0,0,0,.08);
}

.sidebar-icon{
    width:120px;
    height:120px;
    object-fit:cover;
    margin:0 auto 1rem;
    border-radius:50%;
}

.sidebar-box iframe{
    display:block;
    width:100%;
    max-width:100%;
    aspect-ratio:16 / 9;
    margin:1rem auto 0;
    border-radius:14px;
}

.icon-link{
    display:block;
    width:120px;
    height:120px;
    margin:0 auto 1rem;
}

.icon-link .sidebar-icon{
    margin:0;
}

.sidebar p{
    font-size:14px;
}

.links-box{
    display:flex;
    flex-direction:column;
    gap:.75rem;
}

.links-box a{
    font-size:30px;
    text-align:center;
    border-bottom:1px solid #ddd;
    padding-bottom:.5rem;
}

.question-list{
    display:flex;
    flex-direction:column;
    gap:.75rem;
}

.question-list a{
    font-family:"courier", monospace;
    font-size:15px;
    line-height:1.3;
    padding:.75rem;
    border:1px solid #2a0a0f; /* darker border to match */
    border-radius:10px;

    background: linear-gradient(
        110deg,
        #1a0205 0%,
        #36050C 20%,
        #6a1320 40%,
        #36050C 60%,
        #1a0205 80%,
        #000000 100%
    );

    background-size: 300% 300%;
    animation: gradientWave 16s ease-in-out infinite;
}

@keyframes gradientWave {
    0%   { background-position: 0% 50%; }
    50%  { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}
.icon-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:10px;
}

.icon-btn{
    position:relative;
    display:block;
    overflow:hidden;
    border-radius:12px;
}

.icon-btn img{
    width:100%;
    height:90px;
    object-fit:cover;
    display:block;
    transition:transform .35s ease;
}

.icon-btn span{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.65);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:.9rem;
    letter-spacing:.5px;
    opacity:0;
    transition:opacity .25s ease;
    text-align:center;
    padding:8px;
}

.icon-btn:hover img{
    transform:scale(1.08);
}

.icon-btn:hover span{
    opacity:1;
}
