/* Borobagan Auth Modal + My Account */

/* ============ AUTH MODAL ============ */
body.bb-auth-open{overflow:hidden;}
.bb-auth-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility 0s linear .22s;}
.bb-auth-modal.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .22s ease,visibility 0s;}
.bb-auth-backdrop{position:absolute;inset:0;background:rgba(0,30,15,.55);backdrop-filter:blur(4px);}
.bb-auth-panel{position:relative;width:min(440px,calc(100% - 24px));max-height:92vh;overflow-y:auto;background:#fff;border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.25);padding:28px 26px;transform:translateY(20px) scale(.98);transition:transform .26s cubic-bezier(.2,.9,.3,1.2);}
.bb-auth-modal.is-open .bb-auth-panel{transform:translateY(0) scale(1);}
.bb-auth-close{position:absolute;top:10px;right:14px;background:#f3f3f3;border:0;width:32px;height:32px;border-radius:50%;font-size:22px;line-height:1;cursor:pointer;color:#333;transition:.15s;}
.bb-auth-close:hover{background:var(--primary);color:#fff;transform:rotate(90deg);}
.bb-auth-brand{text-align:center;margin-bottom:18px;}
.bb-auth-brand img{max-height:48px;width:auto;margin:0 auto 10px;display:block;}
.bb-auth-brand-mark{font-size:42px;line-height:1;margin-bottom:8px;}
.bb-auth-brand h2{font-size:20px;margin:0 0 4px;color:var(--secondary,#00331A);}
.bb-auth-brand p{margin:0;font-size:13px;color:#666;}
.bb-auth-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;background:#f5f5f5;border-radius:999px;padding:4px;margin-bottom:18px;}
.bb-auth-tab{position:relative;z-index:2;background:transparent;border:0;padding:10px 8px;font:600 14px/1 var(--font-body,inherit);color:#555;cursor:pointer;border-radius:999px;transition:color .2s;}
.bb-auth-tab.is-active{color:#fff;}
.bb-auth-tab-ind{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:var(--primary,#006634);border-radius:999px;transition:transform .25s cubic-bezier(.2,.9,.3,1.2);z-index:1;}
.bb-auth-form{display:none;flex-direction:column;gap:12px;animation:bbFade .25s ease;}
.bb-auth-form.is-active{display:flex;}
@keyframes bbFade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
.bb-field{display:flex;flex-direction:column;gap:6px;}
.bb-field>span{font-size:13px;font-weight:600;color:#333;}
.bb-field input{height:46px;border:1.5px solid #e4e4e4;border-radius:12px;padding:0 14px;font-size:15px;background:#fafafa;transition:.15s;font-family:inherit;}
.bb-field input:focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px rgba(0,102,52,.12);}
.bb-field-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;}
.bb-check{display:flex;align-items:center;gap:6px;color:#555;cursor:pointer;}
.bb-check input{accent-color:var(--primary);}
.bb-link{background:none;border:0;color:var(--primary);font:inherit;cursor:pointer;padding:0;text-decoration:underline;}
.bb-link-strong{font-weight:700;text-decoration:none;}
.bb-link-strong:hover{text-decoration:underline;}
.bb-auth-submit{margin-top:4px;height:48px;border:0;border-radius:12px;background:var(--primary,#006634);color:#fff;font:700 15px/1 inherit;cursor:pointer;transition:.18s;letter-spacing:.3px;}
.bb-auth-submit:hover{background:var(--secondary,#00331A);transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,102,52,.25);}
.bb-auth-submit:disabled{opacity:.6;cursor:wait;}
.bb-auth-foot{text-align:center;margin:14px 0 0;font-size:13px;color:#666;}
.bb-auth-msg{padding:10px 14px;border-radius:10px;font-size:13.5px;font-weight:500;margin-bottom:10px;}
.bb-auth-msg.is-ok{background:#e8f6ee;color:#0a6b2e;border:1px solid #b8e3c7;}
.bb-auth-msg.is-err{background:#fde8e8;color:#b42318;border:1px solid #fac6c6;}

@media(max-width:560px){
	.bb-auth-modal{align-items:flex-end;}
	.bb-auth-panel{width:100%;max-height:94vh;border-radius:20px 20px 0 0;padding:22px 18px 28px;}
}

/* ============ HEADER ACCOUNT DROPDOWN ============ */
.bb-account-dd{position:relative;}
.bb-account-dd-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:#fff;border-radius:14px;box-shadow:0 14px 38px rgba(0,0,0,.14);padding:10px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:.18s;z-index:200;}
.bb-account-dd:hover .bb-account-dd-menu,.bb-account-dd.is-open .bb-account-dd-menu{opacity:1;visibility:visible;transform:translateY(0);}
.bb-account-dd-menu a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:#222!important;font-size:14px;text-decoration:none;}
.bb-account-dd-menu a:hover{background:#f5f5f5;color:var(--primary)!important;}
.bb-account-dd-menu hr{border:0;border-top:1px solid #eee;margin:6px 0;}

/* ============ MY ACCOUNT DASHBOARD ============ */
.woocommerce-account .page-header{display:none!important;}
.woocommerce-account .page-content{margin:0!important;}
.woocommerce-account .woocommerce{display:block!important;clear:both!important;width:100%!important;}
.bb-acc-wrap{display:grid!important;grid-template-columns:minmax(240px,280px) minmax(0,1fr)!important;gap:28px;margin:26px 0 60px;align-items:start;clear:both;}
@media(max-width:900px){.bb-acc-wrap{grid-template-columns:1fr!important;gap:16px;margin-top:14px;}}

.bb-acc-side.woocommerce-MyAccount-navigation,.woocommerce-account .bb-acc-side{float:none!important;width:auto!important;max-width:none!important;min-width:0!important;background:#fff;border:1px solid rgba(0,102,52,.08);border-radius:18px;box-shadow:0 16px 44px rgba(0,51,26,.06);padding:18px;height:fit-content;position:sticky;top:120px;overflow:hidden;}
@media(max-width:900px){.bb-acc-side{position:static;}}

.bb-acc-user{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid #eee;margin-bottom:14px;}
.bb-acc-avatar{position:relative;width:60px;height:60px;border-radius:50%;overflow:hidden;background:#f0f0f0;flex-shrink:0;border:3px solid var(--primary);}
.bb-acc-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.bb-acc-avatar-edit{position:absolute;bottom:0;right:0;background:var(--primary);color:#fff;width:22px;height:22px;border-radius:50%;font-size:11px;display:flex;align-items:center;justify-content:center;cursor:pointer;border:2px solid #fff;}
.bb-acc-user-info{min-width:0;}
.bb-acc-user-info strong{display:block;font-size:15px;color:var(--secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.bb-acc-user-info small{display:block;color:#888;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:175px;}

.bb-acc-side ul.bb-acc-nav,ul.bb-acc-nav{list-style:none!important;margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;gap:2px!important;}
.bb-acc-side ul.bb-acc-nav li,ul.bb-acc-nav li{list-style:none!important;margin:0!important;padding:0!important;background:none!important;}
.bb-acc-side ul.bb-acc-nav li::before,ul.bb-acc-nav li::before,ul.bb-acc-nav li::marker{content:none!important;display:none!important;}
.bb-acc-side ul.bb-acc-nav li a,ul.bb-acc-nav li a{display:flex!important;align-items:center;gap:10px;padding:12px 14px!important;border-radius:12px;color:#333!important;text-decoration:none!important;font-size:14px;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:.15s;}
.bb-acc-side ul.bb-acc-nav li a:hover{background:#f5f5f5!important;color:var(--primary)!important;}
.bb-acc-side ul.bb-acc-nav li.is-active a,.bb-acc-side ul.bb-acc-nav li.woocommerce-MyAccount-navigation-link--is-active a{background:var(--primary)!important;color:#fff!important;}
.bb-acc-nav-ic{width:20px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}
.bb-acc-nav-ic svg{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

.bb-acc-main.woocommerce-MyAccount-content,.woocommerce-account .bb-acc-main{float:none!important;width:100%!important;max-width:none!important;background:#fff;border:1px solid rgba(0,102,52,.08);border-radius:18px;box-shadow:0 16px 44px rgba(0,51,26,.06);padding:28px;min-height:400px;overflow:hidden;}
.bb-acc-greet{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;flex-wrap:wrap;gap:12px;}
.bb-acc-greet h2{margin:0;font-size:22px;color:var(--secondary);}
.bb-acc-greet p{margin:4px 0 0;color:#666;font-size:14px;}

.bb-acc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:26px;}
@media(max-width:700px){.bb-acc-stats{grid-template-columns:repeat(2,1fr);}}
.bb-stat{background:linear-gradient(135deg,#fbfdf9,#eef7ef);border:1px solid #dcebd7;border-radius:14px;padding:18px;text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.75);}
.bb-stat-ic{width:34px;height:34px;margin:0 auto 8px;border-radius:12px;background:rgba(0,102,52,.09);color:var(--primary);position:relative;}
.bb-stat-ic::before{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;line-height:1;}
.bb-stat-orders::before{content:"▣";}
.bb-stat-pending::before{content:"◷";}
.bb-stat-delivered::before{content:"✓";}
.bb-stat-spent::before{content:"৳";}
.bb-stat-val{font-size:24px;font-weight:800;color:var(--primary);line-height:1;}
.bb-stat-lbl{font-size:12.5px;color:#666;margin-top:4px;}

.bb-acc-section-title{font-size:16px;font-weight:700;color:var(--secondary);margin:24px 0 12px;display:flex;align-items:center;gap:8px;}
.bb-acc-section-title::before{content:"";width:3px;height:18px;background:var(--primary);border-radius:2px;}

/* Recent orders mini list */
.bb-recent-orders{display:flex;flex-direction:column;gap:10px;}
.bb-recent-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;justify-content:space-between;align-items:center;padding:15px 16px;border:1px solid #e8eee5;border-radius:12px;transition:.15s;text-decoration:none!important;color:inherit!important;background:#fff;}
.bb-recent-row:hover{border-color:var(--primary);box-shadow:0 8px 24px rgba(0,102,52,.09);transform:translateY(-1px);}
.bb-recent-row strong{color:var(--secondary);font-weight:800;}
.bb-row-action{font-size:12px;font-weight:800;color:var(--primary);background:#eef7ef;border-radius:999px;padding:7px 10px;white-space:nowrap;}

/* Order status badges */
.bb-status{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600;}
.bb-status-pending{background:#fff4d6;color:#8a6b00;}
.bb-status-processing{background:#dbeafe;color:#1d4ed8;}
.bb-status-on-hold{background:#fce7f3;color:#9d174d;}
.bb-status-shipped,.bb-status-completed{background:#d1fadf;color:#066b3a;}
.bb-status-cancelled,.bb-status-failed,.bb-status-refunded{background:#fee2e2;color:#b91c1c;}

/* Orders list */
.bb-orders-list{display:flex;flex-direction:column;gap:12px;}
.bb-order-card{display:grid;grid-template-columns:minmax(0,1.1fr) auto auto;gap:14px;align-items:center;border:1px solid #e8eee5;border-radius:14px;padding:16px;background:#fff;box-shadow:0 8px 24px rgba(0,51,26,.035);}
.bb-order-card-title{font-size:16px;font-weight:800;color:var(--secondary);text-decoration:none!important;}
.bb-order-card-title:hover{color:var(--primary)!important;}
.bb-order-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:5px;color:#747474;font-size:12.5px;}
.bb-order-total{font-weight:800;color:var(--secondary);text-align:right;white-space:nowrap;}
.bb-order-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.bb-order-actions .button{white-space:nowrap;}
.bb-empty-orders{text-align:center;background:#f8fbf6;border:1px dashed #d4e6ce;border-radius:16px;padding:34px 18px;color:#666;}

/* Order timeline */
.bb-timeline{display:flex;justify-content:space-between;align-items:flex-start;margin:18px 0 30px;position:relative;padding:0 4px;}
.bb-timeline::before{content:"";position:absolute;top:18px;left:8%;right:8%;height:3px;background:#e5e5e5;border-radius:2px;z-index:1;}
.bb-timeline-prog{position:absolute;top:18px;left:8%;height:3px;background:var(--primary);border-radius:2px;z-index:2;transition:width .5s;}
.bb-step{position:relative;z-index:3;text-align:center;flex:1;}
.bb-step-dot{width:38px;height:38px;border-radius:50%;background:#fff;border:3px solid #e5e5e5;display:flex;align-items:center;justify-content:center;margin:0 auto 8px;color:#999;transition:.3s;}
.bb-step-dot svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.bb-step.is-done .bb-step-dot{border-color:var(--primary);background:var(--primary);color:#fff;}
.bb-step.is-current .bb-step-dot{border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 4px rgba(0,102,52,.15);animation:bbPulse 1.6s infinite;}
@keyframes bbPulse{0%,100%{box-shadow:0 0 0 4px rgba(0,102,52,.15);}50%{box-shadow:0 0 0 8px rgba(0,102,52,.05);}}
.bb-step-lbl{font-size:12px;font-weight:600;color:#666;}
.bb-step.is-done .bb-step-lbl,.bb-step.is-current .bb-step-lbl{color:var(--secondary);}

/* WC overrides in account */
.woocommerce-account .woocommerce{display:block;}
.woocommerce-account .woocommerce>.woocommerce-MyAccount-navigation{display:none;}
.woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none;}
.woocommerce-MyAccount-content table.shop_table{border-radius:12px;overflow:hidden;border:1px solid #eee;}
.woocommerce-MyAccount-content table.shop_table th{background:#f7faf3;color:var(--secondary);}
.woocommerce-MyAccount-content .button{background:var(--primary)!important;color:#fff!important;border-radius:8px!important;padding:8px 16px!important;border:0!important;font-weight:600!important;}
.woocommerce-MyAccount-content .button:hover{background:var(--secondary)!important;}
.woocommerce-MyAccount-content .woocommerce-form-row input{height:44px;border:1.5px solid #e4e4e4;border-radius:10px;padding:0 12px;width:100%;}
.woocommerce-MyAccount-content .woocommerce-form-row label{font-weight:600;font-size:13px;margin-bottom:4px;display:block;}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{color:var(--secondary);}

/* Profile / avatar upload card */
.bb-profile-card{display:flex;gap:24px;align-items:center;background:#f9faf6;padding:20px;border-radius:14px;margin-bottom:20px;flex-wrap:wrap;}
.bb-avatar-uploader{position:relative;width:110px;height:110px;border-radius:50%;overflow:hidden;border:4px solid var(--primary);cursor:pointer;flex-shrink:0;background:#fff;}
.bb-avatar-uploader img{width:100%;height:100%;object-fit:cover;}
.bb-avatar-uploader::after{content:"📷 পরিবর্তন";position:absolute;inset:auto 0 0 0;background:rgba(0,0,0,.55);color:#fff;font-size:11px;padding:5px;text-align:center;opacity:0;transition:.2s;}
.bb-avatar-uploader:hover::after{opacity:1;}
.bb-avatar-uploader input{position:absolute;inset:0;opacity:0;cursor:pointer;}

@media(max-width:700px){
	.bb-acc-main.woocommerce-MyAccount-content,.woocommerce-account .bb-acc-main{padding:18px 14px;border-radius:16px;}
	.bb-acc-stats{gap:10px;}
	.bb-stat{padding:14px 10px;}
	.bb-recent-row,.bb-order-card{grid-template-columns:1fr;align-items:start;}
	.bb-row-action,.bb-status,.bb-order-total{text-align:left;justify-self:start;}
	.bb-timeline{overflow-x:auto;gap:12px;padding-bottom:6px;}
	.bb-step{min-width:82px;}
}
