/*
Theme Name: Amraoui Store
Theme URI: https://amraoui.store
Author: Amraoui Store
Description: Thème WooCommerce RTL (arabe) pour boutique généraliste au Maroc — catégories avec images, sections d'offres, cartes produit avec remise, formulaire COD express sur la page produit.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
WC requires at least: 7.0
Text Domain: amraoui-store
License: GPLv2 or later
*/

:root{
  --primary:#0B3D91;      /* bleu nuit */
  --primary-dark:#072a66;
  --accent:#FF6A00;       /* orange bouton acheter */
  --accent-dark:#e05d00;
  --sale:#E11D48;         /* badge remise */
  --ok:#16A34A;
  --bg:#F5F7FB;
  --card:#FFFFFF;
  --text:#1F2937;
  --muted:#6B7280;
  --border:#E5E7EB;
  --radius:12px;
  --shadow:0 2px 10px rgba(15,23,42,.06);
}
*{box-sizing:border-box}
html{direction:rtl}
body{margin:0;font-family:'Tajawal','Cairo',system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;font-size:15px}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{max-width:1240px;margin:0 auto;padding:0 14px}
button,input,select,textarea{font-family:inherit}

/* ---------- Top bar ---------- */
.topbar{background:var(--primary-dark);color:#fff;font-size:13px;text-align:center;padding:6px 10px}
.topbar strong{color:#FFD166}

/* ---------- Header ---------- */
.site-header{background:#fff;box-shadow:var(--shadow);position:sticky;top:0;z-index:50}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px}
.site-logo img{max-height:52px;width:auto}
.site-logo .logo-text{font-size:24px;font-weight:800;color:var(--primary)}
.site-logo .logo-text span{color:var(--accent)}
.header-search{flex:1;max-width:520px}
.header-search form{display:flex;border:2px solid var(--primary);border-radius:30px;overflow:hidden;background:#fff}
.header-search input{flex:1;border:0;padding:9px 14px;outline:0;font-size:14px}
.header-search button{background:var(--primary);color:#fff;border:0;padding:0 18px;cursor:pointer;font-weight:700}
.header-actions{display:flex;align-items:center;gap:14px}
.header-phone{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.header-phone b{display:block;color:var(--primary);font-size:16px;direction:ltr}
.icon-btn{position:relative;width:42px;height:42px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center}
.icon-btn svg{width:22px;height:22px}
.icon-btn .count{position:absolute;top:-4px;left:-4px;background:var(--sale);color:#fff;font-size:11px;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;font-weight:700}
@media(max-width:820px){
  .header-inner{flex-wrap:wrap}
  .header-search{order:3;max-width:none;flex-basis:100%}
  .header-phone .txt{display:none}
}

/* ---------- Catégories avec images ---------- */
.cat-strip{background:#fff;border-top:1px solid var(--border);padding:12px 0}
.cat-list{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.cat-list::-webkit-scrollbar{display:none}
.cat-item{flex:0 0 auto;width:92px;text-align:center;font-size:12.5px;font-weight:600}
.cat-item{display:block}
.cat-item .thumb{display:block;width:72px;height:72px;margin:0 auto 6px;border-radius:50%;overflow:hidden;background:var(--bg);border:2px solid var(--border);transition:.2s}
.cat-item .thumb img{width:100%;height:100%;object-fit:cover}
.cat-item:hover .thumb{border-color:var(--accent);transform:translateY(-2px)}

/* ---------- Hero ---------- */
.hero{margin:18px 0}
.hero-box{border-radius:var(--radius);overflow:hidden;position:relative;min-height:220px;background:linear-gradient(120deg,var(--primary) 0%,#1E5BD8 60%,var(--accent) 140%);color:#fff;display:flex;align-items:center}
.hero-box.has-img{background-size:cover;background-position:center}
.hero-box.has-img:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.05),rgba(7,42,102,.75))}
.hero-content{position:relative;padding:28px;max-width:560px}
.hero-content h1{margin:0 0 8px;font-size:30px;line-height:1.3}
.hero-content p{margin:0 0 16px;opacity:.95}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:30px;padding:11px 22px;font-weight:800;cursor:pointer;font-size:15px;transition:.2s}
.btn-accent{background:var(--accent);color:#fff}
.btn-accent:hover{background:var(--accent-dark)}
.btn-light{background:#fff;color:var(--primary)}

/* ---------- Sections produits ---------- */
.section{margin:26px 0}
.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.section-head h2{margin:0;font-size:21px;position:relative;padding-right:12px}
.section-head h2:before{content:"";position:absolute;right:0;top:6px;bottom:6px;width:4px;border-radius:2px;background:var(--accent)}
.section-head a{color:var(--primary);font-weight:700;font-size:14px}
.products-grid,ul.products{display:grid!important;grid-template-columns:repeat(5,1fr);gap:14px;list-style:none;margin:0!important;padding:0!important}
ul.products:before,ul.products:after{display:none!important}
@media(max-width:1100px){.products-grid,ul.products{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){.products-grid,ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.products-grid,ul.products{grid-template-columns:repeat(2,1fr);gap:10px}}

/* ---------- Carte produit ---------- */
.p-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;position:relative;width:auto!important;margin:0!important;float:none!important;transition:.2s}
.p-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(15,23,42,.1)}
.p-card .p-img{display:block;aspect-ratio:1/1;background:#fff;overflow:hidden;display:block}
.p-card .p-img img{width:100%;height:100%;object-fit:cover;transition:.3s}
.p-card:hover .p-img img{transform:scale(1.04)}
.p-badge{position:absolute;top:10px;right:10px;background:var(--sale);color:#fff;font-size:12px;font-weight:800;padding:3px 9px;border-radius:20px;z-index:2}
.p-fav{position:absolute;top:8px;left:8px;width:32px;height:32px;border-radius:50%;background:#fff;border:0;box-shadow:var(--shadow);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}
.p-fav svg{width:17px;height:17px;fill:none;stroke:var(--sale);stroke-width:2}
.p-fav.active svg{fill:var(--sale)}
.p-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px;flex:1}
.p-title{font-size:14px;font-weight:700;line-height:1.45;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:40px}
.p-stock{font-size:12px;font-weight:700}
.p-stock.in{color:var(--ok)}
.p-stock.out{color:var(--sale)}
.p-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:auto}
.p-price .now{font-size:17px;font-weight:800;color:var(--accent)}
.p-price .old{font-size:13px;color:var(--muted);text-decoration:line-through}
.p-buy{margin-top:6px;width:100%;padding:9px;font-size:14px}
.p-card.is-out .p-buy{background:#9CA3AF}

/* ---------- Trust bar ---------- */
.trust{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:18px;margin:30px 0}
.trust-item{display:flex;align-items:center;gap:10px}
.trust-item .ic{flex:0 0 46px;height:46px;border-radius:50%;background:#EEF3FF;color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:22px}
.trust-item b{display:block;font-size:14.5px}
.trust-item span{font-size:12.5px;color:var(--muted)}
@media(max-width:820px){.trust{grid-template-columns:repeat(2,1fr)}}

/* ---------- Social ---------- */
.social-box{background:var(--primary);color:#fff;border-radius:var(--radius);padding:22px;text-align:center;margin:30px 0}
.social-box h3{margin:0 0 12px;font-size:19px}
.social-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.social-links a{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;transition:.2s}
.social-links a:hover{background:var(--accent)}
.social-links svg{width:22px;height:22px;fill:#fff}

/* ---------- Footer ---------- */
.site-footer{background:#0F172A;color:#CBD5E1;margin-top:40px;padding:36px 0 0;font-size:14px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:26px}
.site-footer h4{color:#fff;margin:0 0 12px;font-size:16px}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li{margin-bottom:8px}
.site-footer a:hover{color:var(--accent)}
.footer-bottom{border-top:1px solid #1E293B;margin-top:26px;padding:14px 0;text-align:center;font-size:13px}
@media(max-width:820px){.footer-grid{grid-template-columns:1fr}}

/* ---------- WhatsApp flottant ---------- */
.wa-float{position:fixed;bottom:18px;left:18px;width:56px;height:56px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.25);z-index:90}
.wa-float svg{width:30px;height:30px;fill:#fff}
body.single-product .wa-float{bottom:84px}
@media(min-width:821px){body.single-product .wa-float{bottom:18px}}

/* ---------- Page produit ---------- */
.single-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin:20px 0}
@media(max-width:820px){.single-wrap{grid-template-columns:minmax(0,1fr);padding:12px}}
.woocommerce div.product div.images{width:100%!important;float:none!important;margin:0!important}
.woocommerce div.product div.summary{width:100%!important;float:none!important;margin:0!important}
.woocommerce div.product .product_title{font-size:24px;line-height:1.4;margin:0 0 8px}
.single-price{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:6px 0 10px}
.single-price .now{font-size:30px;font-weight:800;color:var(--accent)}
.single-price .old{font-size:18px;color:var(--muted);text-decoration:line-through}
.single-price .save{background:var(--sale);color:#fff;font-weight:800;border-radius:20px;padding:3px 12px;font-size:13px}
.single-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.single-badges div{background:var(--bg);border-radius:10px;padding:8px;text-align:center;font-size:12.5px;font-weight:700}
.single-badges i{display:block;font-style:normal;font-size:20px}
.woocommerce div.product form.cart{display:none!important}

/* ---------- Formulaire COD ---------- */
.cod-box{border:2px dashed var(--accent);border-radius:var(--radius);padding:16px;margin:14px 0;background:#FFF8F2}
.cod-box h3{margin:0 0 4px;font-size:18px;text-align:center}
.cod-box .sub{text-align:center;color:var(--muted);font-size:13px;margin:0 0 12px}
.cod-field{margin-bottom:10px}
.cod-field label{display:block;font-weight:700;font-size:13.5px;margin-bottom:4px}
.cod-field input,.cod-field select{width:100%;border:1.5px solid var(--border);border-radius:10px;padding:11px 12px;font-size:15px;background:#fff;outline:0}
.cod-field input:focus,.cod-field select:focus{border-color:var(--accent)}
.cod-field input[type=tel]{direction:ltr;text-align:right}
.cod-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cod-qty{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:10px;overflow:hidden;background:#fff;width:max-content}
.cod-qty button{width:42px;height:44px;border:0;background:var(--bg);font-size:20px;cursor:pointer}
.cod-qty input{width:52px;text-align:center;border:0!important;padding:0!important;font-weight:800}
.cod-total{display:flex;justify-content:space-between;font-weight:800;font-size:16px;margin:10px 0;padding:10px;background:#fff;border-radius:10px}
.cod-total .v{color:var(--accent)}
.cod-submit{width:100%;font-size:18px;padding:14px;animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,106,0,.5)}70%{box-shadow:0 0 0 12px rgba(255,106,0,0)}100%{box-shadow:0 0 0 0 rgba(255,106,0,0)}}
.cod-submit[disabled]{opacity:.7;animation:none}
.cod-msg{margin-top:8px;font-weight:700;text-align:center;font-size:14px}
.cod-msg.err{color:var(--sale)}
.cod-wa{width:100%;margin-top:8px;background:#25D366;color:#fff}
.hp-field{position:absolute!important;left:-9999px!important;height:0;width:0;opacity:0}
.cod-out{background:#FEE2E2;color:var(--sale);border-radius:10px;padding:12px;text-align:center;font-weight:800}

/* Barre mobile sticky */
.sticky-buy{position:fixed;bottom:0;right:0;left:0;background:#fff;box-shadow:0 -4px 14px rgba(0,0,0,.1);padding:10px 14px;display:none;align-items:center;gap:10px;z-index:80}
.sticky-buy .pr{font-weight:800;color:var(--accent);font-size:18px;white-space:nowrap}
.sticky-buy .btn{flex:1}
@media(max-width:820px){body.single-product .sticky-buy{display:flex}body.single-product{padding-bottom:70px}}

.product-desc{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin:20px 0}
.product-desc h2{margin-top:0;font-size:20px}
.woocommerce-tabs{display:none}

/* ---------- Archive / pages ---------- */
.page-box{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;margin:20px 0}
.woocommerce-products-header__title,.page-title{font-size:24px;margin:18px 0 10px}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{margin-bottom:14px}
.woocommerce nav.woocommerce-pagination ul{border:0}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0 3px}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border-radius:8px;background:#fff;padding:8px 13px}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--primary);color:#fff}
.woocommerce-breadcrumb{font-size:13px;color:var(--muted);margin:14px 0 0!important}

/* ---------- Merci ---------- */
.thanks-box{text-align:center;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:28px 18px;margin:20px 0}
.thanks-box .check{width:74px;height:74px;border-radius:50%;background:var(--ok);color:#fff;font-size:40px;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}
.thanks-box h2{margin:0 0 6px}
.woocommerce-order-details,.woocommerce-customer-details{background:#fff;border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}

/* Favoris */
.fav-empty{text-align:center;color:var(--muted);padding:30px}

/* Correctifs */
html,body{overflow-x:hidden}
.single-wrap>*{min-width:0}
.btn svg{width:20px;height:20px;fill:currentColor;flex:0 0 auto}
.woocommerce-product-gallery{max-width:100%;overflow:hidden;border-radius:var(--radius)}
.woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:6px;margin-top:8px!important;padding:0;list-style:none}
.woocommerce-product-gallery .flex-control-thumbs li{width:70px!important;float:none!important}
