﻿*{margin:0;padding:0;box-sizing:border-box}
html{direction:rtl;scroll-behavior:smooth}
body{font-family:'Cairo','Tajawal','Segoe UI','Tahoma',sans-serif;background:#f8faf8;color:#1a1a2e;line-height:1.7;overflow-x:hidden}
a{color:#00875a;text-decoration:none;transition:.3s}
a:hover{color:#006644}

/* ===== ANIMATIONS ===== */
@keyframes fadeInUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInDown{from{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInLeft{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}
@keyframes fadeInRight{from{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:translateX(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes scaleIn{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
@keyframes slideInRight{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}
@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}100%{transform:scale(1);opacity:1}}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes glow{0%,100%{box-shadow:0 0 5px rgba(0,135,90,.3)}50%{box-shadow:0 0 20px rgba(0,135,90,.6)}}
@keyframes typewriter{from{width:0}to{width:100%}}
@keyframes blink{50%{border-color:transparent}}
@keyframes rotateIn{from{transform:rotate(-180deg) scale(0);opacity:0}to{transform:rotate(0) scale(1);opacity:1}}
@keyframes slideUp{from{opacity:0;transform:translate(0,20px)}to{opacity:1;transform:translate(0,0)}}
@keyframes ripple{to{transform:scale(4);opacity:0}}

.animate-on-scroll{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.175,.885,.32,1.275)}
.animate-on-scroll.visible{opacity:1;transform:translateY(0)}
.animate-on-scroll.delay-1{transition-delay:.1s}
.animate-on-scroll.delay-2{transition-delay:.2s}
.animate-on-scroll.delay-3{transition-delay:.3s}
.animate-on-scroll.delay-4{transition-delay:.4s}
.animate-on-scroll.delay-5{transition-delay:.5s}
.animate-on-scroll.delay-6{transition-delay:.6s}

/* ===== NAVBAR ===== */
.topbar{background:rgba(10,15,13,.92);padding:0 2rem;border-bottom:1px solid #21302a;backdrop-filter:blur(12px);box-shadow:0 2px 20px rgba(0,0,0,.35);position:sticky;top:0;z-index:1000}
.topbar-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;height:66px;gap:12px;flex-wrap:wrap}
.topbar-brand{display:flex;align-items:center;gap:12px;color:#f3faf6;font-size:1.6rem;font-weight:900;text-decoration:none}
.topbar-logo{height:36px;width:auto;max-width:190px;display:block;filter:drop-shadow(0 4px 18px rgba(0,196,126,.3))}
.topbar-nav{display:flex;list-style:none;gap:4px;align-items:center;flex-wrap:wrap}
.topbar-nav li a{color:#9fb3aa;padding:8px 16px;border-radius:10px;font-weight:700;transition:all .2s;font-size:.9rem;text-decoration:none}
.topbar-nav li a:hover,.topbar-nav li a.active{color:#00c47e;background:rgba(0,196,126,.1)}
.cart-link{position:relative;display:flex;align-items:center;gap:8px}
.cart-badge{background:#ff4757;color:#fff;border-radius:50%;min-width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;position:absolute;top:-6px;left:-6px;box-shadow:0 2px 8px rgba(255,71,87,.4)}
.topbar-actions{display:flex;gap:10px;align-items:center}
.btn-admin{background:linear-gradient(135deg,#00875a,#00a86b);color:#042;padding:9px 18px;border-radius:10px;font-weight:800;font-size:.85rem;border:none;cursor:pointer;transition:all .2s}
.btn-admin:hover{background:linear-gradient(135deg,#00a86b,#00c47e);transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,196,126,.25)}

/* ===== HERO BANNER ===== */
.hero{position:relative;min-height:520px;background:#0a3d2a;overflow:hidden;display:flex;align-items:center}
.hero-slides{position:absolute;inset:0;z-index:0}
.hero-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 1.2s ease,transform 1.2s ease;transform:scale(1.05)}
.hero-slide.active{opacity:1;transform:scale(1)}
.hero-slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.35)}
.hero-slide:nth-child(1) .hero-slide-bg{background:linear-gradient(135deg,rgba(0,60,30,.85),rgba(0,135,90,.7)),url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 600"><circle cx="200" cy="300" r="250" fill="%2300875a" opacity=".15"/><circle cx="900" cy="200" r="350" fill="%2300c77b" opacity=".1"/><circle cx="600" cy="500" r="200" fill="%2300a86b" opacity=".12"/></svg>');background-size:cover}
.hero-slide:nth-child(2) .hero-slide-bg{background:linear-gradient(135deg,rgba(0,80,40,.85),rgba(0,167,107,.7))}
.hero-slide:nth-child(3) .hero-slide-bg{background:linear-gradient(135deg,rgba(10,50,30,.9),rgba(0,135,90,.75))}

.hero-particles{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-particle{position:absolute;border-radius:50%;background:rgba(255,255,255,.08);animation:particleFloat linear infinite}
@keyframes particleFloat{0%{transform:translateY(100vh) rotate(0deg);opacity:0}10%{opacity:1}90%{opacity:1}100%{transform:translateY(-10vh) rotate(720deg);opacity:0}}

.hero-shapes{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-shape{position:absolute;border:2px solid rgba(255,255,255,.06);border-radius:50%;animation:shapePulse 8s ease-in-out infinite}
.hero-shape:nth-child(1){width:300px;height:300px;top:-80px;right:-60px;animation-delay:0s}
.hero-shape:nth-child(2){width:200px;height:200px;bottom:-50px;left:-40px;animation-delay:2s}
.hero-shape:nth-child(3){width:150px;height:150px;top:40%;left:10%;animation-delay:4s}
@keyframes shapePulse{0%,100%{transform:scale(1);opacity:.3}50%{transform:scale(1.15);opacity:.6}}

.hero-glow{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(0,199,123,.15) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;animation:glowPulse 4s ease-in-out infinite;pointer-events:none}
@keyframes glowPulse{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.6}50%{transform:translate(-50%,-50%) scale(1.2);opacity:1}}

.hero-content{position:relative;z-index:5;max-width:900px;margin:0 auto;padding:4rem 2rem 3rem;text-align:center}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);padding:8px 20px;border-radius:50px;font-size:.85rem;font-weight:700;color:rgba(255,255,255,.9);margin-bottom:1.5rem;animation:fadeInDown .8s ease .2s both}
.hero-badge .pulse-dot{width:8px;height:8px;background:#00ff88;border-radius:50%;animation:pulseDot 2s ease-in-out infinite}
@keyframes pulseDot{0%,100%{box-shadow:0 0 0 0 rgba(0,255,136,.5)}50%{box-shadow:0 0 0 8px rgba(0,255,136,0)}}

.hero h1{font-size:3.2rem;font-weight:900;margin-bottom:1rem;color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.3);animation:fadeInUp 1s ease .4s both;line-height:1.35}
.hero h1 .highlight{position:relative;display:inline-block}
.hero h1 .highlight::after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:12px;background:linear-gradient(90deg,#00ff88,rgba(0,255,136,.3));border-radius:6px;z-index:-1;animation:expandWidth 1s ease .8s both}
@keyframes expandWidth{from{width:0}to{width:100%}}
.hero h1 .emoji{display:inline-block;animation:float 2.5s ease-in-out infinite;font-size:3.5rem;margin-left:10px}
.hero p{font-size:1.2rem;rgba(255,255,255,.85);margin-bottom:.75rem;font-weight:500;animation:fadeInUp 1s ease .6s both}
.hero-sub{font-size:.95rem;color:rgba(255,255,255,.55);animation:fadeInUp 1s ease .7s both}

.hero-features{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap;animation:fadeInUp 1s ease .8s both}
.hero-feature{background:rgba(255,255,255,.1);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);padding:14px 28px;border-radius:16px;font-weight:700;font-size:.9rem;color:#fff;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}
.hero-feature::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,199,123,.2),transparent);opacity:0;transition:opacity .3s}
.hero-feature:hover::before{opacity:1}
.hero-feature:hover{background:rgba(255,255,255,.18);transform:translateY(-4px);box-shadow:0 12px 35px rgba(0,0,0,.2);border-color:rgba(0,255,136,.3)}
.hero-feature span{margin-left:8px;font-size:1.2rem}

.hero-search{max-width:580px;margin:2.5rem auto 0;position:relative;animation:fadeInUp 1s ease 1s both}
.hero-search-wrap{position:relative;background:rgba(255,255,255,.12);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:6px;transition:all .4s}
.hero-search-wrap:focus-within{background:rgba(255,255,255,.18);border-color:rgba(0,255,136,.4);box-shadow:0 0 0 4px rgba(0,255,136,.1)}
.hero-search input{width:100%;padding:16px 24px 16px 60px;border-radius:16px;border:none;font-size:1.05rem;background:rgba(255,255,255,.95);transition:all .3s;font-family:inherit;font-weight:600;color:#333}
.hero-search input:focus{outline:none;box-shadow:0 8px 30px rgba(0,0,0,.12)}
.hero-search input::placeholder{color:#aaa;font-weight:500}
.hero-search-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);height:48px;width:48px;background:linear-gradient(135deg,#00875a,#00a86b);color:#fff;border:none;border-radius:14px;cursor:pointer;font-size:1.3rem;transition:all .3s;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(0,135,90,.3)}
.hero-search-btn:hover{background:linear-gradient(135deg,#006b48,#00875a);transform:translateY(-50%) scale(1.08);box-shadow:0 6px 20px rgba(0,135,90,.4)}

/* Hero Slider Dots */
.hero-dots{display:flex;gap:10px;justify-content:center;margin-top:2rem;animation:fadeInUp 1s ease 1.1s both;position:relative;z-index:5}
.hero-dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.25);cursor:pointer;transition:all .4s;border:2px solid transparent}
.hero-dot.active{background:#00ff88;border-color:#00ff88;width:36px;border-radius:8px;box-shadow:0 0 15px rgba(0,255,136,.4)}
.hero-dot:hover:not(.active){background:rgba(255,255,255,.45)}

/* Hero Side Images */
.hero-side{position:absolute;z-index:2;pointer-events:none;opacity:.15;font-size:8rem;filter:blur(1px);transition:all 1s ease}
.hero-side.right{right:-20px;top:50%;transform:translateY(-50%) rotate(-15deg)}
.hero-side.left{left:-10px;top:50%;transform:translateY(-50%) rotate(10deg)}

/* Hero Bottom Wave */
.hero::after{content:'';position:absolute;bottom:-2px;left:0;width:100%;height:80px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80'%3E%3Cpath fill='%23f8faf8' d='M0,40 C360,80 720,0 1080,40 C1260,60 1380,50 1440,40 L1440,80 L0,80 Z'/%3E%3C/svg%3E") no-repeat bottom/cover;z-index:3}

/* Hero Stats Strip */
.hero-stats{display:flex;justify-content:center;gap:3rem;margin-top:2rem;animation:fadeInUp 1s ease 1.2s both;position:relative;z-index:5}
.hero-stat{text-align:center;color:#fff}
.hero-stat .num{font-size:1.8rem;font-weight:900;display:block;line-height:1;text-shadow:0 2px 10px rgba(0,0,0,.2)}
.hero-stat .lbl{font-size:.75rem;opacity:.65;font-weight:600;margin-top:4px}

/* Floating decorations */
.hero-deco{position:absolute;font-size:3.5rem;opacity:.1;animation:heroDecoFloat 7s ease-in-out infinite;pointer-events:none;z-index:2}
.hero-deco:nth-child(1){top:12%;right:8%;animation-delay:0s}
.hero-deco:nth-child(2){top:55%;left:6%;animation-delay:1.5s;font-size:3rem}
.hero-deco:nth-child(3){top:20%;left:12%;animation-delay:3s;font-size:2.5rem}
.hero-deco:nth-child(4){bottom:22%;right:10%;animation-delay:4.5s;font-size:3.2rem}
@keyframes heroDecoFloat{0%,100%{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-15px) rotate(5deg)}50%{transform:translateY(-8px) rotate(-3deg)}75%{transform:translateY(-20px) rotate(4deg)}}

/* ===== CATEGORIES BAR ===== */
.categories-bar{max-width:1320px;margin:-1rem auto 2.5rem;padding:0 2rem;position:relative;z-index:3}
.categories-scroll{display:flex;gap:12px;overflow-x:auto;padding:1rem 0;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.categories-scroll::-webkit-scrollbar{display:none}
.cat-chip{display:flex;align-items:center;gap:10px;padding:12px 24px;background:#fff;border-radius:50px;box-shadow:0 4px 15px rgba(0,0,0,.06);cursor:pointer;white-space:nowrap;transition:all .3s cubic-bezier(.175,.885,.32,1.275);border:2px solid transparent;font-weight:700;font-size:.9rem;position:relative;overflow:hidden}
.cat-chip::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,135,90,.08),transparent);transition:left .5s}
.cat-chip:hover::before{left:100%}
.cat-chip:hover,.cat-chip.active{border-color:#00875a;background:#e8f8f0;color:#00875a;transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,135,90,.15)}
.cat-chip:active{transform:scale(.96)}
.cat-chip span{font-size:1.5rem;transition:transform .3s}
.cat-chip:hover span{transform:scale(1.2) rotate(-5deg)}

/* ===== MAIN CONTENT ===== */
.main-content{max-width:1320px;margin:0 auto;padding:0 2rem 3rem}

/* Section Header */
.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;animation:fadeInRight .6s ease}
.section-header h2{font-size:1.6rem;font-weight:900;color:#1a1a2e;display:flex;align-items:center;gap:10px}
.section-header h2 span{font-size:1.8rem;animation:float 3s ease-in-out infinite}
.section-header a{color:#00875a;font-weight:700;font-size:.9rem;transition:all .3s;padding:6px 16px;border-radius:8px}
.section-header a:hover{background:#e8f8f0}

/* Stats Bar */
.stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:2.5rem}
.stat-card{background:#fff;border-radius:16px;padding:1.5rem;text-align:center;box-shadow:0 4px 20px rgba(0,0,0,.05);transition:all .4s cubic-bezier(.175,.885,.32,1.275);border:1px solid #f0f0f0;position:relative;overflow:hidden}
.stat-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#00875a,#00c77b);transform:scaleX(0);transform-origin:right;transition:transform .4s}
.stat-card:hover::before{transform:scaleX(1)}
.stat-card:hover{transform:translateY(-5px);box-shadow:0 12px 35px rgba(0,135,90,.12)}
.stat-card .stat-icon{font-size:2rem;margin-bottom:.5rem;display:block;animation:float 4s ease-in-out infinite}
.stat-card .stat-number{font-size:1.8rem;font-weight:900;color:#00875a;display:block}
.stat-card .stat-label{font-size:.85rem;color:#888;font-weight:600}

/* ===== PRODUCT GRID ===== */
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem;margin-bottom:2.5rem}
.product-card{background:#fff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.06);overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;border:1px solid #f0f0f0}
.product-card:hover{transform:translateY(-8px) scale(1.01);box-shadow:0 20px 50px rgba(0,135,90,.12)}
.product-card .img-wrap{width:100%;height:200px;overflow:hidden;background:linear-gradient(135deg,#f0fdf4,#e8f8f0);display:flex;align-items:center;justify-content:center;position:relative}
.product-card .img-wrap::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 60%,rgba(0,0,0,.05));pointer-events:none}
.product-card .img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.175,.885,.32,1.275)}
.product-card:hover .img-wrap img{transform:scale(1.1) rotate(1deg)}
.product-card .img-placeholder{font-size:5rem;opacity:.4;transition:all .4s}
.product-card:hover .img-placeholder{transform:scale(1.15) rotate(-5deg);opacity:.6}
.product-card .card-body{padding:1.25rem}
.product-card .cat-label{font-size:.75rem;color:#00875a;font-weight:700;margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.5px}
.product-card .card-title{font-size:1.05rem;font-weight:800;color:#1a1a2e;margin-bottom:.6rem;line-height:1.4;min-height:2.8em}
.product-card .card-price{display:flex;align-items:center;gap:8px;margin-bottom:1rem;flex-wrap:wrap}
.product-card .price{font-size:1.25rem;font-weight:900;color:#00875a;transition:all .3s}
.product-card:hover .price{transform:scale(1.05)}
.product-card .old-price{font-size:.85rem;color:#bbb;text-decoration:line-through}
.product-card .unit{font-size:.75rem;color:#999;font-weight:500}
.product-card .card-actions{display:flex;gap:8px}
.btn-add-cart{flex:1;padding:12px;background:linear-gradient(135deg,#00875a,#00a86b);color:#fff;border:none;border-radius:12px;font-weight:800;cursor:pointer;transition:all .3s;font-size:.85rem;position:relative;overflow:hidden;font-family:inherit}
.btn-add-cart::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,.2);border-radius:50%;transform:translate(-50%,-50%);transition:width .5s,height .5s}
.btn-add-cart:hover::before{width:300px;height:300px}
.btn-add-cart:hover{background:linear-gradient(135deg,#006b48,#00875a);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,135,90,.3)}
.btn-add-cart:active{transform:scale(.96)}
.btn-qty{width:40px;height:40px;border:2px solid #e8e8e8;background:#fff;border-radius:12px;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;font-weight:800;font-family:inherit}
.btn-qty:hover{border-color:#00875a;color:#00875a;background:#f0fdf4;transform:scale(1.1)}
.btn-qty:active{transform:scale(.9)}
.discount-badge{position:absolute;top:14px;right:14px;background:linear-gradient(135deg,#ff4757,#ff6b81);color:#fff;padding:6px 14px;border-radius:10px;font-size:.75rem;font-weight:800;animation:bounceIn .6s ease;box-shadow:0 4px 15px rgba(255,71,87,.3)}
.featured-badge{position:absolute;top:14px;left:14px;background:linear-gradient(135deg,#ff9f43,#ffbe76);color:#fff;padding:6px 14px;border-radius:10px;font-size:.75rem;font-weight:800;animation:bounceIn .6s ease .1s both;box-shadow:0 4px 15px rgba(255,159,67,.3)}

/* ===== CART ===== */
.cart-section{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,.06);margin-bottom:2rem;animation:fadeInUp .6s ease}
.cart-section h2{font-size:1.4rem;font-weight:900;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0;display:flex;align-items:center;gap:10px}
.cart-item{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem 0;border-bottom:1px solid #f0f0f0;transition:all .3s;animation:fadeInRight .4s ease}
.cart-item:hover{background:#fafffe;margin:0 -1rem;padding-left:1rem;padding-right:1rem;border-radius:12px}
.cart-item-main{display:flex;gap:1.25rem;align-items:center}
.cart-item-head{display:flex}
.cart-item-img{width:80px;height:80px;border-radius:14px;overflow:hidden;background:#f0f0f0;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .3s}
.cart-item:hover .cart-item-img{transform:scale(1.05)}
.cart-item-img img{width:100%;height:100%;object-fit:cover}
.cart-item-info{flex:1}
.cart-item-info h4{font-size:1rem;font-weight:700;margin-bottom:.3rem}
.cart-item-info .item-price{color:#00875a;font-weight:800;font-size:1rem}
.cart-item-qty{display:flex;align-items:center;gap:10px}
.cart-item-remove{color:#ff4757;background:#fff5f5;border:1px solid #ffd9d9;cursor:pointer;font-size:.78rem;font-weight:800;padding:5px 14px;border-radius:999px;display:inline-flex;align-items:center;gap:5px;text-decoration:none;transition:all .3s;font-family:inherit}
.cart-item-remove:hover{background:#ff4757;color:#fff;border-color:#ff4757;transform:scale(1.05)}
.btn-qty.dim{opacity:.45;cursor:not-allowed;pointer-events:none}
.cart-summary{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid #f0f0f0}
.cart-row{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.95rem}
.cart-row.total{font-size:1.25rem;font-weight:900;color:#00875a;padding-top:.75rem;border-top:3px solid #00875a}

/* ===== FORMS ===== */
.form-card{background:#fff;border-radius:20px;padding:2.5rem;box-shadow:0 4px 20px rgba(0,0,0,.06);animation:fadeInUp .6s ease}
.form-card h2{font-size:1.4rem;font-weight:900;margin-bottom:1.5rem;display:flex;align-items:center;gap:10px}
.form-group{margin-bottom:1.25rem}
.form-group label{display:block;font-weight:700;color:#374151;margin-bottom:.5rem;font-size:.9rem}
.form-control{width:100%;padding:.85rem 1.2rem;border:2px solid #e8e8e8;border-radius:12px;font-size:.95rem;transition:all .3s;font-family:inherit;font-weight:500}
.form-control:focus{outline:none;border-color:#00875a;box-shadow:0 0 0 4px rgba(0,135,90,.1);transform:translateY(-1px)}
textarea.form-control{resize:vertical;min-height:80px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.75rem;border:none;border-radius:12px;font-size:.95rem;font-weight:800;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);text-decoration:none;font-family:inherit;position:relative;overflow:hidden}
.btn::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,.15);border-radius:50%;transform:translate(-50%,-50%);transition:width .5s,height .5s}
.btn:hover::before{width:400px;height:400px}
.btn-primary{background:linear-gradient(135deg,#00875a,#00a86b);color:#fff;box-shadow:0 4px 15px rgba(0,135,90,.25)}
.btn-primary:hover{background:linear-gradient(135deg,#006b48,#00875a);color:#fff;transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,135,90,.35)}
.btn-danger{background:linear-gradient(135deg,#ff4757,#ff6b81);color:#fff}
.btn-danger:hover{background:linear-gradient(135deg,#cc0000,#ff4757);color:#fff;transform:translateY(-3px)}
.btn-warning{background:linear-gradient(135deg,#ff9f43,#ffbe76);color:#fff}
.btn-outline{background:transparent;color:#00875a;border:2px solid #00875a}
.btn-outline:hover{background:#00875a;color:#fff;transform:translateY(-3px)}
.btn-sm{padding:.5rem 1rem;font-size:.8rem;border-radius:8px}
.btn-lg{padding:1.1rem 2.5rem;font-size:1.1rem;border-radius:14px}
.btn-block{width:100%}
.btn-group{display:flex;gap:.5rem;flex-wrap:wrap}

/* ===== TABLES ===== */
.data-table{width:100%;border-collapse:collapse}
.data-table th,.data-table td{padding:.9rem 1rem;text-align:right;border-bottom:1px solid #f0f0f0}
.data-table th{font-weight:700;color:#555;font-size:.8rem;text-transform:uppercase;background:#f8f8f8;position:sticky;top:0}
.data-table tbody tr{transition:all .3s}
.data-table tbody tr:hover{background:#f0fdf4;transform:scale(1.005)}
.data-table img{width:50px;height:50px;object-fit:cover;border-radius:10px}

/* ===== ALERTS & BADGES ===== */
.alert{padding:1rem 1.25rem;border-radius:12px;margin-bottom:1rem;font-weight:600;animation:fadeInUp .4s ease}
.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}
.alert-danger{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}
.alert-info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}
.badge{display:inline-block;padding:.3rem .75rem;border-radius:50px;font-size:.75rem;font-weight:700;animation:scaleIn .3s ease}
.badge-pending{background:#fff3cd;color:#856404}
.badge-processing{background:#cce5ff;color:#004085}
.badge-delivered{background:#d4edda;color:#155724}
.badge-cancelled{background:#f8d7da;color:#721c24}
.badge-active{background:#d4edda;color:#155724}
.badge-inactive{background:#e2e3e5;color:#383d41}

/* ===== MAP ===== */
.map-container{width:100%;height:350px;border-radius:14px;overflow:hidden;border:2px solid #e8e8e8;margin-bottom:1rem;transition:all .3s}
.map-container:hover{border-color:#00875a;box-shadow:0 4px 20px rgba(0,135,90,.1)}
#map{width:100%;height:100%}

/* ===== FOOTER ===== */
.footer{background:linear-gradient(135deg,#1a1a2e,#16213e);color:rgba(255,255,255,.6);text-align:center;padding:3rem 2rem;margin-top:4rem;position:relative;overflow:hidden}
.footer::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,transparent,#00875a,transparent)}
.footer a{color:#00c77b;transition:all .3s}
.footer a:hover{color:#fff;text-shadow:0 0 10px rgba(0,199,123,.5)}
.footer-links{display:flex;gap:2rem;justify-content:center;margin-bottom:1.5rem;flex-wrap:wrap}
.footer-links a{padding:8px 16px;border-radius:8px;transition:all .3s}
.footer-links a:hover{background:rgba(255,255,255,.08)}

/* ===== EMPTY STATE ===== */
.empty-state{text-align:center;padding:4rem;color:#bbb;animation:fadeIn .6s ease}
.empty-icon{font-size:5rem;margin-bottom:1rem;animation:float 3s ease-in-out infinite;opacity:.6}
.empty-state p{margin-bottom:1.5rem;font-size:1.1rem}

/* ===== ADMIN ===== */
.admin-layout{display:flex;min-height:100vh}
.admin-sidebar{width:260px;background:linear-gradient(180deg,#1a1a2e,#16213e);color:#fff;padding:1.5rem 0;position:fixed;height:100vh;overflow-y:auto;box-shadow:4px 0 30px rgba(0,0,0,.2)}
.admin-sidebar .brand{padding:0 1.5rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:1rem}
.admin-sidebar .brand .brand-logo{display:flex;align-items:center;justify-content:flex-start;margin-bottom:8px}
.admin-sidebar .brand .brand-logo img{height:48px;width:48px;object-fit:contain;border-radius:12px;background:#fff;padding:4px;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.admin-sidebar .brand h3{font-size:1.3rem;font-weight:900;color:#00c77b}
.admin-sidebar .brand p{font-size:.75rem;color:#888;margin-top:.3rem}
.admin-sidebar nav a{display:flex;align-items:center;gap:12px;padding:13px 1.5rem;color:rgba(255,255,255,.6);transition:all .3s;font-size:.9rem;border-right:3px solid transparent}
.admin-sidebar nav a:hover,.admin-sidebar nav a.active{background:rgba(0,135,90,.15);color:#00c77b;border-right-color:#00c77b}
.admin-sidebar nav a span{font-size:1.2rem}
.admin-main{margin-right:260px;flex:1;padding:2rem;background:#f5f5f5;min-height:100vh}
.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}
.admin-header h1{font-size:1.7rem;font-weight:900}

/* ===== LOGIN ===== */
.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#006b48,#00875a,#00a86b);position:relative;overflow:hidden}
.login-page::before{content:'';position:absolute;width:400px;height:400px;background:rgba(255,255,255,.05);border-radius:50%;top:-100px;right:-100px;animation:float 6s ease-in-out infinite}
.login-page::after{content:'';position:absolute;width:300px;height:300px;background:rgba(255,255,255,.03);border-radius:50%;bottom:-80px;left:-80px;animation:float 8s ease-in-out infinite reverse}
.login-box{background:#fff;border-radius:24px;padding:3rem;width:420px;box-shadow:0 25px 80px rgba(0,0,0,.25);animation:scaleIn .6s ease;position:relative;z-index:1}
.login-box h2{text-align:center;margin-bottom:.5rem;font-size:1.6rem;font-weight:900}
.login-box .subtitle{text-align:center;color:#888;margin-bottom:2rem;font-weight:500}
.login-box .logo{text-align:center;font-size:3.5rem;margin-bottom:1rem;animation:float 3s ease-in-out infinite}

/* ===== ORDER CARD ===== */
.order-card{background:#fff;border-radius:16px;padding:1.75rem;box-shadow:0 4px 20px rgba(0,0,0,.06);margin-bottom:1.25rem;border-right:5px solid #00875a;transition:all .3s;animation:fadeInUp .5s ease}
.order-card:hover{transform:translateX(5px);box-shadow:0 8px 30px rgba(0,135,90,.1)}
.order-card.status-pending{border-right-color:#ff9f43}
.order-card.status-processing{border-right-color:#3498db}
.order-card.status-delivered{border-right-color:#00875a}
.order-card.status-cancelled{border-right-color:#ff4757}
.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}
.order-header h3{font-size:1.05rem;font-weight:800}
.order-meta{display:flex;gap:1.5rem;color:#777;font-size:.85rem;margin-bottom:.75rem;flex-wrap:wrap}
.order-items-list{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #f0f0f0}
.order-item-row{display:flex;justify-content:space-between;padding:.4rem 0;font-size:.9rem}

/* ===== QUANTITY CONTROL ===== */
.qty-control{display:flex;align-items:center;gap:8px}
.qty-control .btn-qty{width:36px;height:36px;font-size:1rem;border-radius:10px}
.qty-control .qty-val{font-weight:800;min-width:28px;text-align:center;font-size:1rem}

/* ===== CHECKOUT STEPS ===== */
.checkout-steps{display:flex;gap:0;margin-bottom:2rem;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.06)}
.checkout-step{flex:1;padding:1.1rem;text-align:center;font-weight:700;color:#aaa;background:#f9f9f9;position:relative;transition:all .3s}
.checkout-step.active{background:linear-gradient(135deg,#00875a,#00a86b);color:#fff}
.checkout-step.done{background:#d4edda;color:#155724}

/* ===== INVOICE ===== */
.invoice-wrap{max-width:700px;margin:2rem auto;background:#fff;border-radius:20px;box-shadow:0 8px 40px rgba(0,0,0,.08);padding:2.5rem;animation:scaleIn .5s ease}
.invoice-header{text-align:center;border-bottom:3px solid #00875a;padding-bottom:1.5rem;margin-bottom:1.5rem}
.invoice-header h1{color:#00875a;font-size:2.2rem;margin:0;font-weight:900}
.invoice-header .logo{font-size:3.5rem;animation:float 3s ease-in-out infinite}
.invoice-info{display:flex;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}
.invoice-info div{flex:1;min-width:180px}
.invoice-info label{font-weight:700;color:#00875a;display:block;margin-bottom:.3rem;font-size:.85rem}
.invoice-table{width:100%;border-collapse:collapse;margin:1.5rem 0}
.invoice-table th{background:linear-gradient(135deg,#00875a,#00a86b);color:#fff;padding:14px;text-align:right;font-weight:700}
.invoice-table td{padding:14px;border-bottom:1px solid #f0f0f0;transition:all .3s}
.invoice-table tbody tr:hover{background:#f0fdf4}
.invoice-table .total-row{background:#f0fdf4;font-weight:900}
.invoice-table .total-row td{border-top:3px solid #00875a;font-size:1.15rem}
.invoice-status{text-align:center;margin:1.5rem 0}
.invoice-footer{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #f0f0f0;color:#999}
.btn-print{background:linear-gradient(135deg,#00875a,#00a86b);color:#fff;border:none;padding:14px 36px;border-radius:14px;font-size:1rem;font-weight:800;cursor:pointer;margin:.5rem;transition:all .3s;font-family:inherit}
.btn-print:hover{background:linear-gradient(135deg,#006b48,#00875a);transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,135,90,.3)}
@media print{.no-print{display:none!important}.invoice-wrap{box-shadow:none;margin:0;padding:1.5rem;border-radius:0}}

/* ===== TOAST ===== */
.toast{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;padding:14px 28px;border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,.25);z-index:9999;animation:slideUp .4s cubic-bezier(.175,.885,.32,1.275);font-weight:600}

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}
::-webkit-scrollbar-thumb{background:linear-gradient(#00875a,#00c77b);border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:#006b48}

/* ===== LOADING ===== */
.spinner{display:inline-block;width:22px;height:22px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ===== RESPONSIVE ===== */
.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}
.table-responsive .data-table{min-width:640px}
.data-table{min-width:0}
@media(max-width:900px){
    .topbar-inner{flex-wrap:nowrap;height:58px;padding:0 .75rem}
    .topbar-nav{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}
    .topbar-nav::-webkit-scrollbar{display:none}
    .topbar-nav li a{white-space:nowrap;padding:8px 10px;font-size:.8rem}
    .topbar-actions .btn-admin{padding:7px 12px;font-size:.75rem}
    .main-content{padding:0 .75rem 2rem}
    .footer{padding:2rem .75rem}
}
@media(max-width:768px){
    .topbar-logo{height:28px;max-width:140px}
    .hero{padding:3rem 1.25rem 3rem}
    .hero h1{font-size:1.6rem}
    .hero p{font-size:1rem}
    .hero-features{gap:.75rem}
    .hero-feature{font-size:.8rem;padding:8px 16px}
    .product-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}
    .product-card .img-wrap{height:140px}
    .product-card .card-body{padding:.85rem}
    .product-card .card-title{font-size:.9rem}
    .product-card .price{font-size:1rem}
    .product-card .btn-add-cart{padding:10px;font-size:.8rem}
    .form-row,.form-row-3{grid-template-columns:1fr}
    .categories-scroll{gap:8px}
    .cat-chip{padding:10px 16px;font-size:.8rem}
    .stats-bar{grid-template-columns:repeat(2,1fr);gap:.75rem}
    .invoice-wrap{padding:1.25rem;margin:1rem .75rem}
    .invoice-info{flex-direction:column}
    .cart-section{padding:1.25rem}
    .cart-item-main{flex-wrap:wrap;gap:.75rem}
    .cart-item-info{min-width:140px}
    .login-box{width:92%;max-width:420px;padding:2rem 1.5rem}
    .order-meta{gap:1rem}
    .checkout-steps{flex-wrap:wrap}
    .checkout-step{flex:1 1 50%}
    .table-responsive{overflow-x:auto}
}
@media(max-width:480px){
    .product-grid{grid-template-columns:1fr 1fr;gap:.5rem}
    .hero h1{font-size:1.35rem}
    .stats-bar{grid-template-columns:1fr 1fr;gap:.5rem}
    .stat-card{ padding:.85rem }
    .stat-card .stat-number{font-size:1.3rem}
    .section-header h2{font-size:1.25rem}
    .form-card{padding:1.25rem}
    .btn{padding:.7rem 1.25rem;font-size:.85rem}
    .data-table{font-size:.8rem}
}

/* ===== RIPPLE EFFECT ===== */
.ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.3);transform:scale(0);animation:ripple .6s linear}

/* ===== SAFETY NET: منع الانزياح الأفقي على الشاشات الصغيرة ===== */
@media(max-width:480px){
    .main-content{max-width:100%;padding-left:10px;padding-right:10px}
    .topbar{max-width:100%;padding-left:10px;padding-right:10px}
    .hero-content{padding-left:14px;padding-right:14px}
    .cart-section,.form-card,.order-card,.table-wrap{padding-left:12px;padding-right:12px;max-width:100%}
    .product-grid{grid-template-columns:1fr 1fr;gap:.5rem}
    .section-header{flex-wrap:wrap;gap:.5rem}
    .order-meta{flex-direction:column;gap:.5rem}
    .cart-item-main{gap:.6rem}
    .cart-item-img{width:64px;height:64px}
    .btn-group{flex-wrap:wrap}
}
@media(max-width:360px){
    .product-grid{grid-template-columns:1fr}
    .topbar-inner{flex-wrap:wrap;height:auto;padding:6px 4px}
    .hero h1{font-size:1.15rem}
    .hero-stat .num{font-size:1.4rem}
    .stats-bar{grid-template-columns:1fr 1fr}
    .login-box{width:100%;max-width:100%}
    .form-row{grid-template-columns:1fr}
}
