

/* =========================================================
   GLOBAL CONTENT TOP SPACING
========================================================= */

.pbs-main {
    padding-top: 30px !important;
    box-sizing: border-box;
}

@media (max-width: 768px) {
    .pbs-main {
        padding-top: 24px !important;
    }
}




/* ================= RESET ================= */

header,
.site-header,
.main-header,
#masthead,
#site-header,
.sub-header,
.subheader,
.top-header,
.top-bar,
.header-top,
.header-wrapper{
display:none !important;
}

body{
margin:0!important;
padding-top:64px!important;
}

body.pbs-lock{
overflow:hidden;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus{
outline:none!important;
box-shadow:none!important;
}

*{
-webkit-tap-highlight-color:transparent;
}

/* =========================================================
   IMAGE INTERACTION

   The actual TRUE/FALSE switches live in header.php:

       PBS_ALLOW_IMAGE_DRAG
       PBS_ALLOW_IMAGE_RIGHT_CLICK

   JavaScript enforces the switches. This CSS only disables
   the browser's native image-drag affordance when dragging
   is disabled. The selector is intentionally controlled by
   a body class added below by the PHP/JS setting.

   NOTE: The JavaScript switch is the authoritative control.
   ========================================================= */

html.pbs-block-image-drag img,
body.pbs-block-image-drag img {
    -webkit-user-drag:none;
    user-select:none;
    -webkit-user-select:none;
}

/* ================= HEADER ================= */

.pbs-header{
position:fixed;
top:0;
left:0;
width:100%;
height:64px;
background:#020617;
z-index:99999;
box-shadow:0 4px 14px rgba(0,0,0,.45);
}

.pbs-inner{
max-width:1200px;
margin:auto;
height:100%;
display:flex;
align-items:center;
justify-content:space-between;
padding:0 16px;
}

/* ================= LEFT ================= */

.pbs-left{
display:flex;
align-items:center;
gap:10px;
}

.pbs-logo{
width:34px;
height:34px;
border-radius:50%;
background:url("https://physicsbysubrata.com/wp-content/uploads/2026/01/cropped-LOGOLOGO-3-1-300x300.png") center/cover;
}

.pbs-title{
color:#fff;
font-size:15px;
font-weight:700;
}

/* ================= MENU BASE ================= */

.pbs-menu{
display:flex;
gap:22px;
align-items:center;
}

.pbs-menu a{
display:flex;
align-items:center;
gap:6px;
height:40px;
color:#e2e8f0;
text-decoration:none;
font-size:14px;
font-weight:500;
padding:0 12px;
border-radius:8px;
transition:.2s;
}

.pbs-menu a:hover{
color:#fde68a;
background:rgba(255,255,255,.06);
}

.pbs-menu-item{
position:relative;
}

.pbs-menu-item::after,
.pbs-profile::after{
content:"";
position:absolute;
left:0;
top:100%;
width:100%;
height:30px;
}

/* ================= SUBMENU ================= */

.pbs-submenu{
position:absolute;
top:100%;
margin-top:16px;
left:50%;
transform:translateX(-50%) translateY(10px) scale(0.98);
background:rgba(2,6,23,0.95);
border-radius:12px;
min-width:200px;
padding:6px;
border:1px solid rgba(255,255,255,.06);
box-shadow:0 20px 50px rgba(0,0,0,.6);
opacity:0;
visibility:hidden;
transition:all .18s ease;
z-index:999;
}

.pbs-menu-item.open > .pbs-submenu,
.pbs-profile.open > .pbs-submenu{
opacity:1;
transform:translateX(-50%) translateY(0) scale(1);
visibility:visible;
}

.pbs-submenu a{
display:block;
padding:10px 14px;
border-radius:8px;
color:#cbd5f5;
font-size:14px;
transition:.18s;
}

.pbs-submenu a:hover{
background:#1e293b;
color:#fde68a;
}

.pbs-profile .pbs-submenu{
margin-top:19px;
min-width:220px;
}

/* ================= RIGHT ================= */

.pbs-right{
display:flex;
align-items:center;
gap:10px;
flex-shrink:0;
}

.pbs-login{
color:#fde68a;
font-weight:700;
text-decoration:none;
}

/* ================= DARK MODE ICON TOGGLE ================= */
.pbs-dark-toggle-btn {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #0f172a;
    border: 1px solid rgba(255,255,255,.08);
    display: flex;
    align-items:center;
    justify-content:center;
    cursor: pointer;
    font-size: 16px;
    transition: .2s;
}
.pbs-dark-toggle-btn:hover {
    background: #1e293b;
}

.pbs-purchase-wrap{
position:relative;
display:flex;
align-items:center;
}

.pbs-purchase{
display:flex;
align-items:center;
gap:8px;
padding:4px 12px;
border-radius:10px;
background:#0f172a;
border:1px solid rgba(255,255,255,.12);
cursor:pointer;
transition:.2s;
white-space:nowrap;
flex-shrink:0;
}

.pbs-purchase:hover{
background:#1e293b;
}

.pbs-purchase-icon{
font-size:16px;
}

.pbs-purchase-text{
color:#fff;
font-size:13px;
font-weight:600;
white-space:nowrap;
}

.pbs-purchase-count{
position:absolute;
top:-4px;
right:-4px;
background:#22c55e;
color:#fff;
font-size:10px;
font-weight:700;
width:16px;
height:16px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
}

/* ================= BELL ================= */

.pbs-bell-wrap{
position:relative;
display:flex;
align-items:center;
}

.pbs-bell-wrap::after{
content:"";
position:absolute;
left:0;
top:100%;
width:100%;
height:40px;
}

.pbs-bell{
width:34px;
height:34px;
border-radius:50%;
background:#0f172a;
border:1px solid rgba(255,255,255,.08);
display:flex;
align-items:center;
justify-content:center;
cursor:pointer;
transition:.2s;
}

.pbs-bell:hover{
background:#1e293b;
}

.pbs-bell svg{
width:16px;
height:16px;
fill:#facc15;
display:block;
}

.pbs-bell-count{
position:absolute;
top:-4px;
right:-4px;
background:#ef4444;
color:#fff;
font-size:10px;
font-weight:700;
width:16px;
height:16px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
}

.pbs-notification-dropdown{
position:absolute;
top:100%;
margin-top:20px;
left:50%;
transform:translateX(-50%) translateY(8px) scale(0.98);
min-width:300px;
max-height:340px;
overflow-y:auto;
background:rgba(2,6,23,0.95);
border-radius:14px;
padding:8px;
border:1px solid rgba(255,255,255,.06);
box-shadow:0 20px 50px rgba(0,0,0,.6);
opacity:0;
visibility:hidden;
transition:all .18s ease;
z-index:999;
}

.pbs-bell-wrap.open > .pbs-notification-dropdown{
opacity:1;
transform:translateX(-50%) translateY(0) scale(1);
visibility:visible;
}

.pbs-notification-item{
padding:0;
}

.pbs-notification-item a{
display:block;
padding:12px 14px;
border-radius:10px;
text-decoration:none;
transition:.18s;
}

.pbs-notification-item strong{
display:block;
color:#fff;
font-size:14px;
margin-bottom:2px;
}

.pbs-notification-item span{
color:#cbd5f5;
font-size:13px;
}

.pbs-notification-item a:hover{
background:#1e293b;
color:#fde68a;
}

.pbs-view-all{
padding:8px;
text-align:center;
}

.pbs-view-all a{
display:block;
padding:10px;
border-radius:10px;
color:#facc15;
text-decoration:none;
font-weight:600;
}

.pbs-view-all a:hover{
background:#1e293b;
}

/* ================= PROFILE ================= */

.pbs-profile-trigger{
display:flex;
align-items:center;
gap:8px;
}

.pbs-user-name{
line-height:1;
}

.pbs-profile{
display:flex;
align-items:center;
gap:8px;
cursor:pointer;
position:relative;
height:auto;
}

body.logged-in .pbs-login{
display:none;
}

body.logged-in .pbs-profile{
display:flex;
}

.pbs-user-icon{
width:34px;
height:34px;
border-radius:50%;
background:#0f172a;
border:1px solid rgba(255,255,255,.08);
display:flex;
align-items:center;
justify-content:center;
}

.pbs-user-icon svg{
width:16px;
height:16px;
}

.male-icon{ fill:#3b82f6; }
.female-icon{ fill:#ec4899; }
.other-icon{ fill:#a855f7; }

.pbs-user-name{
color:#fff;
font-size:14px;
font-weight:600;
}

/* ================= MOBILE ================= */

.pbs-hamburger{
display:none;
font-size:26px;
color:#fff;
cursor:pointer;
align-items:center;
justify-content:center;
flex-shrink:0;
}

.pbs-mobile{
position:fixed;
top:0;
right:-280px;
width:280px;
height:100dvh;
min-height:100vh;
background:#020617;
padding:20px;
overflow-y:auto;
transition:.35s;
z-index:99999;
}

.pbs-overlay{
position:fixed;
top:0;
left:0;
width:100vw;
height:100vh;
background:rgba(0,0,0,.6);
display:none;
z-index:99998;
}

.pbs-mobile.show{ right:0; }
.pbs-overlay.show{ display:block; }

.pbs-mobile-header{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:20px;
}

.pbs-mobile-header span{
color:#fff;
font-size:18px;
font-weight:700;
}

.pbs-close{
font-size:22px;
color:#fff;
cursor:pointer;
}

.pbs-mobile a{
display:block;
padding:14px;
margin-bottom:12px;
background:#0f172a;
border-radius:10px;
color:#e5e7eb;
text-decoration:none;
font-weight:600;
}

.pbs-mobile a:active,
.pbs-mobile-toggle:active{
background:rgba(250,204,21,.15);
color:#fde68a;
}

.active{
background:rgba(250,204,21,.15) !important;
color:#fde68a !important;
}

/* ================= TOGGLE SWITCH ================= */

.pbs-switch{
position:relative;
display:inline-block;
width:46px;
height:24px;
}

.pbs-switch input{
opacity:0;
width:0;
height:0;
}

.pbs-slider{
position:absolute;
cursor:pointer;
top:0;
left:0;
right:0;
bottom:0;
background:#374151;
border-radius:34px;
transition:.3s;
}

.pbs-slider:before{
position:absolute;
content:"";
height:18px;
width:18px;
left:3px;
bottom:3px;
background:white;
border-radius:50%;
transition:.3s;
}

.pbs-switch input:checked + .pbs-slider{
background:#22c55e;
}

.pbs-switch input:checked + .pbs-slider:before{
transform:translateX(22px);
}

.pbs-toggle-row{
display:flex;
align-items:center;
justify-content:space-between;
padding:14px;
margin-bottom:12px;
background:#0f172a;
border-radius:10px;
color:#e5e7eb;
font-weight:600;
}

.pbs-toggle-label{
color:#e5e7eb;
font-size:14px;
}

.pbs-toggle-row:hover{
background:#1e293b;
}

.pbs-mobile-item{
margin-bottom:12px;
}

.pbs-mobile-toggle{
padding:14px;
background:#0f172a;
border-radius:10px;
color:#e5e7eb;
font-weight:600;
cursor:pointer;
}

.pbs-mobile-submenu{
display:none;
padding-left:10px;
margin-top:6px;
}

.pbs-mobile-submenu a{
display:block;
padding:10px;
background:#020617;
border-radius:8px;
margin-bottom:6px;
color:#cbd5f5;
text-decoration:none;
}

.pbs-mobile-toggle.active{
background:#1e293b;
color:#fde68a;
}

.pbs-mobile-submenu a.active{
background:#1e293b;
color:#fde68a;
}

.pbs-mobile a.pbs-mobile-logout{
display:block;
padding:13px;
margin-bottom:12px;
background:#dc2626;
border-radius:10px;
color:#fff;
text-align:center;
font-weight:600;
text-decoration:none;
transition:.2s;
}

.pbs-mobile a.pbs-mobile-logout:hover{
background:#b91c1c;
}

/* ================= RESPONSIVE FIXES ================= */

@media(max-width:768px){
.pbs-right { gap: 12px !important; } /* 👈 Ekhane gap bariye dewa holo */
.pbs-inner { padding: 0 10px !important; }
.pbs-bell, .pbs-purchase, .pbs-user-icon, .pbs-dark-toggle-btn { width: 30px !important; height: 30px !important; font-size: 14px !important; }
.pbs-bell svg, .pbs-user-icon svg { width: 14px !important; height: 14px !important; }
.pbs-title { 
    font-size: 11px !important; 
    max-width: none !important; 
    white-space: normal !important; 
    line-height: 1.1 !important;
}
.pbs-user-name {
    display:none !important;
}
.pbs-logo { width: 26px !important; height: 26px !important; margin-right: 4px; }
}

.pbs-notification-dropdown{
display:none;
opacity:1;
visibility:visible;
}
.pbs-notification-dropdown.show{
display:block;
}
.pbs-menu{
display:flex;
}

.pbs-hamburger{
display:none;
}

.pbs-user-name{
display:inline;
}

/*
   Desktop / laptop:
   Show the full navigation when there is enough horizontal space.
   Smaller screens switch to the hamburger menu.
*/
@media(max-width:1100px){

    .pbs-menu{
        display:none;
    }

    .pbs-hamburger{
        display:flex;
    }
}

@media(max-width:1024px){
.pbs-purchase-text{ display:none !important; }
.pbs-purchase{
width:30px;
height:30px;
padding:0;
border-radius:50%;
justify-content:center;
}
.pbs-purchase-icon{ font-size:14px; }
}




/* ================= DARK MODE STYLES ================= */

html.dark-mode,
html.dark-mode body,
body.dark-mode {
    background-color: #020617 !important;
    color: #e2e8f0 !important;
}

html.dark-mode .pbs-header,
html.dark-mode .pbs-mobile,
body.dark-mode .pbs-header,
body.dark-mode .pbs-mobile {
    background-color: #0b1120 !important;
}

html.dark-mode .pbs-submenu,
html.dark-mode .pbs-notification-dropdown,
body.dark-mode .pbs-submenu,
body.dark-mode .pbs-notification-dropdown {
    background: rgba(15, 23, 42, 0.95) !important;
}

html.dark-mode .pbs-purchase,
html.dark-mode .pbs-bell,
html.dark-mode .pbs-user-icon,
html.dark-mode .pbs-dark-toggle-btn,
html.dark-mode .pbs-mobile a,
html.dark-mode .pbs-toggle-row,
body.dark-mode .pbs-purchase,
body.dark-mode .pbs-bell,
body.dark-mode .pbs-user-icon,
body.dark-mode .pbs-dark-toggle-btn,
body.dark-mode .pbs-mobile a,
body.dark-mode .pbs-toggle-row {
    background: #1e293b !important;
}

html.dark-mode .pbs-menu a:hover,
html.dark-mode .pbs-mobile a:hover,
html.dark-mode .pbs-submenu a:hover,
body.dark-mode .pbs-menu a:hover,
body.dark-mode .pbs-mobile a:hover,
body.dark-mode .pbs-submenu a:hover {
    background: #334155 !important;
}
