/*
 * 3D menu buttons — 4Tex Evergreen
 *
 *  .btn-3d            একটা বাটন/লিংককে 3D বানায়
 *  .btn-3d-sm         ছোট সাইজ (হেডার মেনুর জন্য)
 *  .btn-3d-gold       সোনালি রঙ
 *  .active            বর্তমান পেজের বাটন — "চাপা" দেখায়
 *  .nav-3d            container-এর ভেতরের সব <a> লিংক 3D হয়ে যায়
 *  .nav-3d-vertical   সাইডবারের মতো উল্লম্ব মেনু
 *
 * রঙ layout থেকে আসে (--b3d-* ভ্যারিয়েবল), তাই Site Settings-এ প্রাইমারি/অ্যাকসেন্ট রঙ বদলালে মেনুও বদলাবে।
 */

:root {
    --b3d-top: #2f7d48;
    --b3d-bottom: #174d2c;
    --b3d-edge: #0d2c19;
    --b3d-text: #ffffff;
    --b3d-gold-top: #e0ac3f;
    --b3d-gold-bottom: #d69e2e;
    --b3d-gold-edge: #8a5d0c;
    --b3d-depth: 6px;
}

.nav-3d {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    list-style: none;
    margin: 0;
    padding: 0 0 var(--b3d-depth) 0;
}

.nav-3d li { list-style: none; margin: 0; padding: 0; }

.nav-3d a,
.btn-3d {
    position: relative;
    display: inline-block;
    padding: 10px 20px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    color: var(--b3d-text);
    text-decoration: none;
    text-shadow: 0 1px 0 rgba(0, 0, 0, .3);
    background: linear-gradient(180deg, var(--b3d-top) 0%, var(--b3d-bottom) 100%);
    border: 0;
    border-radius: 10px;
    cursor: pointer;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .35),
        0 var(--b3d-depth) 0 var(--b3d-edge),
        0 calc(var(--b3d-depth) + 4px) 12px rgba(0, 0, 0, .28);
    transform: translateY(0);
    transition: transform .08s ease, box-shadow .08s ease, filter .15s ease;
    -webkit-tap-highlight-color: transparent;
}

.nav-3d a:hover,
.btn-3d:hover {
    filter: brightness(1.1);
    transform: translateY(-1px);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .35),
        0 calc(var(--b3d-depth) + 1px) 0 var(--b3d-edge),
        0 calc(var(--b3d-depth) + 6px) 14px rgba(0, 0, 0, .3);
}

.nav-3d a:active,
.nav-3d a.active,
.btn-3d:active,
.btn-3d.active {
    transform: translateY(calc(var(--b3d-depth) - 1px));
    filter: brightness(.93);
    box-shadow:
        inset 0 2px 4px rgba(0, 0, 0, .3),
        0 1px 0 var(--b3d-edge),
        0 3px 6px rgba(0, 0, 0, .25);
}

.nav-3d a:focus-visible,
.btn-3d:focus-visible {
    outline: 3px solid #ffd54a;
    outline-offset: 3px;
}

/* ছোট সাইজ — হেডার মেনু */
.btn-3d.btn-3d-sm,
.nav-3d a.btn-3d-sm {
    --b3d-depth: 5px;
    padding: 7px 13px;
    font-size: 13px;
    border-radius: 8px;
}

/* সোনালি রঙ */
.btn-3d.btn-3d-gold,
.nav-3d a.btn-3d-gold,
.btn-3d.btn-3d-warn {
    --b3d-top: var(--b3d-gold-top);
    --b3d-bottom: var(--b3d-gold-bottom);
    --b3d-edge: var(--b3d-gold-edge);
    --b3d-text: #0d2c19;
    text-shadow: 0 1px 0 rgba(255, 255, 255, .3);
}

/* সাইডবার / উল্লম্ব মেনু */
.nav-3d-vertical {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
}

.nav-3d-vertical a {
    display: block;
    text-align: left;
}

@media (max-width: 640px) {
    .nav-3d { gap: 12px; }
    .nav-3d a, .btn-3d { padding: 9px 16px; font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
    .nav-3d a, .btn-3d { transition: none; }
}
