/* ===== متغيرات التصميم (ألوان، أبعاد) ===== */
:root{
  --ink:#1E2F46;
  --ink-soft:#6B7280;
  --cream:#F8F5EF;
  --card:#FFFFFF;
  --saffron:#D98A4E;
  --saffron-dark:#AE6E3E;
  --chili:#EF4444;
  --chili-dark:#DC2626;
  --herb:#22C55E;
  --herb-dark:#16A34A;
  --sand:#E7E2DA;
  --sand-dark:#C4C0B9;
  --accent:#D98A4E;
  --navy:#173A63;
  --shadow: 0 10px 25px rgba(30,47,70,0.08);
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{ background:var(--cream); color:var(--ink); font-family:'Tajawal',sans-serif; min-height:100vh; overflow-x:hidden; }
html{ overflow-x:hidden; }
h1,h2,h3,.brand,.display{font-family:'Cairo',sans-serif;}
button{font-family:inherit;cursor:pointer;}
input,select,textarea{font-family:inherit;}
a{color:inherit;text-decoration:none;}
.hidden{display:none !important;}
.offlinebanner{position:sticky;top:0;z-index:9999;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;
  background:#b91c1c;color:#fff;padding:10px 14px;font-size:14px;text-align:center;}
.offlinebanner .btn{color:#fff;border-color:#fff;white-space:nowrap;}
.btn-danger{border-color:#b91c1c !important;color:#b91c1c !important;}
.s-error{color:#b91c1c;font-weight:600;}
/* ===== صفحة حسابي / العناوين المحفوظة ===== */
.acct-hero{ background:linear-gradient(135deg,var(--navy) 0%,#456182 100%); border-radius:20px;padding:22px 20px;color:#fff;
  display:flex;align-items:center;gap:16px;margin-bottom:22px;position:relative;overflow:hidden; }
.acct-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 85% -10%, rgba(217,138,78,0.35), transparent 55%);pointer-events:none;}
.acct-avatar{width:58px;height:58px;border-radius:50%;background:var(--saffron);color:#fff;font-family:'Cairo',sans-serif;
  font-size:24px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px rgba(0,0,0,0.2);}
.acct-hero-text{flex:1;min-width:0;}
.acct-hero-text h2{margin:0 0 4px;font-size:18px;font-family:'Cairo',sans-serif;}
.acct-hero-text p{margin:0;font-size:13px;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:ltr;text-align:right;}
.acct-section-title{display:flex;align-items:center;gap:8px;font-family:'Cairo',sans-serif;font-weight:800;font-size:15px;margin:0 0 12px;color:var(--ink);}
.addr-list{display:flex;flex-direction:column;gap:10px;margin-bottom:18px;}
.addr-card{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--sand);border-radius:14px;padding:13px 14px;box-shadow:0 2px 8px rgba(30,47,70,0.05);}
.addr-icon{width:42px;height:42px;border-radius:12px;background:var(--sand);color:var(--saffron-dark);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:19px;}
.addr-text{flex:1;min-width:0;}
.addr-text strong{display:block;font-size:14px;color:var(--ink);}
.addr-text span{display:block;font-size:12.5px;color:var(--ink-soft);margin-top:2px;line-height:1.4;
  overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.addr-del{background:none;border:none;color:var(--chili);font-size:17px;padding:6px;flex-shrink:0;border-radius:8px;}
.addr-del:hover{background:rgba(239,68,68,0.08);}
.addr-empty{background:var(--card);border:1.5px dashed var(--sand-dark);border-radius:14px;padding:22px 16px;text-align:center;color:var(--ink-soft);font-size:13.5px;margin-bottom:18px;}
.acct-actions{display:flex;gap:10px;margin-top:18px;}
.acct-actions .btn{flex:1;}
.ck-addr-chip{display:inline-flex;align-items:center;gap:6px;background:var(--card);border:1.5px solid var(--sand);
  color:var(--ink);font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;transition:.15s;}
.ck-addr-chip:hover{border-color:var(--saffron);}
.acct-form-title{margin-bottom:14px;}
.acct-save-btn{margin-top:10px;}
.ck-row-gap8{display:flex;gap:8px;}
.ck-wrap{flex-wrap:wrap;}
.ck-row-gap8-center{display:flex;align-items:center;gap:8px;}
.flex1{flex:1;}
.ref-code{font-size:1.2em;font-weight:700;letter-spacing:1px;}
::selection{background:var(--saffron);color:var(--ink);}
a:focus-visible, button:focus-visible, input:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; }

/* ===== Header ===== */
.topbar{ position:sticky;top:0;z-index:50; background:var(--navy); color:#FFFFFF; padding:14px 20px; display:flex;align-items:center;gap:18px; box-shadow:0 2px 10px rgba(0,0,0,0.15); flex-wrap:wrap; }
.securestrip{ background:#122E4F; color:#F4DCCA; font-size:11.5px; text-align:center; padding:5px 10px; }
.securestrip b{ color:#fff; }
.brand{font-family:'Cairo',sans-serif;font-size:38px;font-weight:800;color:var(--accent);letter-spacing:0.5px;display:flex;align-items:center;gap:6px;cursor:pointer;flex-shrink:0;}
.brand-word{position:relative;display:inline-block;line-height:1.9;padding-top:6px;}
.searchwrap{flex:1;max-width:420px;position:relative;}
.searchwrap input{ width:100%;padding:10px 14px;border-radius:24px;border:1px solid rgba(255,255,255,0.25); background:rgba(255,255,255,0.14);color:#FFFFFF;font-size:14px; }
.searchwrap input::placeholder{color:rgba(255,255,255,0.65);}
.searchwrap input:focus{outline:2px solid var(--accent);background:rgba(255,255,255,0.2);}
.navlinks{display:flex;align-items:center;gap:8px;margin-right:auto;flex-shrink:1;flex-wrap:wrap;min-width:0;}
.topbar.topbar-minimal .searchwrap,
.topbar.topbar-minimal .brand,
.topbar.topbar-minimal .navbtn{display:none;}
.topbar.topbar-minimal{padding-top:10px;padding-bottom:10px;}
/* ===== شريط التنقّل السفلي ===== */
.navbtn{ background:none;border:none;color:#FFFFFF;font-size:14px;font-weight:500; padding:9px 12px;border-radius:10px;position:relative;white-space:nowrap; transition:background .15s; }
.navbtn:hover{background:rgba(255,255,255,0.12);}
.navbtn.active{background:rgba(217,138,78,0.22);color:var(--accent);}
.cartbadge{ position:absolute;top:2px;right:2px;background:var(--chili);color:#fff; font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:9px; display:flex;align-items:center;justify-content:center;padding:0 4px; }
@keyframes bump{0%{transform:scale(1);}40%{transform:scale(1.35);}100%{transform:scale(1);}}
.bump{animation:bump .3s ease;}

main{max-width:1080px;margin:0 auto;padding:24px 20px 80px;}
.view{display:none;}
.view.active{display:block;animation:fadein .25s ease;}
@keyframes fadein{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}

/* ===== Buttons ===== */
.btn{ display:inline-flex;align-items:center;justify-content:center;gap:8px; border:none;border-radius:12px;padding:12px 22px;font-size:15px;font-weight:700; transition:transform .12s, box-shadow .12s; }
.btn:active{transform:scale(0.97);}
.btn-primary{background:var(--saffron);color:var(--ink);}
.btn-primary:hover{background:var(--saffron-dark);}
.btn-chili{background:var(--herb);color:#fff;}
.btn-chili:hover{background:var(--herb-dark);}
.btn-outline{background:transparent;border:2px solid var(--ink);color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:var(--cream);}
.btn-ghost{background:transparent;color:var(--ink-soft);text-decoration:underline;padding:8px 4px;}
.btn-sm{padding:7px 14px;font-size:13px;border-radius:9px;}
.btn-block{width:100%;}
.btn:disabled{opacity:.5;cursor:not-allowed;}

/* ===== Hero / offers ===== */
.hero{ background:linear-gradient(135deg,var(--navy) 0%,#456182 100%); border-radius:20px;padding:14px 18px;color:#FFFFFF;margin-bottom:20px; position:relative;overflow:hidden; min-height:60px; }
.hero h1{font-size:15px;margin:0 0 4px;color:var(--accent);}
.hero p{margin:0 0 10px;color:#F4DCCA;font-size:11.5px;}
.hero .etarow{display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;}
.hero .etarow::-webkit-scrollbar{display:none;}
.hero .etachip{background:rgba(255,255,255,0.14);border:1px solid rgba(255,255,255,0.25);color:#fff;font-size:11px;padding:5px 10px;border-radius:999px;white-space:nowrap;flex-shrink:0;}
.offersbar-carousel{
  position:relative; border-radius:16px; margin-bottom:20px; overflow:hidden; min-height:190px;
  background:linear-gradient(90deg,var(--accent),#E6B38C);
}
.offerslide{
  position:absolute; inset:0; padding:30px 28px;
  display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap;
  color:var(--ink); opacity:0; visibility:hidden; transform:translateX(12px);
  transition:opacity .45s ease, transform .45s ease, visibility 0s linear .45s;
  pointer-events:none;
}
.offerslide.active{
  position:relative; opacity:1; visibility:visible; transform:translateX(0); pointer-events:auto;
  transition:opacity .45s ease, transform .45s ease;
}
.offerslide:nth-child(1){ background:linear-gradient(90deg,var(--accent),#E6B38C); }
.offerslide:nth-child(2){ background:linear-gradient(90deg,var(--herb),#7ED9A0); }
.offerslide:nth-child(3){ background:linear-gradient(90deg,var(--navy),#4A6FA0); color:#fff; }
.offerslide:nth-child(3) span{ color:#fff; opacity:.9; }
.offerslide b{font-family:'Cairo';font-size:26px;display:block;}
.offerslide span{font-size:14px;opacity:.95;}
.offerslide-imgfull{padding:0;display:block;}
.offerslide-imgfull.active{position:absolute;inset:0;}
.offerslide-img-full{display:block;width:100%;height:100%;object-fit:cover;}
.offerslide-imgfull .btn{position:absolute;bottom:14px;inset-inline-end:14px;z-index:1;background:rgba(255,255,255,.94);}
.promo-dots{
  position:absolute; bottom:8px; left:50%; transform:translateX(-50%);
  display:flex; gap:6px; z-index:2;
}
.promo-dot{
  width:7px;height:7px;border-radius:50%;border:none;background:rgba(0,0,0,0.28);
  padding:0;cursor:pointer;transition:background .25s, width .25s;
}
.promo-dot.active{ background:var(--ink); width:18px; border-radius:4px; }
.offerslide.active:nth-child(3) ~ .promo-dots .promo-dot{ background:rgba(255,255,255,0.5); }
.offerslide.active:nth-child(3) ~ .promo-dots .promo-dot.active{ background:#fff; }
.sectiontitle{font-size:19px;font-weight:700;margin:26px 0 14px;display:flex;align-items:center;gap:8px;}

/* ===== Category chips ===== */
.catchip{ flex-shrink:0;background:var(--card);border:1.5px solid var(--sand);color:var(--ink-soft); font-size:13.5px;font-weight:600;padding:8px 16px;border-radius:999px;transition:.15s; }
.catchip.active,.catchip:hover{background:var(--navy);border-color:var(--navy);color:var(--accent);}

/* ===== Shop / product grid (rcard) ===== */
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;}
.rcard{ background:var(--card);border-radius:16px;padding:16px;cursor:pointer;position:relative; box-shadow:var(--shadow);transition:transform .15s, box-shadow .15s; border:1px solid var(--sand);display:flex;flex-direction:column;gap:8px; }
.rcard:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(35,51,70,0.14);}
.rcard .icon{ width:60px;height:60px;border-radius:14px;background:var(--sand); display:flex;align-items:center;justify-content:center;font-size:30px;margin-bottom:4px;overflow:hidden; }
.rcard .icon img{ width:100%;height:100%;object-fit:cover; }
.rcard .off{position:absolute;top:12px;left:12px;background:var(--accent);color:var(--ink);font-size:11px;font-weight:800;padding:3px 9px;border-radius:8px;}
.rcard h3{font-size:15.5px;margin:0;}
.rcard .cat{font-size:12px;color:var(--ink-soft);opacity:.75;}
.rcard .meta{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--ink-soft);margin-top:auto;}
.rcard .meta .rating{color:var(--saffron-dark);font-weight:700;font-variant-numeric:tabular-nums;}
.rcard .meta .old{text-decoration:line-through;color:var(--sand-dark);font-size:11px;margin-inline-start:4px;}

/* بطاقات هيكلية (skeleton) تُعرض فورًا عند فتح الموقع، قبل ما توصل بيانات
   المحلات من قاعدة البيانات، بدل شاشة فاضية لثانية أو ثانيتين. */
.skcard{ background:var(--card);border-radius:16px;padding:16px;box-shadow:var(--shadow);border:1px solid var(--sand);display:flex;flex-direction:column;gap:10px; }
.skcard .skicon{width:60px;height:60px;border-radius:14px;}
.skbar{border-radius:8px;background:linear-gradient(90deg, var(--sand) 25%, var(--sand-dark) 37%, var(--sand) 63%);background-size:400% 100%;animation:skshimmer 1.4s ease-in-out infinite;}
.skcard .skicon{ background:linear-gradient(90deg, var(--sand) 25%, var(--sand-dark) 37%, var(--sand) 63%);background-size:400% 100%;animation:skshimmer 1.4s ease-in-out infinite; }
.skcard .sktitle{height:15px;width:70%;}
.skcard .skcat{height:11px;width:45%;}
.skcard .skmeta{height:12px;width:55%;margin-top:auto;}
@keyframes skshimmer{ 0%{background-position:100% 0;} 100%{background-position:0 0;} }
@media (prefers-reduced-motion: reduce){ .skicon,.skbar{animation:none;} }
.empty{text-align:center;padding:50px 20px;color:var(--ink-soft);}
.empty .bigicon{font-size:44px;margin-bottom:10px;}

/* ===== Shop / product detail (rhead + mealrow) ===== */
.backbtn{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--ink-soft);margin-bottom:14px;background:none;border:none;}
.rhead{display:flex;gap:18px;align-items:center;background:var(--card);border-radius:18px;padding:20px;border:1px solid var(--sand);margin-bottom:20px;}
.rhead .icon{width:80px;height:80px;border-radius:18px;background:var(--sand);display:flex;align-items:center;justify-content:center;font-size:42px;flex-shrink:0;overflow:hidden;}
.rhead .icon img{width:100%;height:100%;object-fit:cover;}
.rhead h2{margin:0 0 6px;font-size:22px;}
.rhead .meta{display:flex;gap:16px;font-size:13px;color:var(--ink-soft);flex-wrap:wrap;}

/* ===== صفحة تفاصيل المنتج (زي صفحة تطبيق بمتجر بلاي) ===== */
.pdhead{display:flex;flex-direction:column;gap:16px;margin-bottom:20px;}
.pdicon{width:100%;height:260px;border-radius:22px;background:var(--sand);display:flex;align-items:center;justify-content:center;font-size:76px;flex-shrink:0;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,0.12);cursor:zoom-in;}
.pdicon img{width:100%;height:100%;object-fit:cover;border-radius:22px;}
.pdtitle h1{margin:0 0 6px;font-size:19px;line-height:1.35;}
.pdtitle .unit{font-size:13px;color:var(--ink-soft);opacity:.8;margin-bottom:8px;}
.pdtitle .price{font-size:20px;font-weight:800;color:var(--saffron-dark);font-variant-numeric:tabular-nums;}
.pdtitle .price .old{font-size:14px;font-weight:600;color:var(--ink-soft);text-decoration:line-through;opacity:.7;margin-inline-end:6px;}
.pdactions{margin:18px 0;}
.pdactions .addbtn{width:100%;padding:13px;font-size:15px;border-radius:14px;}
.pdactions .stepper{width:100%;justify-content:center;background:var(--sand);border-radius:14px;padding:10px;gap:20px;}
.pdactions .stepper button{width:38px;height:38px;font-size:19px;}
.pdactions .stepper .qty{font-size:16px;min-width:24px;}
.pdsection{margin-top:22px;}
.pdsection h3{font-size:14.5px;margin:0 0 8px;}
.pdsection p{margin:0;font-size:13.5px;color:var(--ink-soft);line-height:1.7;}
.mealist{display:flex;flex-direction:column;gap:10px;}
.mealrow{ display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--sand); border-radius:16px;padding:12px;cursor:pointer;transition:background .15s; }
.mealrow:hover{background:var(--cream);}
.mealrow .micon{width:72px;height:72px;border-radius:20px;background:var(--sand);display:flex;align-items:center;justify-content:center;font-size:32px;flex-shrink:0;overflow:hidden;box-shadow:0 2px 6px rgba(0,0,0,0.08);position:relative;}
.mealrow .micon img{width:100%;height:100%;object-fit:cover;border-radius:20px;}
.qtybadge{position:absolute;top:-6px;left:-6px;background:var(--chili);color:#fff;font-size:11px;font-weight:700;min-width:20px;height:20px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:0 1px 4px rgba(0,0,0,0.2);}
.mealrow .chevron{font-size:20px;color:var(--ink-soft);opacity:.5;flex-shrink:0;}
.mealrow .info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;}
.mealrow .info h4{margin:0;font-size:14px;}
.mealrow .price{font-weight:700;color:var(--saffron-dark);font-variant-numeric:tabular-nums;font-size:13.5px;}
.stepper{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.stepper button{ width:30px;height:30px;border-radius:50%;border:1.5px solid var(--saffron);background:var(--card); font-size:16px;font-weight:700;color:var(--ink);display:flex;align-items:center;justify-content:center; }
.stepper button:hover{background:var(--saffron);color:var(--ink);}
.stepper .qty{min-width:18px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums;}
.addbtn{background:var(--saffron);color:var(--ink);border:none;border-radius:10px;padding:8px 16px;font-size:13px;font-weight:700;flex-shrink:0;}
.addbtn:hover{background:var(--saffron-dark);color:var(--ink);}

/* ===== Receipt (cart/checkout signature) ===== */
.receipt{ background:var(--card);border-radius:4px;padding:0;max-width:480px;margin:0 auto; box-shadow:var(--shadow);position:relative; }
.receipt-notch{ height:14px;width:100%; background-image:radial-gradient(circle at 7px 0, transparent 7px, var(--cream) 7.5px); background-size:14px 14px;background-position:0 -7px;background-repeat:repeat-x; }
.receipt-body{padding:22px 24px;border-bottom:2px dashed var(--sand-dark);}
.receipt-body:last-of-type{border-bottom:none;}
.receipt-head{text-align:center;margin-bottom:16px;}
.receipt-head .rid{font-size:11px;letter-spacing:2px;color:var(--ink-soft);opacity:.7;text-transform:uppercase;}
.receipt-head h2{margin:6px 0 2px;font-size:20px;}
.rline{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px dotted var(--sand-dark);font-size:13.5px;}
.rline:last-child{border-bottom:none;}
.rline .lname{flex:1;}
.rline .lname small{display:block;color:var(--ink-soft);opacity:.7;font-size:11px;margin-top:2px;}
.rline .lprice{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap;}
.rtotal{display:flex;justify-content:space-between;padding:10px 0;font-size:14px;}
.usd-eq{font-size:11.5px;color:var(--ink-soft);font-weight:500;}
.rtotal.grand{font-size:18px;font-weight:800;color:var(--ink);border-top:2px dashed var(--sand-dark);margin-top:6px;padding-top:14px;}
.cartqty{display:flex;align-items:center;gap:6px;}
.cartqty button{width:24px;height:24px;border-radius:50%;border:1px solid var(--sand-dark);background:var(--cream);font-size:13px;font-weight:700;}
.cartqty .qty{min-width:16px;text-align:center;font-weight:700;font-size:13px;}
.rmbtn{background:none;border:none;color:var(--chili);font-size:12px;font-weight:700;text-decoration:underline;}

/* ===== Forms ===== */
.formgrid{display:flex;flex-direction:column;gap:14px;}
.field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px;color:var(--ink-soft);}
.field input,.field select,.field textarea{ width:100%;padding:11px 14px;border-radius:10px;border:1.5px solid var(--sand-dark); background:var(--card);font-size:14px;color:var(--ink); }
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--saffron);box-shadow:0 0 0 3px rgba(217,138,78,0.3);}
.field textarea{resize:vertical;min-height:70px;}
.field .hint-inline{font-size:11.5px;color:var(--ink-soft);opacity:.75;margin-top:5px;}
.field .error{font-size:11.5px;color:var(--chili);margin-top:5px;display:none;}
.otp-input{letter-spacing:10px;font-size:20px;font-weight:800;text-align:center;}
/* ===== نماذج الإدخال العامة ===== */
.formcard{background:var(--card);border-radius:16px;padding:24px;border:1px solid var(--sand);max-width:480px;margin:0 auto;box-shadow:var(--shadow);}
.hint{font-size:12px;color:var(--ink-soft);opacity:.75;text-align:center;margin-top:14px;}
.rejectnote{color:#c0392b;}
.securenote{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11.5px;color:var(--ink-soft);margin-top:14px;}
.ck-steps{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px;gap:2px;}
.ck-steps .cks{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;position:relative;}
.ck-steps .cks::before{content:'';position:absolute;top:15px;right:50%;width:100%;height:2px;background:var(--sand-dark);z-index:0;}
.ck-steps .cks:last-child::before{content:none;}
.ck-steps .cks.done::before{background:var(--herb);}
.ck-steps .ckn{width:30px;height:30px;border-radius:50%;background:var(--sand);color:var(--ink-soft);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;position:relative;z-index:1;transition:background .2s,color .2s;}
.ck-steps .cks.active .ckn{background:var(--herb);color:#fff;}
.ck-steps .cks.done .ckn{background:var(--herb);color:#fff;}
.ck-steps .ckl{font-size:10.5px;color:var(--ink-soft);text-align:center;font-weight:600;}
.ck-steps .cks.active .ckl{color:var(--ink);font-weight:800;}
.ck-panel{display:none;}
.ck-panel.active{display:flex;flex-direction:column;gap:14px;}
.ck-nav{display:flex;gap:10px;margin-top:6px;}
.ck-nav .btn{flex:1;}
/* ===== بطاقة الدفع عبر شام كاش (QR) ===== */
.qrcard{
  background:linear-gradient(160deg,var(--navy) 0%,#456182 100%);
  border-radius:16px;padding:20px;display:flex;align-items:center;gap:16px;
  box-shadow:var(--shadow);
}
.qrcard .qrimg-wrap{
  background:#FFFFFF;border-radius:12px;padding:8px;flex-shrink:0;
  box-shadow:0 4px 14px rgba(0,0,0,0.18);
  width:112px;display:flex;align-items:center;justify-content:center;
}
.qrcard .qrimg-wrap img{width:96px;height:96px;display:block;border-radius:4px;object-fit:contain;}
.qrimg-placeholder{width:96px;font-size:9.5px;line-height:1.4;text-align:center;color:#5b6b7d;}
.qrcard .qrinfo{flex:1;min-width:0;color:#FFFFFF;}
.qrcard .qrinfo .qrlabel{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--accent);font-weight:700;margin-bottom:6px;}
.qrcard .qrinfo .qrname{font-size:16px;font-weight:800;margin-bottom:2px;}
.qrcard .qrinfo .qrid{font-size:11px;color:#F4DCCA;font-family:monospace;direction:ltr;text-align:right;word-break:break-all;opacity:.85;}
.qrcard .qrinfo .qrhint{font-size:11.5px;color:#F4DCCA;margin-top:8px;line-height:1.6;}

/* ===== Auth ===== */
.authtabs{display:flex;gap:8px;margin-bottom:20px;background:var(--sand);border-radius:12px;padding:4px;max-width:520px;margin-inline:auto;}

/* ===== Login welcome hero ===== */
@keyframes floatY{0%,100%{transform:translateY(0);}50%{transform:translateY(-9px);}}
@keyframes pegasusFly{0%{transform:translateY(0) rotate(0deg);}25%{transform:translateY(-6px) rotate(-2deg);}50%{transform:translateY(-10px) rotate(0deg);}75%{transform:translateY(-6px) rotate(2deg);}100%{transform:translateY(0) rotate(0deg);}}
@keyframes breathe{0%,100%{opacity:1;transform:translateY(0);}50%{opacity:.72;transform:translateY(-2px);}}
@keyframes riderMove{0%{transform:translateX(28px);}100%{transform:translateX(-28px);}}
.authhero{
  max-width:480px;margin:0 auto 28px;background:var(--card);border:1px solid var(--sand);
  border-radius:20px;overflow:hidden;box-shadow:var(--shadow);
}
.authhero-top{background:linear-gradient(180deg,#FBF8F3 0%,var(--cream) 100%);padding:34px 24px 18px;text-align:center;}
.authhero-mark{display:inline-block;}
.authhero-mark img{width:76px;height:auto;display:block;animation:pegasusFly 3.2s ease-in-out infinite;}
.authhero-word{margin-top:2px;animation:floatY 3s ease-in-out infinite;animation-delay:.15s;}
.authhero-word span{font-family:'Cairo',sans-serif;font-weight:800;font-size:32px;color:var(--navy);}
.authhero-tagline{margin-top:10px;font-size:13.5px;color:var(--ink-soft);font-weight:500;min-height:18px;}
.authhero-tagline .cursor{display:inline-block;width:2px;height:13px;background:var(--saffron-dark);margin-inline-start:3px;vertical-align:middle;animation:blink 0.8s step-end infinite;}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:0;}}
.authhero-dots{display:flex;justify-content:center;gap:5px;margin-top:14px;}
.authhero-dots span{width:6px;height:6px;border-radius:50%;background:var(--sand-dark);}
.authhero-dots span.on{background:var(--saffron-dark);width:16px;border-radius:4px;}
.authhero-scene{position:relative;height:92px;background:linear-gradient(180deg,var(--cream) 0%,#EFE7DB 100%);overflow:hidden;border-top:1px solid var(--sand);}
.authhero-scene .skyline{position:absolute;bottom:26px;left:0;right:0;height:40px;opacity:.5;}
.authhero-scene .road{position:absolute;bottom:0;left:0;right:0;height:28px;background:var(--navy);}
.authhero-scene .road::before{content:'';position:absolute;top:50%;left:0;right:0;height:2px;background:repeating-linear-gradient(90deg,var(--accent) 0 14px,transparent 14px 28px);transform:translateY(-50%);}
.authhero-scene .rider{position:absolute;bottom:22px;right:50%;font-size:30px;animation:riderMove 6s linear infinite alternate;}
.authchoice{display:flex;gap:10px;padding:18px 24px 4px;}
.achoice-card{
  flex:1;text-align:center;cursor:pointer;background:var(--card);
  border:2px solid var(--sand-dark);border-radius:14px;padding:14px 10px;
  display:flex;flex-direction:column;align-items:center;gap:4px;
  transition:border-color .15s,background .15s,transform .1s;
}
.achoice-card:active{transform:scale(0.98);}
.achoice-card.active{border-color:var(--accent);background:#FFF6E9;}
.achoice-icon{font-size:26px;line-height:1;}
.achoice-title{font-family:'Cairo';font-weight:700;font-size:14.5px;color:var(--ink);}
.achoice-desc{font-size:10.5px;line-height:1.4;color:var(--ink-soft);}
.authhero-actions{padding:20px 24px 22px;}
.authhero-actions .btn{font-size:14.5px;}
.authhero-or{display:flex;align-items:center;gap:10px;color:var(--ink-soft);font-size:12px;margin:14px 0;}
.authhero-or::before,.authhero-or::after{content:'';flex:1;height:1px;background:var(--sand-dark);}
.authhero-social{display:flex;gap:8px;}
.authhero-social button{
  flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;
  border:1.5px solid var(--sand-dark);background:var(--card);border-radius:12px;padding:10px 6px;
  font-size:11px;font-weight:600;color:var(--ink-soft);
}
.authhero-social button:hover{border-color:var(--saffron);color:var(--ink);}
.authhero-social button .ic{font-size:16px;}
.authhero-features{display:flex;border-top:1px solid var(--sand);}
.authhero-features .af{flex:1;text-align:center;padding:14px 4px;font-size:10.5px;color:var(--ink-soft);border-left:1px solid var(--sand);}
.authhero-features .af:first-child{border-left:none;}
.authhero-features .af .ic{font-size:17px;display:block;margin-bottom:4px;}
.authhero-manual{max-width:480px;margin:0 auto 10px;text-align:center;font-size:12.5px;color:var(--ink-soft);}
.authtabs button{flex:1;background:none;border:none;padding:10px;border-radius:9px;font-weight:700;font-size:13.5px;color:var(--ink-soft);}
.authtabs button.active{background:var(--card);color:var(--ink);box-shadow:0 2px 6px rgba(0,0,0,0.08);}

/* ===== Orders ===== */
.orderlist{display:flex;flex-direction:column;gap:14px;max-width:480px;margin:0 auto;}
.ordercard{background:var(--card);border:1px solid var(--sand);border-radius:14px;padding:16px;}
.ordercard .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.ordercard .top b{font-size:14px;}
.ordercard .items{font-size:12.5px;color:var(--ink-soft);margin-bottom:8px;}
.ordercard .bottom{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;}
.statuspill{display:inline-block;font-size:11.5px;font-weight:700;padding:4px 12px;border-radius:20px;background:rgba(34,197,94,0.14);color:var(--herb-dark);}
.orderstatus{display:flex;align-items:flex-start;justify-content:space-between;margin:14px 0 6px;position:relative;}
.orderstatus::before{content:'';position:absolute;top:11px;right:16.6%;left:16.6%;height:2px;background:var(--sand);z-index:0;}
.orderstatus .ostep{position:relative;z-index:1;flex:1;text-align:center;font-size:10.5px;color:var(--ink-soft);line-height:1.4;}
.orderstatus .ostep .odot{width:22px;height:22px;border-radius:50%;background:var(--card);border:2px solid var(--sand-dark);display:flex;align-items:center;justify-content:center;margin:0 auto 6px;font-size:11px;color:var(--ink-soft);transition:.2s;}
.orderstatus .ostep.done .odot{background:var(--herb);border-color:var(--herb);color:#fff;}
.orderstatus .ostep.active .odot{background:var(--saffron);border-color:var(--saffron-dark);color:var(--ink);box-shadow:0 0 0 4px rgba(217,138,78,0.25);}
.orderstatus .ostep.done,.orderstatus .ostep.active{color:var(--ink);font-weight:700;}

/* ===== Admin & merchant dashboards ===== */
.admingrid{display:grid;grid-template-columns:200px 1fr;gap:24px;}
.adminnav{display:flex;flex-direction:column;gap:6px;}
.adminnav button{ text-align:right;background:none;border:none;padding:11px 14px;border-radius:10px;font-size:14px;font-weight:600;color:var(--ink-soft); }
.adminnav button.active{background:var(--navy);color:var(--accent);}
.admincard{background:var(--card);border-radius:16px;padding:22px;border:1px solid var(--sand);}
.admincard h3{margin:0 0 16px;font-size:17px;}
.adminlist{display:flex;flex-direction:column;gap:10px;margin-top:18px;}
/* ===== صفوف قوائم لوحة الإدارة/التاجر ===== */
.adminrow{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--sand);border-radius:10px;}
.adminrow .ai{font-size:22px;width:38px;height:38px;background:var(--sand);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;}
.adminrow .ai img{width:100%;height:100%;object-fit:cover;}
.adminrow .at{flex:1;font-size:13.5px;}
.adminrow .at strong{display:block;}
.adminrow .at span{color:var(--ink-soft);font-size:12px;}
.delbtn{background:none;border:none;color:var(--chili);font-size:18px;line-height:1;padding:4px 8px;}
.subhead{font-size:13px;font-weight:700;color:var(--ink-soft);margin:18px 0 8px;display:flex;align-items:center;gap:6px;}
.statuscard{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;margin-bottom:16px;font-size:13.5px;font-weight:700;}
.statuscard.on{background:rgba(34,197,94,0.12);color:var(--herb-dark);}
.statuscard.off{background:rgba(245,158,11,0.12);color:#B45309;}
.codeblock{background:var(--ink);color:#F8F5EF;border-radius:10px;padding:14px;font-family:monospace;font-size:11.5px;line-height:1.7;direction:ltr;text-align:left;overflow-x:auto;}
.viewonlybanner{background:#FCF6F1;border:1px solid #F9EDE4;color:var(--ink);font-size:13px;font-weight:700;padding:12px 16px;border-radius:10px;display:flex;align-items:center;gap:8px;margin-bottom:16px;}
.mtable{width:100%;border-collapse:collapse;}
.mtable th{background:var(--cream);text-align:right;font-size:12px;color:var(--ink-soft);padding:10px 12px;border-bottom:1px solid var(--sand);}
.mtable td{padding:10px 12px;border-bottom:1px solid var(--sand);font-size:13.5px;}
.mtable tr:last-child td{border-bottom:none;}
.mprod{display:flex;align-items:center;gap:8px;}
.mprod .e{width:30px;height:30px;border-radius:8px;background:var(--sand);display:flex;align-items:center;justify-content:center;font-size:15px;overflow:hidden;}
.mprod .e img{width:100%;height:100%;object-fit:cover;}
.mold{text-decoration:line-through;color:var(--sand-dark);font-size:11px;margin-inline-start:5px;}

/* ===== Toast ===== */
#toast{ position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(120%); opacity:0;pointer-events:none; background:var(--navy);color:#FFFFFF;padding:13px 22px;border-radius:12px;font-size:14px;font-weight:600; z-index:200;transition:transform .25s ease, opacity .25s ease;box-shadow:0 10px 25px rgba(0,0,0,0.25); display:flex;align-items:center;gap:8px;max-width:90vw;text-align:center; }
#toast.toast-error{background:var(--chili-dark);}
#toast.toast-success{background:var(--herb-dark);}

.install-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:300;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s;}
.install-modal-overlay.show{opacity:1;pointer-events:auto;}
.install-modal{background:var(--card);border-radius:20px 20px 0 0;max-width:440px;width:100%;padding:26px 24px 24px;box-shadow:0 -10px 30px rgba(0,0,0,0.2);transform:translateY(24px);transition:transform .25s;}
.install-modal-overlay.show .install-modal{transform:translateY(0);}
.install-modal .imhead{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.install-modal .imhead .im-icon{width:40px;height:40px;border-radius:11px;background:var(--sand);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}
.install-modal h3{margin:0;font-size:16.5px;}
.install-modal ol{padding-inline-start:20px;font-size:13.5px;color:var(--ink-soft);line-height:2.1;margin:0 0 18px;}
.install-modal ol b{color:var(--ink);}
.settingsbtn{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,0.14);border:none;color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s, transform .3s;}
.settingsbtn:hover{background:rgba(255,255,255,0.26);transform:rotate(45deg);}
.settings-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:300;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s;}
.settings-modal-overlay.show{opacity:1;pointer-events:auto;}
.settings-modal{background:var(--card);border-radius:20px 20px 0 0;max-width:440px;width:100%;padding:26px 24px 24px;box-shadow:0 -10px 30px rgba(0,0,0,0.2);transform:translateY(24px);transition:transform .25s;}
.settings-modal-overlay.show .settings-modal{transform:translateY(0);}
.settings-modal .imhead{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.settings-modal .imhead .im-icon{width:40px;height:40px;border-radius:11px;background:var(--sand);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}
.settings-modal h3{margin:0;font-size:16.5px;}
.settings-menu{display:flex;flex-direction:column;gap:10px;margin-bottom:16px;}
.settings-menu button{display:flex;align-items:center;gap:12px;width:100%;text-align:start;background:var(--sand);border:none;border-radius:12px;padding:14px 16px;font-size:14.5px;font-weight:600;color:var(--ink);transition:background .15s;}
.settings-menu button:hover{background:var(--sand-dark);}
.settings-menu button.danger{color:#fff;background:var(--chili);}
.settings-menu button.danger:hover{background:var(--chili-dark);}
.settings-menu .smicon{font-size:19px;flex-shrink:0;}
.settings-menu .greeting{font-size:13px;color:var(--ink-soft);margin:0 0 4px;}
.settings-menu button.linebusy{opacity:.6;cursor:not-allowed;}
.settings-menu .linestatus{margin-inline-start:auto;font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px;flex-shrink:0;white-space:nowrap;}
.settings-menu .linestatus.is-available{background:rgba(34,197,94,0.15);color:var(--herb-dark);}
.settings-menu .linestatus.is-busy{background:rgba(239,68,68,0.12);color:var(--chili-dark);}
.img-lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.86);z-index:320;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .2s;}
.img-lightbox-overlay.show{opacity:1;pointer-events:auto;}
.img-lightbox-overlay img{max-width:100%;max-height:100%;border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,0.4);}
.img-lightbox-close{position:absolute;top:18px;left:18px;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.15);color:#fff;border:none;font-size:20px;display:flex;align-items:center;justify-content:center;}
.mealrow .micon[data-zoomable]{cursor:zoom-in;}
#toast.show{transform:translateX(-50%) translateY(0);opacity:1;pointer-events:auto;}

.flexbetween{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.pagehead{margin-bottom:20px;}
.pagehead h2{font-size:21px;margin:0 0 4px;}
.pagehead p{margin:0;color:var(--ink-soft);font-size:13.5px;opacity:.8;}

@media (max-width:640px){
  .topbar{padding:12px;gap:10px;}
  .brand{font-size:30px;}
  .brand .tag{display:none;}
  .searchwrap{display:block;order:5;flex-basis:100%;max-width:none;margin-top:8px;}
  .navlinks{flex-wrap:wrap;justify-content:flex-end;row-gap:4px;}
  .navbtn{padding:7px 9px;font-size:12px;}
  main{padding:18px 14px 70px;}
  .hero{padding:22px 18px;}
  .admingrid{grid-template-columns:1fr;}
  .adminnav{flex-direction:row;overflow-x:auto;}
  .rhead{flex-direction:column;text-align:center;}
  .rhead .meta{justify-content:center;}
  .qrcard{flex-direction:column;text-align:center;}
  .qrcard .qrinfo .qrlabel{justify-content:center;}
}
@media (prefers-reduced-motion: reduce){ *{ transition:none !important; animation:none !important; } }
/* ===== أصناف مولَّدة آليًا بدل سمات style المضمّنة (أزلنا unsafe-inline من style-src) ===== */
.s1{position:relative;}
.s2{background:#fff;border-color:#fff;}
.s3{overflow-x:auto;display:flex;gap:8px;padding:4px 0 6px;margin-bottom:4px;scrollbar-width:thin;}
.s4{display:flex;align-items:center;gap:8px;background:var(--cream);border:1.5px solid var(--saffron);border-radius:10px;padding:10px 14px;font-weight:700;font-size:14px;}
.s5{margin-inline-start:auto;background:var(--saffron);color:var(--ink);font-size:10.5px;padding:2px 8px;border-radius:999px;}
.s6{background:#FFF9F1;border:1.5px solid var(--accent);border-radius:10px;padding:12px 14px;font-size:13px;color:var(--ink);line-height:1.8;}
.s7{width:100%;height:120px;border-radius:12px;background:var(--cream);border:1.5px dashed var(--sand-dark);display:flex;align-items:center;justify-content:center;font-size:28px;overflow:hidden;margin-bottom:8px;color:var(--ink-soft);}
.s8{margin-top:12px;}
.s9{text-align:right;}
.s10{text-align:center;}
.s11{font-size:12px;color:var(--ink-soft);text-decoration:underline;}
.s12{text-align:center;padding:14px 0 4px;}
.s13{font-size:11.5px;color:var(--ink-soft);text-decoration:underline;}
.s14{position:static;margin-inline-start:4px;}
.s15{grid-column:1/-1;}
.s16{width:20px;height:20px;border-radius:5px;object-fit:cover;vertical-align:middle;margin-inline-end:2px;}
.s17{margin:4px 0 8px;color:var(--ink-soft);font-size:13.5px;}
.s18{font-weight:400;color:var(--ink-soft);font-size:12px;}
.s19{text-decoration:line-through;color:var(--sand-dark);font-weight:400;margin-inline-end:6px;}
.s20{max-width:480px;margin:16px auto 0;}
.s21{background:var(--cream);border:1px solid var(--sand);border-radius:10px;padding:12px 14px;font-size:13.5px;}
.s22{font-size:15px;}
.s23{color:var(--ink);}
.s24{font-size:12px;color:var(--ink-soft);margin-top:4px;}
.s25{font-size:12.5px;color:var(--ink-soft);line-height:1.9;background:var(--cream);border-radius:10px;padding:10px 14px;margin-bottom:6px;}
.s26{font-size:12.5px;font-weight:700;color:var(--ink);margin-bottom:8px;}
.s27{max-width:480px;margin:16px auto 0;display:flex;gap:10px;}
.s28{margin-bottom:18px;}
.stageauto{font-weight:400;color:var(--ink-soft);font-size:11px;}
.stagebtns{display:flex;flex-direction:column;gap:8px;margin-top:8px;}
.stagebtn{
  text-align:right;padding:10px 14px;border-radius:10px;border:1.5px solid var(--sand-dark);
  background:var(--card);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;
  transition:border-color .15s,background .15s;
}
.stagebtn.active{border-color:var(--herb-dark);background:rgba(34,197,94,0.1);color:var(--herb-dark);}
.s29{margin-top:14px;}
.s30{margin:0 0 6px;font-size:17px;}
.s31{margin-bottom:16px;}
.s32{font-size:40px;margin-bottom:10px;}
.s33{background:var(--cream);border-radius:10px;padding:12px 14px;margin-top:14px;font-size:13px;text-align:right;}
.s34{background:#EFF9F1;border-color:#CFF3D8;color:var(--herb-dark);}
.s35{display:flex;align-items:center;gap:12px;}
.s36{width:64px;height:64px;border-radius:12px;background:var(--sand);display:flex;align-items:center;justify-content:center;font-size:26px;overflow:hidden;flex-shrink:0;}
.s37{flex:1;}
.s38{font-size:12px;width:100%;}
.s39{margin-top:6px;}
.s40{color:var(--saffron-dark);}
.s41{background:#FFF7ED;border-color:#FDE7CE;color:#9A5B12;}
.s42{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px;}
.s43{background:var(--cream);border-radius:12px;padding:14px;}
.s44{font-size:11.5px;color:var(--ink-soft);margin-bottom:4px;}
.s45{font-size:18px;font-weight:800;color:var(--ink);}
.s46{background:#FFF3E9;border-radius:12px;padding:14px;}
.s47{font-size:11.5px;color:#9A5B12;margin-bottom:4px;}
.s48{font-size:18px;font-weight:800;color:var(--chili-dark);}
.s49{background:#EEF9F1;border-radius:12px;padding:14px;grid-column:1/-1;}
.s50{font-size:11.5px;color:var(--herb-dark);margin-bottom:4px;}
.s51{font-size:22px;font-weight:800;color:var(--herb-dark);}
.s52{color:var(--chili-dark);}
.s53{color:var(--herb-dark);font-weight:700;}
.s54{border:1px solid var(--sand);border-radius:12px;padding:14px;margin-bottom:10px;}
.s55{display:flex;gap:10px;align-items:center;margin-bottom:8px;}
.s55-between{justify-content:space-between;}
.s56b{flex:1;}
.s56{width:44px;height:44px;font-size:24px;}
.s57{display:block;font-size:14.5px;}
.s58{font-size:12px;color:var(--ink-soft);}
.s59{font-size:13px;color:var(--ink-soft);margin:0 0 8px;}
.s60{font-size:12.5px;color:var(--ink-soft);margin-bottom:12px;}
.s61{display:flex;gap:8px;}
.s62{color:var(--accent);font-weight:700;}
.s63{color:var(--chili);font-weight:700;}
.s64{color:var(--chili);}
.s65{cursor:pointer;white-space:nowrap;}
.s66{display:none;}
.s67{margin-top:24px;}
.s68{background:rgba(220,38,38,0.12);color:#B91C1C;}
.s69{font-size:13.5px;color:var(--ink-soft);line-height:2;padding-inline-start:20px;}
.s70{color:var(--ink);font-weight:700;text-decoration:underline;}
.s71{margin-top:20px;}
.s72{margin-top:16px;}
.s73{width:100%;height:100%;object-fit:cover;}
.s74{width:100%;border-radius:10px;display:block;}
.s75{margin:0 0 8px;font-size:17px;color:var(--accent);}
.s76{margin:0 0 8px;font-size:17px;color:var(--chili);}
.s77{margin-top:16px;}
.s78{margin-top:8px;width:100%;}
.s79{display:flex;gap:8px;margin:14px 0;flex-wrap:wrap;}
.s79-input{flex:1;min-width:180px;padding:11px 14px;border-radius:10px;border:1.5px solid var(--sand-dark);background:var(--card);font-size:14px;color:var(--ink);}
.s79-input:focus{outline:none;border-color:var(--saffron);box-shadow:0 0 0 3px rgba(217,138,78,0.3);}
.starbtn{cursor:pointer;font-size:18px;color:#ccc}
.starbtn.filled{color:#f5a623}
