
/* ===== assets/css/cart-page.css ===== */
/* ===== cart.html inline style 1 ===== */
:root{ --gold:#C89B3C; --white:#fff; --black:#111827; --line:#e5e7eb; --card:#ffffff; --muted:#6b7280; }
    #site-nav{ position:sticky; top:0; z-index:1000; background:rgba(255,255,255,.82); border-bottom:1px solid #eee; }
    html,body{ height:100%; }
    body{ background: linear-gradient(180deg,#f7fafc,#fff); -webkit-font-smoothing:antialiased; color:var(--black); }
    .container-xl{ max-width:1100px; margin:0 auto; padding:1rem; }
    .shadow-soft{ box-shadow:0 10px 30px rgba(16,24,40,.06); border-radius:.75rem; }
    .cart-card{ border-radius:1rem; overflow:hidden; border:0px solid #eef2f7; background:linear-gradient(180deg,var(--card),#fbfdff); box-shadow:1px 8px 28px rgba(0,0,0,.04); }
    td, th{ vertical-align:middle; }
    .cart-row-mobile{ display:block; }
    @media (min-width:768px){ .cart-row-mobile{ display:none; } }
    .cart-table-desktop{ display:block; }
    @media (max-width:1023px){
      .cart-table-desktop{ display:none !important; }
      .cart-row-mobile{ display:block !important; }
      .sticky-summary{ position:static; margin-top:1rem; background-color: white; }
    }
    @media (min-width:1024px){
      .cart-table-desktop{ display:block !important; }
      .cart-row-mobile{ display:none !important; }
      .sticky-summary{ position:sticky; top:1rem; }
    }
    .mobile-checkout{
      position:fixed; bottom:0; left:0; right:0; z-index:60;
      display:flex; gap:.5rem; align-items:center; justify-content:space-between;
      padding:.6rem 1rem; background:linear-gradient(90deg,var(--card),#fafafa);
      border-top:0px solid #eef2f7; box-shadow:0 -8px 30px rgba(0,0,0,.06);
    }
    @media(min-width:768px){ .mobile-checkout{ display:none; } }
    .sticky-summary{ position:sticky; top:1rem; border-radius:1rem; background-color: white;}
    .btn{ border:1px solid #e5e7eb; padding:.65rem 1rem; border-radius:.75rem; background:#fff; color:var(--black); cursor:pointer; transition:transform .15s, box-shadow .15s, border-color .15s, background .15s; font-size:0.95rem; }
    .btn:hover{ transform:translateY(-1px); box-shadow:0 6px 18px rgba(0,0,0,.06); }
    .btn-primary{ background:var(--black); color:#fff; border-color:var(--black); box-shadow:0 8px 24px rgba(0,0,0,.12); display:inline-flex; align-items:center; justify-content:center; padding:.65rem 1rem; border-radius:.75rem; }
    .btn-primary:hover{ filter:brightness(1.05); }
    .btn-ghost{ background:#fff; border:1px solid #e5e7eb; }
    .qty-btn{ width:44px; height:44px; border:1px solid #e5e7eb; border-radius:.75rem; display:inline-flex; align-items:center; justify-content:center; font-weight:700; cursor:pointer; background:#fff; }
    .qty-input{ width:70px; height:44px; text-align:center; border:1px solid #e5e7eb; border-radius:.75rem; }
    @media (max-width:420px){
      .btn, .btn-primary { padding:.85rem 1rem; font-size:1rem; border-radius:1rem; }
      .qty-btn, .qty-input{ min-width:48px; height:48px; border-radius:1rem; }
      .prod-img{ width:86px; height:86px; }
    }
    .empty-illustration{ width:140px; height:140px; border-radius:20px; background:linear-gradient(145deg,#f3f8f9,#fff); display:flex; align-items:center; justify-content:center; margin:0 auto 1rem; border:1px solid #eef6f6; font-size:48px; }
    .muted{ color:var(--muted); }
    .pill{ background:#f3f4f6; padding:.2rem .5rem; border-radius:9999px; font-size:.85rem; }
    #cartLoader{ position:fixed; inset:0; display:none; align-items:center; justify-content:center; z-index:70; background:rgba(255,255,255,.55); backdrop-filter: blur(3px); }
    #cartLoader.active{ display:flex; }
    .spinner{ width:64px; height:64px; border-radius:9999px; display:flex; align-items:center; justify-content:center; border:6px solid rgba(0,0,0,0.06); border-top-color:var(--gold); animation:spin 900ms linear infinite; box-shadow:0 8px 32px rgba(14,20,24,.06); }
    @keyframes spin{ to{ transform:rotate(360deg); } }
    .prod-img{ width:72px; height:72px; object-fit:cover; border-radius:.5rem; border:1px solid #eef6f6; background:#fff; flex-shrink:0; }
    @media(min-width:768px){ .prod-img{ width:64px; height:64px; } }
    .break-ellipsis{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    thead th{ background:transparent; color:var(--muted); border-bottom:1px solid #f1f5f9; }
    .cart-row:hover{ background: linear-gradient(90deg,#ffffff,#fbfeff); }
    .variant-badge{ display:inline-block; padding:.18rem .5rem; border-radius:999px; background:linear-gradient(90deg,#fff7e5,#fff); color:#7a5a10; font-size:.82rem; margin-left:.4rem; border:1px solid #f5e8c7; }
    .price-old{ color:#9aa3ad; text-decoration:line-through; font-size:.9rem; margin-left:.4rem; }
    .summary-total{ font-size:1.6rem; font-weight:800; color:var(--black); }
    .summary-sub{ color:var(--muted); font-size:.95rem; }
    #pagination .page-btn, #pagination .page-num { border:1px solid #e5e7eb; background:#fff; padding:.45rem .7rem; border-radius:.6rem; cursor:pointer; margin-right:.25rem; transition:all .15s; }
    #pagination .page-btn:hover, #pagination .page-num:hover{ transform:translateY(-1px); box-shadow:0 6px 18px rgba(0,0,0,.06); }
    #pagination .is-current{ background:var(--black); color:#fff; border-color:var(--black); }
    @media (min-width:1024px) { .prod-img { width:72px; height:72px; } }
    .cart-table-desktop table { width:100%; border-collapse:collapse; }
    .cart-table-desktop td, .cart-table-desktop th { padding:.85rem  .75rem; }
    @media (max-width:1280px){
      .cart-table-desktop td h3{ font-size:0.98rem; }
      .cart-table-desktop td .muted{ font-size:0.88rem; }
    }
    .cart-table-desktop td:nth-child(2), .cart-table-desktop td:nth-child(3), .cart-table-desktop td:nth-child(4){ white-space:nowrap; width:1%; }
    button:focus, input:focus { outline:2px solid rgba(231,177,0,0.25); outline-offset:3px; }
    .cart-row-mobile { width:100%; box-sizing:border-box; background:transparent; border-radius:.6rem; border:#eee; }
    .cart-row-mobile .prod-img { width:86px; height:86px; }
    .cart-row-mobile h3 { font-size:1rem; line-height:1.2; }
    .promo-note { font-size:.85rem; color:#065f46; background:#ecfdf5; border:1px solid #a7f3d0; padding:.15rem .45rem; border-radius:.5rem; display:inline-block; }
    .promo-badge { font-size:.78rem; color:#1f2937; background:#f3f4f6; border:1px solid #e5e7eb; padding:.08rem .45rem; border-radius:.5rem; display:inline-block; }
    .opt-badge { font-size:.78rem; color:#374151; background:#f9fafb; border:1px solid #e5e7eb; padding:.08rem .45rem; border-radius:.5rem; display:inline-block; }
    /* NEW small styles */
    .addr-line{ font-size:.85rem; color:#374151; }
    .addr-manage{ font-size:.85rem; text-decoration:underline; }



/* ===== assets/css/nav-page.css ===== */
/* ===== nav.html inline style 1 ===== */
:root{
    --sb-w: 340px;
    --ease: cubic-bezier(.22,.61,.36,1);
    --gold: #d4a019;
    --accent: #0b1320;
    --muted: #6b7280;
    --bg: #fbfcfe;
    --glass: rgba(255,255,255,0.78);
    --soft-shadow: 0 12px 36px rgba(2,6,23,.10);
    --card-shadow: 0 8px 20px rgba(2,6,23,.06);
  }

  html[dir="ltr"]{ --sb-hide-shift: -110%; }
  html[dir="rtl"]{ --sb-hide-shift:  110%; }

  html[lang="en"] .i18n-ar{ display:none!important; }
  html[lang="ar"] .i18n-en{ display:none!important; }

  *{ box-sizing:border-box; }
  .nav{
    position:sticky; top:0; z-index:1300;
    background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(251,252,255,0.9));
    border-bottom:1px solid rgba(10,20,34,0.04);
    backdrop-filter: blur(8px) saturate(120%);
    transition:box-shadow .25s var(--ease), transform .25s var(--ease);
    box-shadow: 0 2px 8px rgba(2,6,23,.03);
  }
  .nav-row{ max-width:1280px; margin:0 auto; padding:.7rem 1rem;
    display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:.6rem; }
  .brand{ justify-self:center; font-weight:900; font-size:1.4rem; line-height:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--accent); display:inline-block; transform:translateY(-2px) scale(.99); opacity:0; animation:brandIn .56s .08s forwards var(--ease); letter-spacing:.2px; }
  @keyframes brandIn{ to{ opacity:1; transform:translateY(0) scale(1);} }
  .left-cluster{ display:flex; align-items:center; gap:.6rem; justify-self:start; }
  .right-cluster{ display:flex; align-items:center; gap:.6rem; justify-self:end; }

  .icon-btn{ display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; border:1px solid rgba(10,20,34,0.04); border-radius:.9rem; transition:border-color .18s var(--ease), color .18s var(--ease), background .18s var(--ease), transform .12s ease, box-shadow .12s ease; background:linear-gradient(180deg, var(--bg), #ffffff); color:var(--accent); cursor:pointer; box-shadow: var(--card-shadow); }
  .icon-btn:hover{ border-color:rgba(212,160,25,.95); color:var(--gold); transform:translateY(-4px) scale(1.03); box-shadow:var(--soft-shadow); }
  .icon-btn:active{ transform:translateY(-1px) scale(.99); }
  .icon-24{ width:22px; height:22px; display:block; }

  .badge{ position:absolute; top:-6px; inset-inline-start:-6px; font-size:11px; background:#ef4444; color:#fff; border-radius:999px; padding:.18rem .44rem; display:none; align-items:center; justify-content:center; box-shadow:0 8px 24px rgba(239,68,68,.14); animation:badgePulse 1.8s infinite ease-in-out; transform-origin:center; }
  @keyframes badgePulse{ 0%{ transform:scale(1); opacity:1; } 60%{ transform:scale(1.06); opacity:.96; } 100%{ transform:scale(1); opacity:1; } }

  #accountWrap{ position:relative; }
  #accountMenu{ position:absolute; inset-inline-end:0; margin-top:.6rem; width:17rem; background:var(--glass); border:1px solid rgba(10,20,34,0.04); border-radius:1rem; box-shadow:0 18px 48px rgba(2,6,23,.12); padding:.3rem; display:none; z-index:1400; transform-origin:top right; transform:translateY(-10px) scale(.96); opacity:0; transition:transform .26s cubic-bezier(.2,.8,.2,1), opacity .22s linear; backdrop-filter: blur(8px) saturate(120%); overflow:visible; }
  #accountMenu::before{ content:""; position:absolute; top:-8px; right:16px; width:12px; height:12px; background:var(--glass); transform:rotate(45deg); border-radius:2px; filter:drop-shadow(0 4px 10px rgba(2,6,23,.06)); }
  #accountMenu.visible{ display:block; transform:translateY(0) scale(1); opacity:1; }
  #accountMenu a, #accountMenu button{ display:block; width:100%; text-align:start; padding:.6rem .75rem; border-radius:.65rem; background:transparent; color:var(--accent); border:0; font-weight:700; }
  #accountMenu a:hover, #accountMenu button:hover{ background: linear-gradient(90deg, rgba(212,160,25,0.08), rgba(212,160,25,0.04)); color:var(--gold); transform:translateX(6px); }
  #accountMenu a:focus, #accountMenu button:focus{ outline: none; box-shadow: 0 6px 20px rgba(212,160,25,0.12); border-radius:.6rem; }

  .sb{ position:fixed; top:0; bottom:0; inset-inline-start:0; width:var(--sb-w); background:linear-gradient(180deg,var(--bg),#fbfbfb); z-index:1250; will-change:transform,opacity; transform:translateX(var(--sb-hide-shift)); opacity:0; transition:transform .36s var(--ease), opacity .28s var(--ease); border-inline-end:1px solid rgba(10,20,34,0.04); box-shadow: 0 30px 64px rgba(2,6,23,.12); overflow:hidden; }
  .sb.open{ transform:translateX(0); opacity:1; }
  .sb-overlay{ position:fixed; inset:0; background:rgba(2,6,23,0.44); backdrop-filter:saturate(120%) blur(5px); opacity:0; visibility:hidden; transition:opacity .28s var(--ease), visibility .28s var(--ease); z-index:1200; }
  .sb-overlay.active{ opacity:1; visibility:visible; }
  .sb-head{ display:flex; align-items:center; justify-content:space-between; gap:.6rem; padding:1rem; border-bottom:1px solid rgba(10,20,34,0.03); }
  .sb-title{ font-weight:900; font-size:1.05rem; color:var(--accent); letter-spacing:.2px; }
  .sb-body{ padding:1rem; height:100%; overflow:auto; -webkit-overflow-scrolling:touch; }
  .sb-search{ width:100%; border:1px solid rgba(10,20,34,0.04); border-radius:999px; padding:.6rem .9rem; transition:box-shadow .18s var(--ease), border-color .18s var(--ease); box-shadow: 0 6px 18px rgba(16,24,40,.04); }
  .sb-search:focus{ outline:none; box-shadow:0 12px 36px rgba(16,24,40,.06); border-color:rgba(212,160,25,.95); }
  .lang-seg{ display:inline-flex; border:1px solid rgba(10,20,34,0.04); border-radius:999px; overflow:hidden; background:#fff; box-shadow: 0 6px 18px rgba(16,24,40,.03); }
  .lang-seg button{ padding:.42rem .72rem; font-size:.88rem; background:transparent; border:0; cursor:pointer; color:var(--muted); transition:background .18s var(--ease), color .18s var(--ease), transform .12s ease; }
  .lang-seg button:hover{ transform:translateY(-2px); }
  .lang-seg button.active{ background:linear-gradient(90deg, rgba(212,160,25,0.08), rgba(212,160,25,0.03)); color:var(--gold); font-weight:800; }
  .sb-link{ display:flex; align-items:center; gap:.6rem; border:1px solid rgba(10,20,34,0.03); border-radius:.75rem; padding:.56rem .65rem; color:var(--accent); text-decoration:none; transition:box-shadow .14s var(--ease), transform .14s var(--ease), border-color .14s var(--ease); background:linear-gradient(180deg, #fff,#fbfbfb); }
  .sb-link:hover{ border-color:rgba(212,160,25,.95); color:var(--gold); transform:translateX(6px); box-shadow:0 12px 36px rgba(15,23,42,.06); }

  details.sb-acc{ border:1px solid rgba(10,20,34,0.03); border-radius:.9rem; margin-top:.65rem; overflow:visible; background:linear-gradient(180deg,#fff,#fafafa); transition:box-shadow .18s var(--ease); box-shadow: 0 6px 18px rgba(2,6,23,.04); }
  details.sb-acc>summary{ list-style:none; display:flex; align-items:center; justify-content:space-between; cursor:pointer; padding:.72rem .8rem; font-weight:800; color:var(--accent); position:relative; }
  details.sb-acc>summary::-webkit-details-marker{ display:none; }
  details.sb-acc>summary .summary-title{ display:flex; gap:.5rem; align-items:center; }
  details.sb-acc>summary .summary-title svg{ opacity:.9; transform:translateY(0); transition:transform .24s var(--ease), opacity .22s var(--ease); }
  details.sb-acc>summary::after{ content:"▾"; font-size:.95rem; color:var(--muted); transform-origin:center; transition:transform .22s var(--ease), color .18s var(--ease), opacity .18s var(--ease); display:inline-block; margin-left:.35rem; }
  details.sb-acc[open]>summary{ background:linear-gradient(90deg, rgba(212,160,25,0.06), rgba(212,160,25,0.02)); color:var(--gold); }
  details.sb-acc[open]>summary::after{ transform:rotate(180deg) translateY(-1px); color:var(--gold); opacity:1; }
  details.sb-acc[open]{ box-shadow: 0 18px 42px rgba(2,6,23,.06); }

  .sb-acc-panel{ padding:.45rem .55rem .65rem; overflow:hidden; max-height:0; opacity:0; transform:translateY(6px); transition: max-height .34s var(--ease), opacity .28s var(--ease), transform .28s var(--ease); }
  details.sb-acc[open] > .sb-acc-panel{ opacity:1; transform:translateY(0); }

  .sb-item{ display:block; padding:.56rem .6rem; border-radius:.55rem; color:var(--accent); text-decoration:none; font-weight:700; transition: transform .14s var(--ease), background .14s var(--ease), color .14s var(--ease); }
  .sb-item:hover{ background:linear-gradient(90deg, rgba(212,160,25,0.06), rgba(212,160,25,0.02)); color:var(--gold); transform:translateX(6px); }

  .sb-more{ display:block; margin-top:.45rem; text-align:center; font-weight:800; border-radius:.55rem; padding:.5rem .6rem; color:var(--accent); text-decoration:none; background:transparent; }
  .sb-more:hover{ background:linear-gradient(90deg, rgba(250,246,234,1), rgba(255,255,255,1)); color:var(--gold); transform:translateY(-2px); }

  .nav-search{ display:none; }
  @media(min-width:1024px){
    .nav-search{ display:block; }
    .nav-search input{ width:22rem; max-width:28rem; border:1px solid rgba(10,20,34,0.04); border-radius:999px; padding:.55rem .9rem; transition:box-shadow .18s var(--ease); box-shadow: 0 8px 22px rgba(16,24,40,.04); }
    .nav-search input:focus{ outline:none; box-shadow:0 12px 36px rgba(16,24,40,.06); border-color:rgba(212,160,25,.95); }
  }

  .relative{ position:relative; }
  .text-sm{ font-size:.92rem; color:var(--muted); }
  .items-center{ display:flex; align-items:center; }
  .justify-between{ justify-content:space-between; }
  .flex{ display:flex; }
  .px-2{ padding-left:.5rem; padding-right:.5rem; }
  .py-2{ padding-top:.5rem; padding-bottom:.5rem; }
  :focus{ outline: 3px solid rgba(212,160,25,0.18); outline-offset:2px; border-radius:.5rem; }
  .list-loaded{ animation:fadeList .36s var(--ease); }
  @keyframes fadeList{ from{ opacity:0; transform:translateY(8px);} to{ opacity:1; transform:none;} }


  .app-brand-logo{width:34px;height:34px;border-radius:10px;object-fit:contain;background:#fff;margin-inline-end:.45rem;vertical-align:middle;display:inline-block;}
  .brand{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;}

  @media(max-width:420px){
    .sb{ width:92vw; }
    .brand{ font-size:1.28rem; }
  }

