/*
Theme Name: Barnamenevisi Academy
Theme URI: https://barnamenevisi.example
Author: Reza (barnamenevisi)
Author URI: https://barnamenevisi.example
Description: قالب یکپارچه وردپرس + ووکامرس آموزش برنامه‌نویسی. شامل صفحه اصلی (خانه و دستیار هوش مصنوعی)، نقشه راه برنامه‌نویسی، رزومه‌ساز و منابع رایگان — کاملاً سازگار با WooCommerce و راست‌چین (فارسی).
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: barnamenevisi
Tags: rtl-language-support, woocommerce, custom-menu, full-width-template, translation-ready
WC requires at least: 6.0
WC tested up to: 9.0
*/

:root{
  --bnv-bg:#0a0e17;
  --bnv-fg:#e6edf3;
  --bnv-accent:#22c55e;
  --bnv-accent-2:#38bdf8;
  --bnv-card:#111827;
  --bnv-border:#1f2937;
  --bnv-muted:#9ca3af;
}

/* ===== Chrome pages (WooCommerce & regular WP pages) ===== */
body.bnv-chrome{
  margin:0;
  font-family: Vazirmatn, "Segoe UI", Tahoma, sans-serif;
  background:var(--bnv-bg);
  color:var(--bnv-fg);
  line-height:1.9;
  direction:rtl;
}
body.bnv-chrome a{color:var(--bnv-accent-2);text-decoration:none}
body.bnv-chrome a:hover{text-decoration:underline}

.bnv-site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(10,14,23,.85);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--bnv-border);
}
.bnv-header-inner{
  max-width:1200px;margin:0 auto;padding:14px 20px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
}
.bnv-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.15rem;color:var(--bnv-fg)}
.bnv-logo .bnv-dot{width:12px;height:12px;border-radius:50%;background:var(--bnv-accent);box-shadow:0 0 12px var(--bnv-accent)}
.bnv-nav ul{list-style:none;display:flex;gap:6px;margin:0;padding:0;flex-wrap:wrap}
.bnv-nav a{
  display:inline-block;padding:8px 14px;border-radius:10px;color:var(--bnv-fg);
  font-weight:600;font-size:.95rem;transition:background .15s,color .15s;
}
.bnv-nav a:hover{background:var(--bnv-card);color:var(--bnv-accent);text-decoration:none}
.bnv-nav .current-menu-item>a{background:var(--bnv-accent);color:#05230f}

.bnv-cart-link{
  display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;
  border:1px solid var(--bnv-border);color:var(--bnv-fg);font-weight:700;
}
.bnv-cart-link:hover{border-color:var(--bnv-accent);color:var(--bnv-accent);text-decoration:none}

/* Account widget (header) */
.bnv-account{position:relative;display:inline-flex;align-items:center;gap:6px}
.bnv-account .bnv-user-icon{color:var(--bnv-fg);flex:0 0 auto}
.bnv-account--out{
  padding:8px 12px;border-radius:10px;border:1px solid var(--bnv-border);
  font-weight:700;font-size:.95rem;color:var(--bnv-fg);
}
.bnv-account--out a{color:var(--bnv-fg);text-decoration:none}
.bnv-account--out a:hover{color:var(--bnv-accent);text-decoration:none}
.bnv-account--out .bnv-account-sep{color:var(--bnv-muted)}
.bnv-account--in{list-style:none}
.bnv-account--in summary{list-style:none;cursor:pointer}
.bnv-account--in summary::-webkit-details-marker{display:none}
.bnv-account-toggle{
  display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:10px;
  border:1px solid var(--bnv-border);color:var(--bnv-fg);font-weight:700;font-size:.95rem;
  user-select:none;
}
.bnv-account-toggle:hover{border-color:var(--bnv-accent);color:var(--bnv-accent)}
.bnv-account-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bnv-account .bnv-caret{font-size:.75rem;color:var(--bnv-muted)}
.bnv-account[open] .bnv-caret{transform:rotate(180deg)}
.bnv-account-menu{
  position:absolute;top:calc(100% + 8px);inset-inline-end:0;min-width:180px;z-index:60;
  background:var(--bnv-card);border:1px solid var(--bnv-border);border-radius:12px;
  padding:6px;display:flex;flex-direction:column;gap:2px;
  box-shadow:0 12px 30px rgba(0,0,0,.35);
}
.bnv-account-menu a{
  display:block;padding:9px 12px;border-radius:8px;color:var(--bnv-fg);
  font-weight:600;font-size:.92rem;text-decoration:none;
}
.bnv-account-menu a:hover{background:rgba(255,255,255,.06);color:var(--bnv-accent);text-decoration:none}
.bnv-account-menu .bnv-account-logout{color:#ff6b6b}
.bnv-account-menu .bnv-account-logout:hover{color:#ff6b6b;background:rgba(255,107,107,.1)}
@media (max-width:600px){.bnv-account-name{max-width:90px}}

/* ===== In-app injected nav =====
   Injected links reuse each app's OWN link classes and injected buttons reuse
   the app's OWN button classes (cloned at runtime), so colors/size match the
   app automatically (e.g. green on home). The rules below are only fallbacks
   (when there is no sibling class to clone) plus layout + the mobile menu. */
.bnv-inapp-links{display:inline-flex;align-items:center;gap:1.25rem;flex-wrap:wrap}
.bnv-inapp-actions{display:inline-flex;align-items:center;gap:8px}
.bnv-inapp-ico{flex:0 0 auto}
.bnv-inapp-cart{display:inline-flex;align-items:center;gap:4px;text-decoration:none}
.bnv-inapp-authbtn{display:inline-flex;align-items:center;gap:5px;text-decoration:none}
.bnv-inapp-cart-count{font-family:inherit}

/* Fallback look when the app exposes no class to clone. */
.bnv-inapp-link-default{color:inherit;opacity:.85;font-weight:600;font-size:.9rem;text-decoration:none}
.bnv-inapp-link-default:hover{opacity:1}
.bnv-inapp-btn-default{
  display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:11px;
  font-weight:700;font-size:.85rem;color:#22c55e;text-decoration:none;
  background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.5);transition:background .15s;
}
.bnv-inapp-btn-default:hover{background:rgba(34,197,94,.28)}

/* Account dropdown */
.bnv-inapp-acc{position:relative;list-style:none}
.bnv-inapp-acc summary{list-style:none;cursor:pointer}
.bnv-inapp-acc summary::-webkit-details-marker{display:none}
.bnv-inapp-acc-toggle{display:inline-flex;align-items:center;gap:5px}
.bnv-inapp-acc-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bnv-inapp-caret{font-size:.7rem;opacity:.7}
.bnv-inapp-acc[open] .bnv-inapp-caret{transform:rotate(180deg)}
.bnv-inapp-acc-menu{
  position:absolute;top:calc(100% + 8px);inset-inline-end:0;min-width:180px;z-index:9999;
  background:#0f1524;border:1px solid rgba(127,127,127,.3);border-radius:12px;padding:6px;
  display:flex;flex-direction:column;gap:2px;box-shadow:0 12px 30px rgba(0,0,0,.4);
}
.bnv-inapp-acc-menu a{display:block;padding:9px 12px;border-radius:8px;color:#e6f0ff;font-weight:600;font-size:.9rem;text-decoration:none}
.bnv-inapp-acc-menu a:hover{background:rgba(255,255,255,.07)}
.bnv-inapp-acc-menu .bnv-inapp-logout{color:#ff6b6b}

/* Mobile hamburger + dropdown menu */
.bnv-inapp-burger{
  display:none;align-items:center;justify-content:center;width:40px;height:40px;
  border-radius:10px;cursor:pointer;color:inherit;background:transparent;
  border:1px solid rgba(127,127,127,.4);flex:0 0 auto;
}
.bnv-inapp-burger:hover{background:rgba(127,127,127,.15)}
.bnv-inapp-mobile-menu{
  display:none;position:absolute;top:100%;inset-inline:0;z-index:9998;
  background:#0f1524;border-top:1px solid rgba(127,127,127,.25);
  padding:8px;flex-direction:column;gap:2px;box-shadow:0 14px 30px rgba(0,0,0,.5);
}
.bnv-inapp-mobile-menu.open{display:flex}
.bnv-inapp-mlink{display:block;padding:12px 14px;border-radius:9px;color:#e6f0ff;font-weight:600;font-size:.95rem;text-decoration:none}
.bnv-inapp-mlink:hover{background:rgba(255,255,255,.07)}

/* Mobile optimisations: hide inline links (use hamburger), hide the account
   name, keep everything compact and side-by-side. */
@media (max-width:767px){
  .bnv-inapp-link{display:none !important}
  .bnv-inapp-links{display:none !important}
  .bnv-inapp-burger{display:inline-flex}
  .bnv-inapp-acc-name{display:none}
  .bnv-inapp-actions{gap:6px}
}

.bnv-main{max-width:1200px;margin:0 auto;padding:32px 20px;min-height:60vh}

.bnv-site-footer{
  border-top:1px solid var(--bnv-border);
  background:#070a11;
  padding:28px 20px;text-align:center;color:var(--bnv-muted);font-size:.9rem;
}
.bnv-site-footer a{color:var(--bnv-accent)}

/* WooCommerce niceties on dark chrome */
body.bnv-chrome .woocommerce ul.products li.product,
body.bnv-chrome .woocommerce-page ul.products li.product{background:var(--bnv-card);border:1px solid var(--bnv-border);border-radius:14px;padding:14px}
body.bnv-chrome .woocommerce span.price,
body.bnv-chrome .woocommerce .price{color:var(--bnv-accent)}
body.bnv-chrome .woocommerce a.button,
body.bnv-chrome .woocommerce button.button,
body.bnv-chrome .woocommerce .button{
  background:var(--bnv-accent);color:#05230f;border-radius:10px;font-weight:700;
}
body.bnv-chrome .woocommerce a.button:hover,
body.bnv-chrome .woocommerce button.button:hover{background:var(--bnv-accent-2);color:#03131f}

/* ===== App pages (full-screen React apps) ===== */
body.bnv-app-page{margin:0;padding:0;background:#0a0e17}
body.bnv-app-page #root{min-height:100vh}

/* ============================================================
   WooCommerce — dark RTL styling to match the app aesthetic
   (Shop, Product, Cart, Checkout, My Account, Login/Register)
   ============================================================ */

body.bnv-chrome .woocommerce,
body.bnv-chrome .woocommerce-page{ color:var(--bnv-fg); }

/* Notices */
body.bnv-chrome .woocommerce-message,
body.bnv-chrome .woocommerce-info,
body.bnv-chrome .woocommerce-error,
body.bnv-chrome .woocommerce-noreviews{
  background:var(--bnv-card);border:1px solid var(--bnv-border);
  border-inline-start:4px solid var(--bnv-accent);
  color:var(--bnv-fg);border-radius:12px;padding:14px 18px;
}
body.bnv-chrome .woocommerce-error{border-inline-start-color:#f43f5e}

/* Shop product grid */
body.bnv-chrome .woocommerce ul.products{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:0}
body.bnv-chrome .woocommerce ul.products li.product{
  background:var(--bnv-card);border:1px solid var(--bnv-border);border-radius:16px;
  padding:16px;text-align:center;transition:transform .15s,border-color .15s,box-shadow .15s;
}
body.bnv-chrome .woocommerce ul.products li.product:hover{
  transform:translateY(-4px);border-color:var(--bnv-accent);
  box-shadow:0 10px 30px rgba(0,0,0,.4);
}
body.bnv-chrome .woocommerce ul.products li.product img{border-radius:12px;margin-bottom:12px}
body.bnv-chrome .woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--bnv-fg);font-size:1rem;font-weight:700}
body.bnv-chrome .woocommerce ul.products li.product .price{color:var(--bnv-accent);font-weight:800}
body.bnv-chrome .woocommerce ul.products li.product .price del{color:var(--bnv-muted)}

/* Single product */
body.bnv-chrome .woocommerce div.product .product_title{color:var(--bnv-fg)}
body.bnv-chrome .woocommerce div.product p.price,
body.bnv-chrome .woocommerce div.product span.price{color:var(--bnv-accent);font-weight:800}
body.bnv-chrome .woocommerce .woocommerce-tabs ul.tabs li{background:var(--bnv-card);border-color:var(--bnv-border)}
body.bnv-chrome .woocommerce .woocommerce-tabs ul.tabs li.active{background:var(--bnv-bg)}

/* Buttons */
body.bnv-chrome .woocommerce a.button,
body.bnv-chrome .woocommerce button.button,
body.bnv-chrome .woocommerce input.button,
body.bnv-chrome .woocommerce #respond input#submit,
body.bnv-chrome .woocommerce .button.alt{
  background:var(--bnv-accent);color:#05230f;border:0;border-radius:10px;
  font-weight:800;padding:12px 20px;transition:background .15s,transform .1s;
}
body.bnv-chrome .woocommerce a.button:hover,
body.bnv-chrome .woocommerce button.button:hover,
body.bnv-chrome .woocommerce .button.alt:hover{background:var(--bnv-accent-2);color:#03131f;transform:translateY(-1px)}

/* Forms / inputs */
body.bnv-chrome .woocommerce form .form-row input.input-text,
body.bnv-chrome .woocommerce form .form-row textarea,
body.bnv-chrome .woocommerce .select2-container--default .select2-selection--single,
body.bnv-chrome .woocommerce select,
body.bnv-chrome .woocommerce #order_comments{
  background:#0d1420;color:var(--bnv-fg);border:1px solid var(--bnv-border);
  border-radius:10px;padding:12px 14px;width:100%;
}
body.bnv-chrome .woocommerce form .form-row label{color:var(--bnv-fg);font-weight:600;margin-bottom:6px;display:block}

/* ---------- My Account (dashboard + login/register) ---------- */
body.bnv-chrome .woocommerce-account .woocommerce{max-width:1000px;margin:0 auto}

/* Account navigation tabs */
body.bnv-chrome .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
body.bnv-chrome .woocommerce-MyAccount-navigation li{margin:0}
body.bnv-chrome .woocommerce-MyAccount-navigation li a{
  display:block;padding:10px 16px;border-radius:10px;background:var(--bnv-card);
  border:1px solid var(--bnv-border);color:var(--bnv-fg);font-weight:600;
}
body.bnv-chrome .woocommerce-MyAccount-navigation li.is-active a{background:var(--bnv-accent);color:#05230f;border-color:transparent}
body.bnv-chrome .woocommerce-MyAccount-content{margin-top:20px;background:var(--bnv-card);border:1px solid var(--bnv-border);border-radius:16px;padding:24px}

/* Login / Register two-column cards */
body.bnv-chrome .woocommerce .u-columns.col2-set,
body.bnv-chrome .woocommerce .customer_login,
body.bnv-chrome .woocommerce-account .u-columns{
  display:grid;grid-template-columns:1fr;gap:22px;max-width:960px;margin:20px auto;
}
@media (min-width:760px){
  body.bnv-chrome .woocommerce .u-columns.col2-set,
  body.bnv-chrome .woocommerce .customer_login{grid-template-columns:1fr 1fr}
}
body.bnv-chrome .woocommerce .col-1,
body.bnv-chrome .woocommerce .col-2{
  width:auto !important;float:none !important;
  background:var(--bnv-card);border:1px solid var(--bnv-border);
  border-radius:18px;padding:26px;
}
body.bnv-chrome .woocommerce .col-1 h2,
body.bnv-chrome .woocommerce .col-2 h2{
  color:var(--bnv-accent);font-size:1.35rem;margin:0 0 14px;
  border-bottom:1px solid var(--bnv-border);padding-bottom:12px;
}
body.bnv-chrome .woocommerce form.login,
body.bnv-chrome .woocommerce form.register{border:0;padding:0;margin:0}
body.bnv-chrome .woocommerce-form__label-for-checkbox{color:var(--bnv-muted)}
body.bnv-chrome .woocommerce .lost_password a{color:var(--bnv-accent-2)}

/* Cart & checkout tables */
body.bnv-chrome .woocommerce table.shop_table{background:var(--bnv-card);border:1px solid var(--bnv-border);border-radius:14px;overflow:hidden}
body.bnv-chrome .woocommerce table.shop_table th,
body.bnv-chrome .woocommerce table.shop_table td{border-color:var(--bnv-border);color:var(--bnv-fg)}
body.bnv-chrome .woocommerce .cart_totals h2,
body.bnv-chrome .woocommerce-checkout h3{color:var(--bnv-fg)}
