/* =====================================================================
   Pahari — My Account (login / register + dashboard)
   Loaded only on is_account_page().
   ===================================================================== */

/* Kill WooCommerce's grid bridge that breaks our layout. */
.woocommerce-account .woocommerce { display: block; }

/* ---------- Auth (login / register) ---------- */
.auth-wrap{
	display:grid;grid-template-columns:1fr 1fr;gap:0;
	max-width:980px;margin:8px auto 0;background:#fff;
	border:1px solid var(--border);border-radius:var(--r-xl);
	overflow:hidden;box-shadow:var(--sh-md);
}
.auth-wrap.auth-single{max-width:480px;grid-template-columns:1fr}
.auth-single .auth-side{display:none}

.auth-side{
	position:relative;background:var(--grad-green);color:#fff;
	padding:44px 38px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;
}
.auth-side::after{
	content:'';position:absolute;bottom:-90px;right:-70px;width:300px;height:300px;
	background:radial-gradient(circle,rgba(232,116,15,.35),transparent 70%);filter:blur(30px);
}
.auth-side .logo-mark{width:54px;height:54px;font-size:26px;margin-bottom:22px;display:grid;place-items:center;background:rgba(255,255,255,.14);border-radius:14px}
.auth-side h2{color:#fff;font-size:1.9rem;margin-bottom:12px;line-height:1.25}
.auth-side p{color:rgba(255,255,255,.82);font-size:.96rem;position:relative;z-index:1}
.auth-perks{margin-top:26px;display:flex;flex-direction:column;gap:12px;position:relative;z-index:1}
.auth-perks .p{display:flex;align-items:center;gap:11px;font-size:.92rem}
.auth-perks .p .i{width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.14);display:grid;place-items:center;flex-shrink:0}

.auth-main{padding:40px clamp(26px,4vw,46px)}
.auth-tabs{display:flex;gap:6px;background:var(--gray-50);border-radius:var(--r-pill);padding:5px;margin-bottom:26px}
.auth-tab{flex:1;padding:11px;border-radius:var(--r-pill);font-weight:600;color:var(--gray-500);background:transparent;border:0;cursor:pointer;transition:all var(--t-fast)}
.auth-tab.active{background:#fff;color:var(--orange-600);box-shadow:var(--sh-xs)}

.auth-form{display:none}
.auth-form.active{display:block;animation:fadeUp .35s var(--ease-out)}
.auth-main .field{margin-bottom:16px}
.auth-main .field label{display:block;font-size:.86rem;font-weight:600;margin-bottom:6px;color:var(--text-soft)}
.auth-main .input{width:100%}
.auth-main .sub{font-size:.84rem;color:var(--text-soft);margin-bottom:16px}

.auth-row{display:flex;justify-content:space-between;align-items:center;margin:4px 0 18px;font-size:.86rem}
.auth-row a{color:var(--orange-600);font-weight:600}

/* WooCommerce inline errors inside the auth card */
.auth-main .woocommerce-error,
.auth-main .woocommerce-message,
.auth-main .woocommerce-info{
	list-style:none;margin:0 0 16px;padding:12px 14px;border-radius:var(--r-sm);
	font-size:.88rem;border:1px solid var(--border);background:var(--off-white);
}
.auth-main .woocommerce-error{border-color:#f3c2bd;background:#fdeceb;color:#a3271b}

@media(max-width:780px){.auth-wrap{grid-template-columns:1fr}.auth-side{display:none}}

/* ---------- Dashboard (logged-in) ----------
   .pahari-account-grid is OUR OWN wrapper class (woocommerce/myaccount/
   my-account.php) around the nav + content — guaranteed to exist, unlike
   relying on WooCommerce's ".woocommerce-account .woocommerce" ancestor
   (which didn't reliably match on every install, leaving the dashboard as
   two unstyled, mis-stacked blocks instead of a proper sidebar layout). */
.pahari-account-grid{
	display:grid;grid-template-columns:248px 1fr;gap:24px;align-items:start;max-width:1080px;margin:0 auto;
}
.pahari-account-nav ul{list-style:none;margin:0;padding:8px;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
.pahari-account-nav li{margin:0}
.pahari-account-nav li a{
	display:flex;align-items:center;gap:11px;padding:11px 14px;border-radius:var(--r-sm);font-weight:600;
	color:var(--text-soft);transition:all var(--t-fast);
}
.pahari-account-nav-ico{display:inline-flex;flex-shrink:0;color:inherit}
.pahari-account-nav li a:hover{background:var(--off-white);color:var(--orange-600)}
.pahari-account-nav li.is-active a{background:var(--orange-100,#fef0e3);color:var(--orange-600)}
.woocommerce-MyAccount-content{
	background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);
	padding:clamp(20px,3vw,30px);box-shadow:var(--sh-xs);min-height:320px;
}
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3{margin-top:0}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table{width:100%;border-collapse:collapse;font-size:.9rem}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table th,
.woocommerce-account .woocommerce-MyAccount-content table.shop_table td{padding:10px;border-bottom:1px solid var(--border);text-align:left}
.woocommerce-account .addresses .col-1,
.woocommerce-account .addresses .col-2{float:none;width:auto;margin-bottom:18px}

@media(max-width:760px){.pahari-account-grid{grid-template-columns:1fr}}

/* ---------- Dashboard welcome card + quick links (myaccount/dashboard.php) ---------- */
.acc-welcome{padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--border)}
.acc-welcome p{margin:0 0 6px;font-size:.96rem;color:var(--ink)}
.acc-welcome p:last-child{margin-bottom:0}
.acc-welcome a{color:var(--orange-600);font-weight:600}
/* Label sits on its own line ABOVE the number/badge/button row — previously
   all four shared one flex row and wrapped unpredictably at normal sidebar
   widths (Bengali status names run long), leaving "বিস্তারিত দেখুন" stranded
   alone on a second line, pinned left with a large dead gap beside it. */
.acc-recent-order{background:var(--off-white);border:1px solid var(--border);border-radius:var(--r-md);padding:14px 18px;margin-bottom:22px}
.acc-ro-label{display:block;margin-bottom:8px}
.acc-ro-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.acc-recent-order .info{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.acc-recent-order b{font-family:var(--font-num);color:var(--ink)}
.acc-ro-row .btn{flex-shrink:0;margin-left:auto}
.acc-quicklinks{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.acc-qlink{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:20px 12px;background:var(--off-white);border:1px solid var(--border);border-radius:var(--r-md);color:var(--gray-600);font-weight:600;font-size:.86rem;transition:all var(--t-fast)}
.acc-qlink:hover{border-color:var(--orange-400);color:var(--orange-600);background:#fff;box-shadow:var(--sh-xs)}
.acc-qlink svg{color:var(--orange-500)}
@media(max-width:480px){.acc-quicklinks{grid-template-columns:1fr 1fr}}

/* ---------- Orders list (myaccount/orders.php) ---------- */
.acc-orders{display:flex;flex-direction:column;gap:12px}
.acc-order-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:var(--off-white);border:1px solid var(--border);border-radius:var(--r-md)}
.aor-main{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.aor-number{font-family:var(--font-num);font-weight:700;color:var(--ink)}
.aor-number:hover{color:var(--orange-600)}
.aor-date{font-size:.85rem;color:var(--text-soft)}
.aor-meta{font-size:.88rem;color:var(--gray-600);flex:1 1 auto}
.aor-meta b,.aor-meta .amount{font-family:var(--font-num);color:var(--ink)}
.aor-actions{display:flex;gap:8px;flex-wrap:wrap}
.acc-pagination{display:flex;justify-content:center;gap:10px;margin-top:18px}

.acc-empty{text-align:center;padding:40px 20px;color:var(--text-soft)}
.acc-empty-ico{color:var(--gray-300);margin-bottom:12px;display:flex;justify-content:center}
.acc-empty p{margin-bottom:16px;font-size:.95rem}

/* ---------- View Order (myaccount/view-order.php) ---------- */
.acc-order-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.acc-order-head-main h2{margin:0 0 4px;font-size:1.2rem}
.acc-order-head-main .muted{font-size:.86rem;color:var(--text-soft)}

/* Status stepper — a plain <ol>, each step a dot + label. .is-done dots turn
   solid orange with a check; .is-current gets a glow ring; .is-todo stays
   muted/outlined. The connecting line is a pseudo-element so it works
   regardless of how many steps there are. */
.acc-progress{display:flex;list-style:none;margin:0 0 26px;padding:0}
.acc-progress-step{flex:1;position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.acc-progress-step:not(:last-child)::after{content:'';position:absolute;top:15px;left:calc(50% + 24px);right:calc(-50% + 24px);height:2px;background:var(--border)}
.acc-progress-step.is-done:not(:last-child)::after{background:var(--orange-500)}
.acc-progress-dot{position:relative;z-index:1;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:.82rem;font-weight:700;background:#fff;border:2px solid var(--border);color:var(--text-soft)}
.acc-progress-step.is-done .acc-progress-dot{background:var(--orange-500);border-color:var(--orange-500);color:#fff}
.acc-progress-step.is-current .acc-progress-dot{border-color:var(--orange-500);color:var(--orange-600);box-shadow:0 0 0 4px var(--orange-100,#fef0e3)}
.acc-progress-label{font-size:.82rem;color:var(--text-soft);font-weight:600}
.acc-progress-step.is-current .acc-progress-label,
.acc-progress-step.is-done .acc-progress-label{color:var(--ink)}
@media(max-width:480px){.acc-progress-label{font-size:.72rem}}

.acc-order-problem{padding:14px 18px;border-radius:var(--r-md);font-weight:700;text-align:center;margin-bottom:22px}
.acc-order-problem-cancelled,.acc-order-problem-failed{background:#fdeceb;color:#a3271b}
.acc-order-problem-refunded{background:#f7f4dd;color:#6b6528}

.acc-order-updates{margin-bottom:26px}
.acc-order-updates h3{font-size:.95rem;margin-bottom:10px}
.acc-order-updates-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.acc-order-updates-list li{background:var(--off-white);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 16px}
.acc-update-meta{font-size:.78rem;color:var(--text-soft);margin:0 0 4px}
.acc-update-body{font-size:.88rem;color:var(--ink)}
.acc-update-body p{margin:0}

/* ---------- Addresses (myaccount/my-address.php) ---------- */
.acc-addresses{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:16px}
.acc-address-card{background:var(--off-white);border:1px solid var(--border);border-radius:var(--r-md);padding:20px}
.acc-address-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border)}
.acc-address-card header h3{margin:0;font-size:1rem}
.acc-address-card address{font-style:normal;font-size:.9rem;color:var(--gray-600);line-height:1.7}
@media(max-width:640px){.acc-addresses{grid-template-columns:1fr}}

/* ---------- Generic form styling — covers account-details, address-edit,
   and any other un-overridden WooCommerce account form so nothing shown
   inside .woocommerce-MyAccount-content ever looks like raw browser defaults. ---------- */
.woocommerce-MyAccount-content .form-row{margin-bottom:18px}
.woocommerce-MyAccount-content .frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.woocommerce-MyAccount-content .form-row-first,
.woocommerce-MyAccount-content .form-row-last{margin-bottom:0}
.woocommerce-MyAccount-content label{display:block;font-size:.88rem;font-weight:600;color:var(--gray-600);margin-bottom:7px}
.woocommerce-MyAccount-content .required{color:var(--danger);text-decoration:none}
.woocommerce-MyAccount-content input.input-text,
.woocommerce-MyAccount-content select,
.woocommerce-MyAccount-content textarea{
	width:100%;padding:12px 15px;border:1.5px solid var(--border);border-radius:var(--r-md);
	background:#fff;font-family:inherit;font-size:.95rem;color:var(--ink);transition:all var(--t-fast);
}
.woocommerce-MyAccount-content input.input-text:focus,
.woocommerce-MyAccount-content select:focus,
.woocommerce-MyAccount-content textarea:focus{outline:none;border-color:var(--orange-400)}
.woocommerce-MyAccount-content .sub{font-size:.8rem;color:var(--text-soft);display:block;margin-top:6px}
.woocommerce-MyAccount-content fieldset{border:1px dashed var(--border);border-radius:var(--r-md);padding:18px;margin:22px 0}
.woocommerce-MyAccount-content fieldset legend{padding:0 8px;font-weight:700;color:var(--ink);font-size:.92rem}
.woocommerce-MyAccount-content button.woocommerce-Button,
.woocommerce-MyAccount-content .woocommerce-button{
	background:var(--orange-500);color:#fff;border:none;padding:12px 26px;border-radius:var(--r-pill);
	font-weight:700;cursor:pointer;transition:all var(--t-fast);
}
.woocommerce-MyAccount-content button.woocommerce-Button:hover,
.woocommerce-MyAccount-content .woocommerce-button:hover{background:var(--orange-600);transform:translateY(-1px)}
@media(max-width:640px){.woocommerce-MyAccount-content .frow{grid-template-columns:1fr}}
