html,body{
margin:0;
padding:0;
background:#f5f7f5;
-webkit-text-size-adjust:100%;
}
body.selora-standalone-body{
min-height:100vh;
background:linear-gradient(180deg,#edf5f1 0%,#f7faf8 28%,#ffffff 100%);
font-family:Vazirmatn,"Segoe UI",Tahoma,sans-serif;
}
#selora-menu-root{
--selora-ink:#142c2a;
--selora-muted:#6f817d;
--selora-green:#0ca66b;
--selora-deep:#082f2b;
--selora-bg:#f5f7f5;
direction:rtl;
font-family:Vazirmatn,"Segoe UI",Tahoma,sans-serif;
background:transparent;
min-height:100vh;
color:var(--selora-ink);
overflow-x:hidden;
}
#selora-menu-root *{box-sizing:border-box}
#selora-menu-root button,#selora-menu-root input{font:inherit}
#selora-menu-root img{max-width:100%;display:block}
.selora-menu-shell{
width:100%;
max-width:480px;
min-height:100vh;
margin:0 auto;
padding:calc(env(safe-area-inset-top,0px) + 14px) 14px calc(env(safe-area-inset-bottom,0px) + 110px)!important;
background:transparent!important;
}
.selora-menu-loading,
.selora-menu-state{
background:#fff;
border:1px solid #e5ede8;
border-radius:22px;
padding:18px 16px;
text-align:center;
color:#5a6f6a;
box-shadow:0 8px 24px rgba(15,54,41,.05);
}
.selora-menu-state.hidden{display:none}
.selora-menu-state.error{color:#8b2f2f}
.selora-menu-hero{
position:relative;
display:grid;
grid-template-columns:72px minmax(0,1fr);
gap:14px;
align-items:center;
padding:20px 18px!important;
border-radius:30px!important;
background:linear-gradient(135deg,#083b35 0%,#0a5f53 58%,#15906f 100%)!important;
box-shadow:0 22px 55px rgba(0,55,40,.18)!important;
overflow:hidden;
}
.selora-menu-hero:before,
.selora-menu-hero:after{
content:"";
position:absolute;
border-radius:50%;
pointer-events:none;
}
.selora-menu-hero:before{
width:170px;
height:170px;
right:-70px;
bottom:-85px;
background:rgba(255,255,255,.08);
}
.selora-menu-hero:after{
width:120px;
height:120px;
left:-45px;
top:-50px;
background:rgba(255,255,255,.06);
}
.selora-menu-brand{
position:relative;
z-index:1;
width:72px!important;
height:72px!important;
background:#f4fff8!important;
border:1px solid rgba(255,255,255,.45)!important;
border-radius:24px!important;
padding:10px;
display:flex;
align-items:center;
justify-content:center;
box-shadow:0 10px 24px rgba(5,35,27,.18);
font-size:34px;
font-weight:800;
color:#0b7350;
overflow:hidden;
}
.selora-menu-logo{
width:100%;
height:100%;
object-fit:contain;
}
.selora-menu-identity{
position:relative;
z-index:1;
min-width:0;
padding-left:60px;
}
.selora-menu-eyebrow{
display:block;
color:#b9f4d9!important;
font-size:12px!important;
font-weight:700;
margin-bottom:6px;
letter-spacing:.1px;
}
.selora-menu-identity h1{
font-size:26px!important;
font-weight:800!important;
line-height:1.3;
margin:0!important;
color:#fff!important;
word-break:break-word;
}
#seloraStoreMeta{
margin:7px 0 0!important;
color:#d9efe6!important;
font-size:12.5px!important;
line-height:1.65;
}
.selora-status-chip{
position:absolute;
left:16px;
top:16px;
z-index:2;
border-radius:999px!important;
padding:8px 12px!important;
font-size:11px!important;
font-weight:700;
backdrop-filter:blur(8px);
background:rgba(255,255,255,.16)!important;
color:#fff!important;
border:1px solid rgba(255,255,255,.18);
white-space:nowrap;
}
.selora-status-chip.ready{background:rgba(12,166,107,.23)!important}
.selora-status-chip.error{background:rgba(185,52,52,.22)!important}
.selora-menu-toolbar{
display:grid;
grid-template-columns:minmax(0,1fr) auto;
gap:10px;
margin-top:16px;
align-items:center;
}
.selora-menu-search{
position:relative;
display:block;
}
.selora-menu-search > span{
position:absolute;
right:16px;
top:50%;
transform:translateY(-50%);
font-size:20px;
color:var(--selora-green);
pointer-events:none;
}
.selora-menu-toolbar input{
width:100%;
height:52px!important;
border-radius:18px!important;
border:1px solid #dce8e1!important;
background:#fff!important;
box-shadow:0 8px 24px rgba(11,43,34,.05);
padding:0 46px 0 16px!important;
font-size:15px!important;
color:#103530;
outline:none;
}
.selora-menu-toolbar input::placeholder{color:#96a6a2}
#seloraRefreshButton{
height:52px;
border:0;
border-radius:18px;
padding:0 16px;
background:#083b35;
color:#fff;
font-weight:700;
box-shadow:0 8px 24px rgba(8,59,53,.18);
}
.selora-group-nav{
display:flex!important;
gap:9px;
overflow-x:auto;
padding:16px 0 6px;
scrollbar-width:none;
-webkit-overflow-scrolling:touch;
}
.selora-group-nav::-webkit-scrollbar{display:none}
.selora-group-button{
flex:none;
min-height:44px;
border:1px solid #d7e4dc!important;
background:#fff!important;
padding:10px 18px!important;
border-radius:999px!important;
color:#345851!important;
font-weight:600;
box-shadow:0 6px 18px rgba(12,39,31,.04);
white-space:nowrap;
}
.selora-group-button.active{
background:var(--selora-green)!important;
color:#fff!important;
border-color:var(--selora-green)!important;
box-shadow:0 12px 26px rgba(12,166,107,.24);
}
.selora-menu-layout{display:block!important}
.selora-catalog-panel{margin-top:8px}
.selora-section-heading{
display:flex;
justify-content:space-between;
align-items:flex-end;
gap:14px;
margin:14px 2px 14px;
}
.selora-section-heading h2{
font-size:24px!important;
line-height:1.2;
margin:0!important;
color:#112f2b;
}
.selora-last-updated{
font-size:12px;
color:#8ca19a;
text-align:left;
}
.selora-product-grid{
display:flex!important;
flex-direction:column;
gap:14px;
}
.selora-product-card{
position:relative;
display:flex;
align-items:flex-end;
justify-content:space-between;
gap:14px;
min-height:120px;
padding:18px 18px 18px 20px!important;
background:#fff!important;
border:1px solid #ebf1ed!important;
border-radius:24px!important;
box-shadow:0 14px 38px rgba(20,60,45,.07);
overflow:hidden;
}
.selora-product-card:before{
content:"";
position:absolute;
right:0;
top:0;
bottom:0;
width:6px;
background:var(--accent,#0ca66b);
}
.selora-product-copy{flex:1;min-width:0}
.selora-product-group{
display:block;
font-size:12px!important;
font-weight:700;
color:var(--accent,#0ca66b)!important;
margin-bottom:4px;
}
.selora-product-card h3{
font-size:21px!important;
line-height:1.35;
margin:0 0 6px!important;
color:#0f2e2a;
}
.selora-product-card p{
font-size:13px!important;
line-height:1.7;
color:#6f817d;
margin:0;
}
.selora-product-copy strong{
display:block;
font-size:18px!important;
margin-top:10px;
color:#13342f;
}
.selora-add-button{
flex:none;
min-width:88px;
min-height:44px;
background:#dff8e9!important;
color:#087a4d!important;
border:0!important;
border-radius:16px!important;
padding:11px 16px!important;
font-weight:800!important;
box-shadow:inset 0 0 0 1px rgba(12,166,107,.08);
}
.selora-cart-panel,
.selora-cart{
position:sticky;
bottom:12px;
margin-top:20px;
border-radius:28px!important;
background:#082f2b!important;
color:#fff;
padding:18px!important;
box-shadow:0 18px 44px rgba(8,47,43,.22);
}
.selora-cart-heading,
.selora-cart-total,
.selora-cart-item,
.selora-quantity-control{
display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
}
.selora-cart-heading h2{
margin:2px 0 0;
font-size:22px;
color:#fff;
}
.selora-cart-count{
min-width:34px;
height:34px;
border-radius:999px;
display:inline-flex;
align-items:center;
justify-content:center;
background:rgba(255,255,255,.14);
font-weight:800;
}
.selora-cart-items{
display:flex;
flex-direction:column;
gap:10px;
margin-top:14px;
}
.selora-cart-item{
padding:12px 14px;
border-radius:18px;
background:rgba(255,255,255,.08);
}
.selora-cart-item b{display:block;margin-bottom:4px}
.selora-cart-item small{color:#cbdfd8}
.selora-quantity-control button{
width:30px;
height:30px;
border:0;
border-radius:10px;
background:#fff;
color:#0a5f53;
font-weight:800;
}
.selora-cart-total{
margin-top:14px;
padding-top:12px;
border-top:1px solid rgba(255,255,255,.12);
}
.selora-cart-total strong{font-size:20px}
.selora-cart-note,
.selora-cart-empty small{
display:block;
margin-top:12px;
font-size:12px;
line-height:1.75;
color:#cbdfd8;
}
.selora-cart-empty{
padding:12px 0;
color:#fff;
}
.selora-menu-footer{
text-align:center;
font-size:12px;
line-height:1.8;
color:#738883;
padding:18px 10px 0;
}
#seloraStoreContact{
display:block;
margin-top:5px;
}
@media (max-width:520px){
  .selora-menu-shell{
    padding:calc(env(safe-area-inset-top,0px) + 12px) 12px calc(env(safe-area-inset-bottom,0px) + 106px)!important;
  }
  .selora-menu-hero{
    grid-template-columns:64px minmax(0,1fr);
    gap:12px;
    padding:18px 16px!important;
    border-radius:26px!important;
  }
  .selora-menu-brand{
    width:64px!important;
    height:64px!important;
    border-radius:20px!important;
    font-size:30px;
  }
  .selora-menu-identity{
    padding-left:0;
    padding-top:28px;
  }
  .selora-menu-identity h1{font-size:23px!important}
  #seloraStoreMeta{font-size:12px!important}
  .selora-status-chip{
    top:14px;
    left:14px;
    padding:7px 10px!important;
    font-size:10px!important;
  }
  .selora-menu-toolbar{
    grid-template-columns:1fr;
  }
  #seloraRefreshButton{width:100%}
  .selora-section-heading h2{font-size:20px!important}
  .selora-product-card{
    align-items:flex-start;
    flex-direction:column;
  }
  .selora-add-button{
    width:100%;
  }
}
@media (min-width:521px){
  .selora-menu-shell{max-width:430px}
}

.selora-product-image{width:82px;height:82px;object-fit:cover;border-radius:20px;flex:none;margin-left:12px}.selora-menu-footer{display:none!important}

.selora-group-button{display:flex;flex-direction:column;align-items:center;gap:5px}.selora-group-button img{width:42px;height:42px;border-radius:14px;object-fit:cover}.selora-product-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9999;display:flex;align-items:flex-end;padding:15px}.selora-modal-card{width:100%;background:#fff;border-radius:30px;padding:22px;text-align:center}.selora-modal-card img{width:100%;height:230px;object-fit:cover;border-radius:24px}.selora-modal-card button{margin-top:15px;border:0;border-radius:16px;padding:12px 30px;background:#082f2b;color:#fff}

/* Mobile category sidebar */
.selora-menu-layout{position:relative}
@media(max-width:520px){
.selora-menu-shell{padding-right:88px!important;padding-left:12px!important}
.selora-group-nav{position:fixed;right:10px;top:120px;width:68px;height:calc(100vh - 180px);display:flex!important;flex-direction:column;overflow-y:auto;z-index:20;padding:5px 0!important}
.selora-group-button{width:68px;min-height:74px;padding:8px 4px!important;border-radius:18px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:10px!important}
.selora-group-button img,.group-placeholder{width:38px;height:38px;border-radius:12px;object-fit:cover;display:flex;align-items:center;justify-content:center;background:#eef5f0}
.selora-catalog-panel{width:100%}
}


/* 1.5.2 mobile polish */
@media(max-width:520px){
  .selora-menu-shell{
    max-width:none;
    padding-right:86px!important;
    padding-left:10px!important;
  }
  .selora-menu-hero{
    width:calc(100% + 76px);
    margin-right:-76px;
    padding-right:90px!important;
    min-height:138px;
    border-radius:30px!important;
  }
  .selora-menu-toolbar{
    margin-top:14px;
  }
  .selora-group-nav{
    right:10px;
    top:138px;
    width:70px;
    height:calc(100vh - 195px);
  }
  .selora-product-card{
    display:grid!important;
    grid-template-columns:92px 1fr;
    grid-template-areas:
      'image copy'
      'button button';
    gap:12px;
    align-items:center!important;
    padding:16px!important;
    min-height:164px;
  }
  .selora-product-image{
    grid-area:image;
    width:92px;
    height:92px;
    margin:0!important;
    border-radius:22px;
    object-fit:cover;
    justify-self:start;
    align-self:start;
    background:#f3f7f4;
  }
  .selora-product-copy{
    grid-area:copy;
    min-width:0;
    align-self:start;
  }
  .selora-product-card h3{
    font-size:24px!important;
    margin-bottom:8px!important;
  }
  .selora-product-copy strong{
    font-size:20px!important;
    margin-top:12px;
  }
  .selora-add-button{
    grid-area:button;
    width:100%;
    min-height:48px;
    border-radius:18px!important;
    margin-top:2px;
  }
}


/* 1.6 Product modal */
.selora-product-modal{position:fixed!important;inset:0!important;background:rgba(3,20,18,.65)!important;z-index:99999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important;backdrop-filter:blur(8px)}
.selora-modal-card{width:min(95vw,430px)!important;max-height:90vh;overflow:auto;background:#fff;border-radius:36px!important;padding:24px!important;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.3)}
.selora-modal-card img{width:100%!important;height:280px!important;object-fit:cover;border-radius:28px!important;margin-bottom:18px}
.selora-modal-card h2{font-size:30px!important;margin:8px 0!important;color:#102b29}
.selora-modal-card p{font-size:16px!important;line-height:2;color:#647772}
.selora-modal-card strong{display:block;font-size:24px;margin:18px;color:#0ca66b}
.selora-modal-actions{display:flex;gap:12px}
.selora-modal-actions button{flex:1;border:0;border-radius:18px;padding:15px;font-weight:800;font-size:16px}
.selora-modal-add{background:#0ca66b;color:white}
.selora-modal-cancel{background:#edf2ef;color:#163b35}
@media(max-width:520px){.selora-modal-card{width:100%!important;border-radius:30px!important}.selora-modal-card img{height:240px!important}}

/* 1.6.2 interaction and typography polish */
#selora-menu-root,
body.selora-standalone-body{
  font-family:"Vazirmatn","IRANSansX","Yekan Bakh","Dana","Sahel",Tahoma,sans-serif;
  font-weight:400;
  letter-spacing:-.08px;
  font-synthesis:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
.selora-menu-identity h1,
.selora-section-heading h2,
.selora-product-card h3,
.selora-modal-card h2{
  font-family:"Vazirmatn","IRANSansX","Yekan Bakh","Dana","Sahel",Tahoma,sans-serif;
  letter-spacing:-.45px;
}
.selora-product-card[data-open-product]{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}
.selora-product-card[data-open-product]:active{transform:scale(.992)}
.selora-product-card h3{font-weight:800!important;line-height:1.45!important}
.selora-product-group{font-weight:700;letter-spacing:-.15px}
.selora-product-copy strong{font-weight:800!important;letter-spacing:-.25px}
.selora-add-button{font-family:inherit;font-size:15px!important;letter-spacing:-.15px}
.selora-modal-card{font-family:inherit}
.selora-modal-card h2{font-weight:800!important}
.selora-modal-card p{font-weight:400}
.selora-modal-actions button{font-family:inherit;letter-spacing:-.15px}

@media(max-width:520px){
  .selora-menu-identity h1{font-size:22px!important;font-weight:800!important}
  .selora-menu-eyebrow{font-size:11px!important}
  #seloraStoreMeta{font-size:11.5px!important}
  .selora-group-button{font-family:inherit;font-size:11px!important;line-height:1.35!important}
  .selora-product-card{
    direction:ltr;
    grid-template-columns:96px minmax(0,1fr)!important;
    grid-template-areas:
      "image copy"
      "button button";
    gap:12px!important;
    min-height:158px!important;
  }
  .selora-product-image{
    grid-area:image!important;
    width:92px!important;
    height:92px!important;
    justify-self:start!important;
    align-self:start!important;
    object-fit:contain!important;
  }
  .selora-product-copy{
    grid-area:copy!important;
    direction:rtl;
    text-align:right;
  }
  .selora-product-card h3{font-size:20px!important;line-height:1.5!important;margin-bottom:6px!important}
  .selora-product-group{font-size:11px!important}
  .selora-product-card p{font-size:12px!important;line-height:1.75!important}
  .selora-product-copy strong{font-size:17px!important;margin-top:8px!important}
  .selora-add-button{font-size:15px!important;min-height:46px!important}
  .selora-modal-card h2{font-size:24px!important;line-height:1.45!important}
  .selora-modal-card p{font-size:14px!important;line-height:1.9!important}
  .selora-modal-card strong{font-size:21px!important}
  .selora-modal-actions button{font-size:15px!important;padding:14px 10px!important}
}
