      /* Enhanced Order Card Full View */



      .ord-card-full{display:flex;flex-direction:column;background:#fff;margin:8px 16px;border-radius:24px;border:1px solid #EFEFEF;padding:20px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.08);cursor:pointer;transition:transform 180ms ease,box-shadow 180ms ease;}



      .ord-card-full:hover{box-shadow:0 10px 24px rgba(0,0,0,.12);transform:translateY(-2px);}



      .ord-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;}



      .ord-card-id{font-size:15px;font-weight:700;color:#111111;}



      .ord-card-date{font-size:12px;color:#6B7280;margin-top:2px;}



      .ord-stepper{display:flex;align-items:center;justify-content:space-between;position:relative;min-height:72px;margin-bottom:20px;}



      .ord-stepper::before{content:'';position:absolute;left:40px;right:40px;top:50%;transform:translateY(-50%);height:3px;border-radius:2px;background:#ECECEC;}



      .ord-step{position:relative;z-index:1;flex:0 0 72px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;}



      .ord-step-circle{width:40px;height:40px;border-radius:50%;border:2px solid #E6E6E6;background:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#111111;}



      .ord-step.completed .ord-step-circle,
      .ord-step.active .ord-step-circle{border-color:var(--md-primary);background:var(--md-primary);color:#fff;}



      .ord-step-label{font-size:13px;font-weight:500;line-height:1.2;color:#111111;max-width:72px;}



      .ord-divider{height:1px;background:#ECECEC;margin:0 0 20px;}



      .ord-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:16px;}



      .ord-info-item{display:flex;flex-direction:column;gap:6px;}



      .ord-info-label{font-size:12px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:#111111;}



      .ord-info-value{font-size:17px;font-weight:500;color:#111111;line-height:1.3;}



      .ord-info-value.price{font-size:26px;font-weight:700;}



      .ord-info-value.price .ipoo-kes{font-size:15px;font-weight:600;margin-right:6px;}



      .ord-info-value.ord-address{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;}



      .ord-products{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;}



      .ord-product{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;line-height:22px;font-weight:400;color:#111111;}



      .ord-product-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;}



      .ord-product-qty{flex-shrink:0;color:#6B7280;font-size:14px;}



      .ord-products-more{font-size:14px;font-weight:600;color:#111111;}



      .ord-action-row{display:flex;gap:16px;margin-bottom:16px;}



      .ord-btn-secondary,.ord-btn-primary{min-height:56px;border-radius:16px;padding:0 20px;font-size:16px;font-weight:600;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:none;transition:transform 120ms ease,box-shadow 120ms ease,background 120ms ease;}



      .ord-btn-secondary{background:#fff;color:#111111;border:1.5px solid #E6E6E6;box-shadow:none;}



      .ord-btn-secondary:hover{background:#F9FAFB;}



      .ord-btn-primary{min-height:60px;border-radius:18px;background:var(--md-primary);color:#fff;box-shadow:0 8px 18px rgba(255,107,0,.20);margin-bottom:0;}



      .ord-btn-primary:hover{transform:scale(0.98);box-shadow:0 10px 20px rgba(255,107,0,.22);}



      .ord-btn-primary:active{transform:scale(0.98);}



      .ocf-header{background:linear-gradient(135deg,rgba(255,107,0,.08),rgba(255,107,0,.02));padding:14px 16px;border-bottom:1px solid var(--out-var);display:flex;justify-content:space-between;align-items:flex-start;}



      .ocf-left{flex:1;}



      .ocf-id{font-size:16px;font-weight:900;color:#111111;}



      .ocf-date{font-size:12px;color:#111111;margin-top:2px;}



      .ocf-status{font-size:11px;font-weight:800;padding:6px 12px;border-radius:var(--rpill);display:inline-flex;align-items:center;gap:4px;}



      .ocf-status.pend{background:var(--pri-lt);color:#111111;}



      .ocf-status.shipped{background:#E8F0FE;color:#111111;}



      .ocf-status.delv{background:var(--suc-lt);color:#111111;}



      .ocf-status.canc{background:var(--err-lt);color:#111111;}



      .ocf-status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;}



      .ocf-body{padding:16px;}



      .ocf-items{display:flex;flex-direction:column;gap:10px;margin-bottom:12px;}



      .ocf-item{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--sur2);}



      .ocf-item:last-child{border-bottom:none;}



      .ocf-item-img{width:48px;height:48px;background:var(--pri-lt);border-radius:var(--r8);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;}



      .ocf-item-img img{width:100%;height:100%;object-fit:cover;}



      .ocf-item-thumb{font-size:24px;font-weight:900;color:#111111;}



      .ocf-item-info{flex:1;}



      .ocf-item-name{font-size:13px;font-weight:700;color:#111111;}



      .ocf-item-qty{font-size:12px;color:#111111;margin-top:2px;}



      .ocf-item-price{font-size:13px;font-weight:800;color:var(--md-primary);}



      .ocf-footer{padding:12px 16px;background:var(--sur2);border-top:1px solid var(--out-var);display:flex;justify-content:space-between;align-items:center;}



      .ocf-total{display:flex;flex-direction:column;}



      .ocf-total-lbl{font-size:11px;color:#111111;margin-bottom:2px;}



      .ocf-total-val{font-size:18px;font-weight:900;color:var(--md-primary);}



      .ocf-actions{display:flex;gap:8px;}



      .ocf-btn{padding:8px 14px;border-radius:var(--r8);font-size:11px;font-weight:700;cursor:pointer;border:none;transition:all var(--dur);}



      .ocf-btn-primary{background:var(--md-primary);color:#111111;}



      .ocf-btn-primary:hover{background:var(--pri-dk);}



      .ocf-btn-secondary{background:var(--sur3);color:#111111;}



      .ocf-btn-secondary:hover{background:var(--out-var);}







      /* Tracking View */



      .track-card{background:#fff;margin:16px;border-radius:24px;padding:24px;border:1px solid #F0F0F0;box-shadow:0 14px 40px rgba(0,0,0,.08);}



      .track-timeline{position:relative;padding-left:36px;}



      .track-item{display:flex;margin-bottom:24px;position:relative;}



      .track-item:last-child{margin-bottom:0;}



      .track-dot{position:absolute;width:16px;height:16px;background:var(--md-primary);border:4px solid #fff;border-radius:50%;left:-44px;top:6px;box-shadow:0 0 0 6px rgba(255,77,0,.12);}



      .track-item.done .track-dot{background:var(--suc);}



      .track-item.current .track-dot{background:var(--md-primary);box-shadow:0 0 0 8px rgba(255,77,0,.16);}



      .track-item.pending .track-dot{background:var(--out);}



      .track-line{position:absolute;width:4px;height:100%;background:#ECECEC;left:-36px;top:0;border-radius:999px;}



      .track-item.done .track-line{background:var(--suc);}



      .track-info{flex:1;}



      .track-status{font-size:14px;font-weight:800;color:#111111;}



      .track-time{font-size:12px;color:#6B7280;margin-top:4px;}



      .track-note{font-size:12px;color:#6B7280;margin-top:6px;}







      /* Payment Section */



      .pay-section{background:var(--sur);margin:12px;border-radius:var(--r16);padding:16px;box-shadow:var(--e1);}



      .pay-methods{display:flex;flex-direction:column;gap:10px;margin-bottom:16px;}



      .pay-method{border:1.5px solid var(--out);border-radius:var(--r12);padding:12px;cursor:pointer;transition:all var(--dur);display:flex;justify-content:space-between;align-items:center;}



      .pay-method:hover{border-color:#111111;background:var(--pri-lt);}



      .pay-method.selected{border-color:#111111;background:var(--pri-lt);box-shadow:var(--e2);}



      .pay-method-info{display:flex;gap:10px;align-items:center;flex:1;}



      .pay-method-ico{width:44px;height:44px;background:var(--pri-lt);border-radius:var(--r8);display:flex;align-items:center;justify-content:center;flex-shrink:0;}



      .pay-method-ico svg{width:20px;height:20px;stroke:var(--md-primary);fill:none;stroke-width:2;}



      .pay-method-details h4{font-size:13px;font-weight:700;color:#111111;margin-bottom:2px;}



      .pay-method-details p{font-size:12px;color:#111111;}



      .pay-method-check{width:20px;height:20px;border-radius:50%;border:2px solid var(--md-primary);display:flex;align-items:center;justify-content:center;font-weight:800;color:#111111;font-size:12px;}


      .pay-method-check::after{content:'';display:none;}
      .pay-method.selected .pay-method-check::after{display:block;}



      .pay-summary{background:var(--sur2);border-radius:var(--r12);padding:12px;margin-bottom:16px;}












      .pay-row.total span:last-child{font-size:18px;font-weight:900;color:var(--md-primary);}



      .pay-btn{width:100%;padding:14px;background:var(--md-primary);color:var(--md-on-primary);border:none;border-radius:var(--r12);font-size:15px;font-weight:700;cursor:pointer;transition:all var(--dur);box-shadow:var(--e2);}



      .pay-btn:hover{background:var(--pri-dk);box-shadow:var(--e3);}



      .pay-btn:active{transform:scale(0.98);}







      /* -- STATUS CHIPS -- */



      .sc{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--rpill);font-size:11px;font-weight:800;letter-spacing:.2px;}



      .sc-pend{background:var(--pri-lt);color:#111111;}



      .sc-proc{background:#E8F0FE;color:#1A73E8;}



      .sc-delv{background:var(--suc-lt);color:var(--suc);}



      .sc-canc{background:var(--err-lt);color:var(--err);}







      /* Bottom Sheets */



      .sheet-bg{position:absolute;bottom:0;left:0;right:0;top:0;background:rgba(0,0,0,0);z-index:100;opacity:0;visibility:hidden;transition:all 0.28s cubic-bezier(0.4,0,0.2,1);display:flex;align-items:flex-end;max-width:430px;margin:0 auto;}



      .sheet-bg.open{background:rgba(0,0,0,0.32);opacity:1;visibility:visible;}



      .sheet{background:var(--sur);border-radius:var(--r16) var(--r16) 0 0;width:100%;max-height:calc(100vh - 60px);overflow-y:auto;box-shadow:var(--e3);transform:translateY(100%);transition:transform 0.28s cubic-bezier(0.4,0,0.2,1);}



      .sheet-bg.open .sheet{transform:translateY(0);}



      .sheet-drag{height:4px;background:var(--out-var);border-radius:2px;margin:8px auto;width:40px;cursor:pointer;}



      .li-ico svg, .crow-ico svg, .feat-ico svg, .rew-ico svg{fill:none;}



      /*  PROFILE  */



      .prof-hero{background:linear-gradient(180deg,var(--md-on-surface) 0%,#2D1600 100%);padding:0 16px;flex-shrink:0;}



      .prof-hc{display:flex;align-items:center;gap:16px;padding:4px 0 0;}



      .prof-av{width:68px;height:68px;border-radius:50%;background:var(--md-primary);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;color:var(--md-on-primary);border:4px solid white;flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,0.15);}



      .prof-info h3{font-size:20px;font-weight:900;color:var(--md-on-primary);margin-bottom:2px;}



      .prof-info p{font-size:13px;color:#fff;}



      .prof-tier{display:inline-block;background:var(--md-primary);color:var(--md-on-primary);font-size:11px;font-weight:800;padding:4px 12px;border-radius:100px;margin-top:6px;}



      .prof-stats{display:flex;background:var(--surface);border-radius:0 0 16px 16px;overflow:hidden;}



      .pstat{flex:1;text-align:center;padding:14px 8px;}



      .pstat strong{display:block;font-size:20px;font-weight:900;color:#111111;}



      .pstat small{font-size:10px;color:#111111;text-transform:uppercase;letter-spacing:.4px;}



      .psdiv{width:1px;background:var(--md-surface-1);margin:10px 0;}



      .prof-sec-lbl{font-size:11px;font-weight:800;color:#111111;text-transform:uppercase;letter-spacing:.5px;padding:16px 16px 6px;}



      .prof-card{background:var(--surface);border-radius:16px;margin:0 12px 8px;overflow:hidden;box-shadow:var(--shadow-card);}



      /*  LIST ITEM  */



      .li{display:flex;align-items:center;gap:14px;padding:14px 16px;cursor:pointer;transition:background .2s;}



      .li:hover{background:var(--md-surface-1);}



      .li-ico{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}



      .li-ico.pri{background:var(--md-primary-container);}



      .li-ico.err{background:#FFDAD6;}



      .li-ico svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}



      .li-ico.pri svg{stroke:var(--md-primary);}



      .li-ico.err svg{stroke:#BA1A1A;}



      .li-body{flex:1;}



      .li-ttl{font-size:15px;font-weight:600;color:#111111;}



      .li-sub{font-size:13px;color:#111111;margin-top:1px;}



      .li-chev{color:#111111;font-size:18px;}



      .div{height:1px;background:var(--border);}



      /*  EDIT PROFILE  */



      .ep-hero{background:var(--md-on-surface);padding:20px;display:flex;flex-direction:column;align-items:center;gap:12px;flex-shrink:0;}



      .ep-av-wrap{position:relative;cursor:pointer;}



      .ep-av{width:88px;height:88px;border-radius:50%;background-color:#111111;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:900;color:var(--md-on-primary);border:4px solid white;box-shadow:0 2px 8px rgba(0,0,0,0.15);}



      .ep-name{font-size:18px;font-weight:800;color:var(--md-on-primary);}



      /*  TOPBAR  */



      .tbar{display:flex;align-items:center;height:64px;padding:0 4px;flex-shrink:0;}



      .tbar.dark{background:var(--md-on-surface);}



      .ibtn{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0;border:none;background:none;cursor:pointer;}



      .ibtn.w{color:var(--md-on-primary);}



      .ibtn.w:hover{background:rgba(255,255,255,.1);}



      .ibtn svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}



      .tbar-title{flex:1;font-size:20px;font-weight:700;padding:0 8px;color:#111111;}



      .tbar-title.w{color:var(--md-on-primary);}



      /*  ADDRESSES  */



      .addr-card{background:var(--surface);margin:8px 12px;border-radius:16px;padding:16px;box-shadow:var(--shadow-card);border:1.5px solid transparent;transition:all .2s;}



      .addr-card.def{border-color:#111111;background:var(--md-primary-container);}



      .addr-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;}



      .addr-lbl{font-size:14px;font-weight:800;color:#111111;}



      .addr-def-badge{background:var(--md-primary);color:var(--md-on-primary);font-size:10px;font-weight:700;padding:3px 8px;border-radius:100px;}



      .addr-txt{font-size:13px;color:#111111;line-height:1.5;}



      .addr-acts{display:flex;gap:8px;margin-top:12px;}



      .addr-act{font-size:13px;font-weight:700;color:#111111;padding:6px 14px;background:var(--md-primary-container);border-radius:100px;transition:all .2s;border:none;cursor:pointer;}



      .addr-act.del{color:#BA1A1A;background:#FFDAD6;}



      /* ============================================================

         ADDRESSES ? Material Design 3 ? Professional Cartography

         Consumer-Oriented Address Management (1000+ yrs heritage)

         ============================================================ */



      /*  LANGUAGE  */



      .lang-card{background:var(--surface);margin:8px 12px;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card);}



      .lang-item{display:flex;align-items:center;gap:16px;padding:16px;border-bottom:1px solid var(--md-surface-1);cursor:pointer;transition:background .2s;}



      .lang-item:last-child{border-bottom:none;}



      .lang-item:hover{background:var(--md-surface-1);}



      .lang-flag{font-size:26px;width:38px;text-align:center;}



      .lang-name{font-size:15px;font-weight:700;color:#111111;}



      .lang-native{font-size:12px;color:#111111;}



      .lang-chk{color:#111111;font-size:20px;font-weight:900;margin-left:auto;}



      /*  HELP  */



      .help-hero{background:linear-gradient(135deg,var(--md-primary),var(--md-primary));padding:28px 20px;text-align:center;flex-shrink:0;}



      .help-hero-ico{width:72px;height:72px;background:rgba(255,255,255,.15);border-radius:22px;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;}



      .help-hero-ico svg{width:36px;height:36px;stroke:#fff;fill:none;stroke-width:1.8;}



      .help-hero h2{font-size:24px;font-weight:900;color:var(--md-on-primary);margin-bottom:8px;}



      .help-hero p{font-size:14px;color:rgba(255,255,255,.78);line-height:1.6;}



      .faq-card{background:var(--surface);margin:8px 12px;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card);}



      .faq-item{border-bottom:1px solid var(--md-surface-1);}



      .faq-item:last-child{border-bottom:none;}



      .faq-q{display:flex;justify-content:space-between;align-items:center;padding:16px;cursor:pointer;transition:background .2s;gap:12px;}



      .faq-q:hover{background:var(--md-surface-1);}



      .faq-q-txt{font-size:14px;font-weight:700;color:#111111;flex:1;}



      .faq-chev{color:#111111;transition:transform .2s;flex-shrink:0;}



      .faq-chev svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;}



      .faq-item.open .faq-chev{transform:rotate(180deg);}



      .faq-a{display:none;padding:0 16px 16px;font-size:13px;color:#111111;line-height:1.65;}



      .faq-item.open .faq-a{display:block !important;}



      .contact-card{background:var(--surface);margin:8px 12px;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card);}



      .crow{display:flex;align-items:center;gap:14px;padding:16px;border-bottom:1px solid var(--md-surface-1);cursor:pointer;transition:background .2s;}



      .crow:last-child{border-bottom:none;}



      .crow:hover{background:var(--md-surface-1);}



      .crow-ico{width:44px;height:44px;border-radius:12px;background:var(--md-primary-container);display:flex;align-items:center;justify-content:center;flex-shrink:0;}



      .crow-ico svg{width:20px;height:20px;stroke:var(--md-primary);fill:none;stroke-width:2;}



      .crow-body strong{display:block;font-size:14px;font-weight:700;color:#111111;margin-bottom:2px;}



      .crow-body span{font-size:12px;color:#111111;}



      /*  ABOUT  */



      .about-hero{background:linear-gradient(135deg,var(--md-primary),var(--md-primary) 55%,#6B2D00);padding:40px 20px;text-align:center;position:relative;overflow:hidden;flex-shrink:0;}



      .about-blob{position:absolute;border-radius:50%;background:rgba(255,255,255,.07);}



      .ab1{width:280px;height:280px;top:-90px;right:-90px;}



      .ab2{width:180px;height:180px;bottom:-70px;left:-50px;}



      .about-logo{width:84px;height:84px;background:rgba(255,255,255,.14);border-radius:26px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;position:relative;}



      .about-logo span{font-size:44px;font-weight:900;color:var(--md-on-primary);letter-spacing:-2px;}



      .about-word{font-size:38px;font-weight:900;color:var(--md-on-primary);letter-spacing:7px;margin-bottom:10px;position:relative;}



      .about-tag{font-size:14px;color:rgba(255,255,255,.78);line-height:1.65;max-width:280px;margin:0 auto;position:relative;}



      .about-sec{background:var(--surface);margin:8px 12px;border-radius:16px;padding:18px;box-shadow:var(--shadow-card);}



      .about-sec h3{font-size:16px;font-weight:800;color:#111111;margin-bottom:12px;}



      .about-sec p{font-size:13px;color:#111111;line-height:1.7;margin-bottom:10px;}



      .about-kv{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px;margin:14px 0;}



      .akv{background:var(--md-surface-1);border-radius:12px;padding:14px;text-align:center;}



      .akv strong{display:block;font-size:22px;font-weight:900;color:#111111;}



      .akv small{font-size:11px;color:#111111;text-transform:uppercase;letter-spacing:.3px;}



      .feat-row{display:flex;align-items:flex-start;gap:14px;margin-bottom:14px;}



      .feat-ico{width:40px;height:40px;background:var(--md-primary-container);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}



      .feat-ico svg{width:20px;height:20px;stroke:var(--md-primary);fill:none;stroke-width:2;}



      .feat-txt strong{display:block;font-size:13px;font-weight:800;color:#111111;margin-bottom:3px;}



      .feat-txt span{font-size:12px;color:#111111;line-height:1.6;}



      /*  FORM  */



      .fw{margin-bottom:16px;}



      .flabel{font-size:12px;font-weight:600;color:#111111;margin-bottom:6px;display:block;}



      .field{width:100%;height:56px;padding:0 16px;background:var(--md-surface-1);border:1.5px solid var(--border);border-radius:8px;font-size:15px;color:#111111;font-family:'Google Sans',sans-serif;outline:none;transition:all .2s;}



      .field:focus{border-color:#111111;background:white;}



      .field::placeholder{color:#111111;}



      .field.ta{height:auto;padding:14px 16px;resize:none;}



      .phone-row{display:flex;align-items:center;background:var(--md-surface-1);border:1.5px solid var(--border);border-radius:8px;overflow:hidden;transition:all .2s;}



      .phone-row:focus-within{border-color:#111111;background:white;}



      .phone-pfx{padding:0 12px;font-size:13px;font-weight:700;color:#111111;border-right:1px solid var(--border);height:56px;display:flex;align-items:center;white-space:nowrap;background:var(--surface-2);}



      .phone-inp{flex:1;border:none;outline:none;padding:0 14px;height:54px;font-size:15px;color:#111111;background:transparent;font-family:'Google Sans',sans-serif;}



      /*  EMPTY STATE (profile use)  */



      .empty-st{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:14px;text-align:center;padding:40px;}



      .empty-st svg{width:72px;height:72px;stroke:var(--border);fill:none;stroke-width:1.5;}



      .empty-st-ttl{font-size:18px;font-weight:800;color:#111111;}



      .empty-st-sub{font-size:14px;color:#111111;}



      /*  LOYALTY (used from profile)  */



      .loy-hero{background:linear-gradient(135deg,var(--md-primary),var(--md-primary) 55%,#6B2D00);margin:12px;border-radius:24px;padding:24px 20px;position:relative;overflow:hidden;box-shadow:var(--shadow);}



      .lh-blob{position:absolute;border-radius:50%;background:rgba(255,255,255,.07);}



      .lb1{width:200px;height:200px;top:-70px;right:-60px;}



      .lb2{width:130px;height:130px;bottom:-45px;left:-35px;}



      .lh-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;position:relative;}



      .lh-tier{font-size:13px;font-weight:800;color:rgba(255,255,255,.9);}



      .lh-id{font-size:11px;color:rgba(255,255,255,.45);}



      .lh-pts{font-size:56px;font-weight:900;color:var(--md-on-primary);line-height:1;position:relative;}



      .lh-ptslbl{font-size:13px;color:rgba(255,255,255,.65);margin-top:4px;margin-bottom:20px;position:relative;}



      .lh-bar{height:7px;background:rgba(255,255,255,.18);border-radius:4px;overflow:hidden;position:relative;margin-bottom:8px;}



      .lh-fill{height:100%;background:white;border-radius:4px;}



      .lh-prog{font-size:12px;color:rgba(255,255,255,.7);position:relative;}



      .sec-h{padding:20px 16px 12px;font-size:18px;font-weight:800;color:#111111;}



      /* - REWARDS GRID - */



      .rew-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px;padding:0 16px 12px;margin:0;}



      .rew-card{padding:16px;border-radius:16px;background:var(--md-surface-1);border:1px solid var(--md-outline-var);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;}



      .rew-card.available{box-shadow:0 2px 6px rgba(28,20,16,0.08);opacity:1;}



      .rew-card.available:hover{background:#f9f9f9;box-shadow:0 4px 12px color-mix(in srgb, var(--md-primary) 15%, transparent);transform:translateY(-2px);}



      .rew-card.available:active{transform:scale(.97);}



      .rew-card.locked{opacity:0.6;background:#fafafa;cursor:not-allowed;}



      .rew-amount{font-size:24px;font-weight:900;color:#111111;line-height:1;margin-bottom:6px;font-family:'Google Sans Display',sans-serif;}



      .rew-pts{font-size:12px;color:#666;font-weight:600;margin-bottom:8px;}



      .rew-status{font-size:11px;font-weight:600;color:#999;}



      .rew-status.ok{color:#111111;}



      /*



         CART



       */



      .cart-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:40px;}



      .cart-empty svg{width:80px;height:80px;stroke:var(--out);fill:none;stroke-width:1.5;}



      .ci{background:var(--sur);padding:14px 16px;display:flex;gap:14px;border-bottom:1px solid var(--sur2);position:relative;}



      .ci-img{width:72px;height:72px;border-radius:var(--r12);overflow:hidden;flex-shrink:0;background:var(--sur2);}



      .ci-img img{width:100%;height:100%;object-fit:cover;}



      .ci-body{flex:1;}



      .ci-name{font-size:13px;font-weight:700;color:#111111;line-height:1.35;margin-bottom:2px;}



      .ci-unit{font-size:11px;color:#111111;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;}



      .ci-row{display:flex;align-items:center;justify-content:space-between;}



      .ci-qc{display:flex;align-items:center;border:1.5px solid var(--md-primary);border-radius:var(--r8);overflow:hidden;}



      .cq-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;color:#111111;transition:background var(--dur);}



      .cq-btn:hover{background:var(--pri-lt);}



      .cq-btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.5;}



      .cq-num{min-width:28px;text-align:center;font-size:13px;font-weight:900;color:#111111;}



      .ci-price{font-size:15px;font-weight:900;color:var(--md-primary);}



      .ci-del{position:absolute;top:10px;right:12px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--out);transition:all var(--dur);}



      .ci-del:hover{color:var(--err);background:var(--err-lt);}



      .ci-del svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;}



      .csummary{background:var(--sur);padding:16px;margin:8px 0 0;}



      .cs-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;color:#111111;border-bottom:1px solid var(--sur2);}



      .cs-row:last-child{border-bottom:none;}



      .cs-total{font-size:17px;font-weight:900;}



      .cs-total span:last-child{color:#111111;}



      .cart-pts{background:var(--pri-lt);border:1px solid rgba(255,107,0,.18);border-radius:var(--r12);padding:12px 16px;margin:12px 0 0;font-size:13px;font-weight:700;color:#111111;text-align:center;display:flex;align-items:center;justify-content:center;gap:6px;}



      .cart-pts svg{width:16px;height:16px;stroke:var(--md-primary);fill:none;stroke-width:2;}



      .cart-foot{padding:12px 16px 16px;background:var(--sur);border-top:1px solid var(--out-var);}







      /* Auth screens: sc-login, sc-pin, sc-reg-1, sc-reg-2, sc-reg-3 */



      /* Material Design 3 App Bar & Navigation */



      .top-app-bar { height:64px; padding:12px 16px !important; display:flex; align-items:center; background:var(--md-surface); flex-shrink:0; box-sizing:border-box; }



      .top-app-bar.center-aligned .bar-title { flex:1; min-width:0; text-align:center; font-size:20px; font-weight:700; color:#111111; }



      .bar-title { flex:1; min-width:0; font-size:20px; font-weight:700; padding:0 8px; color:#111111; }



      .scroll-body { flex:1; overflow-y:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; }



      .scroll-body::-webkit-scrollbar { display:none; }







      /* ============================================================

         ORDERS REDESIGN ?? Material 3, text-first (Google design system)

         ============================================================ */

      #sc-orders #orders-body{background:var(--md-surface);padding:8px 0 32px;}

      .ord-card-md{background:var(--md-on-primary);margin:10px 12px;border-radius:16px;padding:18px;border:1px solid #e6e8eb;box-shadow:0 1px 2px rgba(60,64,67,.06),0 1px 3px rgba(60,64,67,.04);transition:box-shadow .2s,transform .2s;}

      .ord-card-md:hover{box-shadow:0 1px 3px rgba(60,64,67,.10),0 4px 8px rgba(60,64,67,.06);}

      .ord-card-md-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;}

      .ord-md-id{font-size:15px;font-weight:600;color:#111111;letter-spacing:.1px;}

      .ord-md-meta{font-size:12px;color:#111111;margin-top:3px;}

      .ord-md-chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:8px;font-size:10px;font-weight:700;letter-spacing:.6px;background:#e8eaed;color:#111111;white-space:nowrap;text-transform:uppercase;}

      .ord-md-chip-placed{background:#FFEDDC;color:#111111;}

      .ord-md-chip-preparing{background:#fef7e0;color:#111111;}

      .ord-md-chip-shipped{background:#e6f4ea;color:#111111;}

      .ord-md-chip-delivered{background:#e6f4ea;color:#111111;}

      .ord-md-chip-pending{background:#fce8e6;color:#111111;}

      .ord-md-chip-cancelled{background:#fce8e6;color:#111111;}






      .ord-md-divider{height:1px;background:#e8eaed;margin:16px 0;}

      .ord-md-info{margin:0;padding:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:14px;}

      .ord-md-info > div{display:flex;flex-direction:column;gap:3px;min-width:0;}

      .ord-md-info dt{font-size:10px;font-weight:600;color:#111111;letter-spacing:.5px;text-transform:uppercase;margin:0;}

      .ord-md-info dd{font-size:14px;color:#111111;margin:0;line-height:1.4;word-break:break-word;}

      .ord-md-info dd.strong{font-weight:700;font-size:15px;}



      .ord-md-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;height:44px;border:none;border-radius:22px;font-size:14px;font-weight:600;letter-spacing:.2px;cursor:pointer;margin-top:16px;transition:all .2s;font-family:inherit;}

      .ord-md-btn-primary{background:var(--md-primary);color:var(--md-on-primary);}

      .ord-md-btn-primary:hover{background:color-mix(in srgb, var(--md-primary-dark) 80%, black);box-shadow:0 1px 3px color-mix(in srgb, var(--md-primary) 30%, transparent);}

      .ord-md-btn-tonal{background:#FFEDDC;color:#111111;}

      .ord-md-btn-tonal:hover{background:#FFD7B5;}

      .ord-md-btn-text{background:transparent;color:#111111;height:36px;width:auto;padding:0 16px;margin-top:8px;}

      .ord-md-btn-text:hover{background: var(--md-surface-1);}

      .ord-md-actions{display:flex;justify-content:flex-end;gap:8px;}



      .ord-pay-options{display:flex;flex-direction:column;gap:8px;margin:14px 0 6px;}

      .ord-pay-opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dadce0;border-radius:12px;cursor:pointer;transition:all .2s;}

      .ord-pay-opt:hover{border-color:#111111;background: var(--md-surface-1);}

      .ord-pay-opt input{accent-color:#111111;width:18px;height:18px;margin:0;flex-shrink:0;}

      .ord-pay-opt:has(input:checked){border-color:#111111;background: var(--md-surface-1);}

      .ord-pay-opt-tag{font-size:11px;font-weight:800;letter-spacing:.5px;padding:4px 10px;border-radius:6px;background:#f1f3f4;color:#111111;min-width:68px;text-align:center;flex-shrink:0;}

      .ord-pay-opt-text{font-size:14px;color:#111111;flex:1;}



      .ord-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 32px;text-align:center;}

      .ord-empty-title{font-size:18px;font-weight:600;color:#111111;margin-bottom:8px;}

      .ord-empty-sub{font-size:14px;color:#111111;line-height:1.5;max-width:280px;}

      .ord-empty-cta{margin-top:20px;}



      .ord-section-label{font-size:11px;font-weight:700;color:#111111;letter-spacing:.8px;text-transform:uppercase;padding:18px 16px 8px;}



      /* =========================================================

         PROFILE SUITE REDESIGN ?? Material 3 Expressive  IPOO

         Scope: #sc-profile, #sc-edit-profile, #sc-addresses,

                #sc-loyalty, #sc-notif, #sc-language, #sc-help, #sc-about

         ========================================================= */

      #sc-profile, #sc-edit-profile, #sc-addresses, #sc-loyalty,

      #sc-notif, #sc-language, #sc-help, #sc-about{

        background:var(--surface-2);

      }

      #sc-profile .scroll, #sc-edit-profile .scroll, #sc-addresses .scroll,

      #sc-loyalty .scroll, #sc-notif .scroll, #sc-language .scroll,

      #sc-help .scroll, #sc-about .scroll{ background:var(--surface-2); }



      /* --- Top app bar (Material 3 small) --- */

      #sc-profile .tbar.dark, #sc-edit-profile .tbar.dark, #sc-addresses .tbar.dark,

      #sc-loyalty .tbar.dark, #sc-notif .tbar.dark, #sc-language .tbar.dark,

      #sc-help .tbar.dark, #sc-about .tbar.dark{

        background:var(--surface-2);

        height:64px;

        padding:0 4px;

        border-bottom:none;

        box-shadow:none;

        position:relative;

        z-index:5;

      }

      #sc-profile .tbar.dark .tbar-title.w,

      #sc-edit-profile .tbar.dark .tbar-title.w,

      #sc-addresses .tbar.dark .tbar-title.w,

      #sc-loyalty .tbar.dark .tbar-title.w,

      #sc-notif .tbar.dark .tbar-title.w,

      #sc-language .tbar.dark .tbar-title.w,

      #sc-help .tbar.dark .tbar-title.w,

      #sc-about .tbar.dark .tbar-title.w,

      #sc-points-info .tbar.dark .tbar-title.w{

        color:#111111;

        font-weight:500;

        font-size:22px;

        letter-spacing:0;

        font-family:'Google Sans',sans-serif;

      }

      #sc-profile .tbar.dark .ibtn.w,

      #sc-edit-profile .tbar.dark .ibtn.w,

      #sc-addresses .tbar.dark .ibtn.w,

      #sc-loyalty .tbar.dark .ibtn.w,

      #sc-notif .tbar.dark .ibtn.w,

      #sc-language .tbar.dark .ibtn.w,

      #sc-help .tbar.dark .ibtn.w,

      #sc-about .tbar.dark .ibtn.w{ color:#111111; }

      #sc-profile .tbar.dark .ibtn.w:hover,

      #sc-edit-profile .tbar.dark .ibtn.w:hover,

      #sc-addresses .tbar.dark .ibtn.w:hover,

      #sc-loyalty .tbar.dark .ibtn.w:hover,

      #sc-notif .tbar.dark .ibtn.w:hover,

      #sc-language .tbar.dark .ibtn.w:hover,

      #sc-help .tbar.dark .ibtn.w:hover,

      #sc-about .tbar.dark .ibtn.w:hover{ background:rgba(28,20,16,.06); }



      /* ============================================================

         PROFILE ?? Google Material You  IPOO Brand Redesign

         ============================================================ */



      /* Tbar fused into hero ?? orange gradient, white icons */

      #sc-profile .tbar.dark{

        background:var(--surface-2);

        box-shadow:none;border-bottom:1px solid var(--border);

      }

      #sc-profile .tbar.dark .tbar-title.w{

        color:#111111;font-weight:700;letter-spacing:-.3px;

      }

      #sc-profile .tbar.dark .ibtn.w{ color:#111111; }

      #sc-profile .tbar.dark .ibtn.w:hover{ background:rgba(28,20,16,.06); }



      /* Hero ?? full-bleed, rounded bottom, fused with tbar */

      #sc-profile .prof-hero{

        background:linear-gradient(160deg,var(--md-primary) 0%,#C63E00 62%,#8C2A00 100%);

        margin:0;padding:16px 20px 80px;

        border-radius:0 0 40px 40px;

        position:relative;overflow:visible;

        box-shadow:0 10px 32px rgba(140,42,0,.28);

      }

      #sc-profile .prof-hero::before{

        content:"";position:absolute;width:320px;height:320px;border-radius:50%;

        background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 65%);

        top:-120px;right:-90px;pointer-events:none;

      }

      #sc-profile .prof-hero::after{

        content:"";position:absolute;width:220px;height:220px;border-radius:50%;

        background:radial-gradient(circle,rgba(255,255,255,.09) 0%,transparent 65%);

        bottom:-80px;left:-50px;pointer-events:none;

      }



      /* Hero content ?? centered column */

      #sc-profile .prof-hc{

        flex-direction:column;align-items:center;

        gap:14px;position:relative;z-index:1;padding:0;

      }



      /* Avatar wrapper with camera FAB */

      #sc-profile .prof-av-wrap{
        position:relative;width:88px;height:88px;cursor:pointer;
      }

      #sc-profile .prof-av{
        width:88px !important;height:88px !important;border-radius:50% !important;
        background:rgba(255,255,255,.22) !important;
        border:3px solid rgba(255,255,255,.58) !important;
        color:#fff !important;font-size:34px;font-weight:800;
        backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
        box-shadow:0 6px 24px rgba(0,0,0,.24);
      }

      #sc-profile .prof-av-wrap:active .prof-av{ opacity:.82; }

      #sc-profile .prof-cam{
        position:absolute;bottom:2px;right:2px;
        width:32px;height:32px;border-radius:50%;
        background:white;
        box-shadow:0 2px 10px rgba(0,0,0,.22);
        display:flex;align-items:center;justify-content:center;
        border:2px solid color-mix(in srgb, var(--md-primary) 14%, transparent);
      }

      #sc-profile .prof-cam svg{
        width:15px;height:15px;stroke:var(--md-primary);stroke-width:2;fill:none;
        stroke-linecap:round;stroke-linejoin:round;
      }



      /* Info block ?? centered text */

      #sc-profile .prof-info{
        display:flex;flex-direction:column;align-items:center;gap:4px;
      }
      #sc-profile .prof-info h3{
        font-size:26px;font-weight:700;color:#fff;
        letter-spacing:-.5px;text-align:center;
        font-family:'Google Sans',sans-serif;margin:0;
      }
      #sc-profile .prof-info p{
        font-size:14px;color:#fff;
        text-align:center;margin:0;
      }



      /* Tier chip ?? frosted glass pill */

      #sc-profile .prof-tier{
        background:rgba(255,255,255,.20);color:#fff;
        font-size:11px;font-weight:700;letter-spacing:.2px;
        padding:5px 14px;border-radius:100px;
        margin-top:4px;display:inline-flex;align-items:center;gap:5px;
        border:1.5px solid rgba(255,255,255,.38);
        -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
      }
      #sc-profile .prof-tier svg{ width:13px;height:13px;fill:#fff;flex-shrink:0; }



      /* Stats card - floating below hero */
      #sc-profile .prof-stats{
        position:absolute;left:20px;right:20px;bottom:-48px;
        background:var(--md-surface-1);border-radius:24px;overflow:visible;
        box-shadow:0 8px 32px rgba(28,20,16,.12),0 2px 6px rgba(28,20,16,.06);
        display:flex;align-items:stretch;
      }

      #sc-profile .pstat{
        flex:1;padding:16px 8px;
        display:flex;flex-direction:column;align-items:center;gap:2px;
      }

      #sc-profile .pstat strong{
        font-size:22px;font-weight:700;color:var(--ink);
        font-family:'Google Sans',sans-serif;letter-spacing:-.4px;line-height:1;
      }

      #sc-profile .pstat small{
        font-size:11px;color:var(--mid);font-weight:500;
        text-transform:none;letter-spacing:0;
      }

      #sc-profile .psdiv{
        width:1px;background:var(--border);margin:16px 0;flex-shrink:0;
      }



      /* --- LOYALTY PROFILE CARD --- */

      /* Self-contained inline styles, no external CSS needed */



      #sc-profile .prof-body{
        padding:8px 16px 32px;
        display:flex;flex-direction:column;gap:4px;
      }



      /* Section labels ?? Google-style uppercase */

      #sc-profile .prof-sec-lbl{
        font-size:11px;font-weight:700;color:var(--muted);
        text-transform:uppercase;letter-spacing:1.4px;
        padding:20px 8px 8px;
      }



      /* Cards */

      #sc-profile .prof-card{

        background:var(--md-surface-1);border-radius:24px;margin:0;overflow:hidden;

        box-shadow:0 1px 4px rgba(28,20,16,.06),0 4px 20px rgba(28,20,16,.05);

        border:1px solid var(--border);

      }



      /* ---- Universal list item (M3 style) ?? shared across profile suite ---- */

      #sc-profile .li, #sc-edit-profile .li, #sc-addresses .li,

      #sc-loyalty .li, #sc-language .li, #sc-help .li, #sc-about .li{

        padding:16px 20px;gap:18px;min-height:64px;

        position:relative;transition:background .18s cubic-bezier(.4,0,.2,1);

      }



      /* Profile-specific list item overrides */

      #sc-profile .pli{
        padding:14px 20px;gap:16px;min-height:60px;
        cursor:pointer;
        transition:background .15s cubic-bezier(.4,0,.2,1);
        display:flex;align-items:center;position:relative;
      }

      #sc-profile .pli::after{
        content:"";position:absolute;
        left:76px;right:0;bottom:0;
        height:1px;background:var(--border);
      }

      #sc-profile .pli:last-child::after{ display:none; }
      #sc-profile .pli:hover{ background:var(--orange-pale); }
      #sc-profile .pli:active{ background:var(--orange-container); }



      /* Icon containers ?? rounded square (M3 style) */

      #sc-profile .pli-ico{

        width:44px;height:44px;border-radius:14px;flex-shrink:0;

        display:flex;align-items:center;justify-content:center;

      }

      #sc-profile .pli-ico.pri{ background:var(--orange-pale); }

      #sc-profile .pli-ico.err{ background:var(--md-error-container); }

      #sc-profile .pli-ico svg{ width:20px;height:20px;stroke-width:1.8; }

      #sc-profile .pli-ico.pri svg{ stroke:var(--orange); }

      #sc-profile .pli-ico.err svg{ stroke:#C5221F; }



      #sc-profile .pli-body{ flex:1;min-width:0; }

      #sc-profile .pli-ttl{
        font-size:15px;font-weight:500;color:var(--ink);
        font-family:'Google Sans',sans-serif;
      }

      #sc-profile .pli-sub{ font-size:13px;color:var(--mid);margin-top:2px;font-weight:400; }

      #sc-profile .pli-chev{
        width:20px;height:20px;flex-shrink:0;font-size:0;
        background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A08070' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 18 15 12 9 6'/></svg>") center/contain no-repeat;
        opacity:.7;
      }

      #sc-profile .div{ display:none; }



      /* --- EDIT PROFILE --- */

      #sc-edit-profile .ep-hero{

        display:flex;flex-direction:column;align-items:center;

        background:linear-gradient(160deg, var(--md-primary) 0%, var(--md-primary-dark) 100%);

        margin:0;border-radius:0 0 40px 40px;

        padding:20px 20px 32px;gap:16px;

        min-height:50vh;

        justify-content:center;

        box-shadow:0 8px 24px color-mix(in srgb, var(--md-primary) 18%, transparent);

      }

      #sc-edit-profile .ep-av-wrap{

        width:min(74vw, 320px);

        height:min(74vw, 320px);

        max-height:42vh;

        aspect-ratio:1/1;

      }

      #sc-edit-profile .ep-av{

        width:100% !important;height:100% !important;

        border-radius:32px;

        background-color: rgba(255,255,255,.22) !important;

        background-image: url('/static/img/e3fbdb4d-9d0a-4a26-80b6-64801ca3b0a2.png') !important;

        background-size: cover !important;

        background-position: center !important;

        background-repeat: no-repeat !important;

        border:4px solid rgba(255,255,255,.55);

        color:var(--md-on-primary) !important;

        font-size: 0 !important;

        box-shadow:0 14px 36px rgba(0,0,0,.22);

      }

      #sc-edit-profile .ep-name{ font-size:22px;margin-top:2px;color:var(--md-on-primary);font-weight:600;letter-spacing:-.2px; }

      #sc-edit-profile .scroll{ padding:24px 20px 40px !important; }

      #sc-edit-profile .fw{ margin-bottom:20px; }

      #sc-edit-profile .flabel{

        font-size:13px;font-weight:500;color:#111111;margin-bottom:8px;

      }

      #sc-edit-profile .field{

        height:56px;background:white;border:1.5px solid var(--border);

        border-radius:16px;padding:0 18px;font-size:15px;

      }

      #sc-edit-profile .field:focus{ border-color:#111111;background:white;box-shadow:0 0 0 3px var(--orange-dim); }

      #sc-edit-profile .field.ta{ padding:16px 18px; }

      #sc-edit-profile .phone-row{

        background:white;border:1.5px solid var(--border);border-radius:16px;

      }

      #sc-edit-profile .phone-row:focus-within{ border-color:#111111;box-shadow:0 0 0 3px var(--orange-dim); }

      #sc-edit-profile .phone-pfx{ background:transparent;border-right:1px solid var(--border); }



      /* ============================================================

         ADDRESSES SCREEN ? Material Design 3 Professional

         ============================================================ */

      #sc-addresses .scroll {

        background: linear-gradient(180deg, #f7f8fa 0%, #f0f2f5 100%);

        padding: 0 !important;

        padding-bottom: calc(var(--nav-h) + 16px) !important;

      }



      /* Header Section */

      #sc-addresses .scroll::before {

        content: '';

        display: block;

        height: 0;

        background: transparent;

        position: sticky;

        top: 0;

        z-index: 2;

        box-shadow: none;

      }



      /* Address Card ? Professional Design */

      #sc-addresses .addr-card {

        background: #fff;

        border-radius: 20px;

        padding: 20px;

        margin: 16px 16px;

        border: 1px solid #e8eaed;

        box-shadow: 0 2px 8px rgba(60, 64, 67, 0.08);

        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);

        position: relative;

        overflow: hidden;

      }



      #sc-addresses .addr-card::before {

        content: '';

        position: absolute;

        top: 0;

        left: 0;

        right: 0;

        height: 4px;

        background: transparent;

        transition: background 0.2s;

      }



      #sc-addresses .addr-card:hover {

        box-shadow: 0 4px 16px rgba(60, 64, 67, 0.14);

        transform: translateY(-2px);

      }



      #sc-addresses .addr-card.def {

        border: 2px solid var(--md-primary);

        background: linear-gradient(135deg, #fff8f6 0%, #fff 100%);

        box-shadow: 0 4px 16px color-mix(in srgb, var(--md-primary) 15%, transparent);

      }



      #sc-addresses .addr-card.def::before {

        background: var(--md-primary);

      }



      /* Address Label with Icon */

      #sc-addresses .addr-top {

        display: flex;

        justify-content: space-between;

        align-items: center;

        gap: 12px;

        margin-bottom: 14px;

      }



      #sc-addresses .addr-lbl {

        font-size: 16px;

        font-weight: 700;

        color: #1f1f1f;

        font-family: 'Google Sans', sans-serif;

        display: flex;

        align-items: center;

        gap: 10px;

        flex: 1;

        letter-spacing: -0.2px;

      }



      #sc-addresses .addr-lbl svg {

        width: 24px;

        height: 24px;

        fill: var(--md-primary);

        flex-shrink: 0;

      }



      /* Default Badge */

      #sc-addresses .addr-def-badge {

        background: linear-gradient(135deg, var(--md-primary), #ff7020);

        color: #fff;

        font-size: 11px;

        font-weight: 700;

        padding: 6px 12px;

        border-radius: 20px;

        letter-spacing: 0.3px;

        text-transform: uppercase;

        box-shadow: 0 2px 6px color-mix(in srgb, var(--md-primary) 25%, transparent);

        flex-shrink: 0;

      }



      /* Address Text Fields */

      #sc-addresses .addr-txt {

        font-size: 14px;

        color: #5f6368;

        line-height: 1.6;

        margin-bottom: 10px;

      }



      #sc-addresses .addr-txt:last-of-type {

        margin-bottom: 0;

      }



      /* Divider */

      #sc-addresses .addr-card > div:nth-child(3) {

        height: 1px;

        background: #e8eaed;

        margin: 14px 0;

      }



      /* Action Buttons */

      #sc-addresses .addr-acts {

        display: flex;

        gap: 8px;

        margin-top: 14px;

        padding-top: 14px;

        border-top: 1px solid #e8eaed;

      }



      #sc-addresses .addr-act {

        flex: 1;

        font-size: 13px;

        font-weight: 600;

        padding: 10px 14px;

        border-radius: 12px;

        background: transparent;

        color: var(--md-primary);

        border: 1.5px solid var(--md-primary);

        cursor: pointer;

        transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);

        text-align: center;

        letter-spacing: 0.2px;

      }



      #sc-addresses .addr-act:hover {

        background: color-mix(in srgb, var(--md-primary) 8%, transparent);

        border-color: #ff7020;

        transform: translateY(-1px);

      }



      #sc-addresses .addr-act:active {

        transform: scale(0.98);

      }



      #sc-addresses .addr-act.del {

        color: #d32f2f;

        border-color: #d32f2f;

      }



      #sc-addresses .addr-act.del:hover {

        background: rgba(211, 47, 47, 0.08);

        border-color: #f44336;

      }



      /* Floating Add Address FAB */

      #sc-addresses .tbar.dark .ibtn.w[onclick*="addr-sheet"] {

        position: absolute;

        right: 20px;

        bottom: 80px;

        width: 56px;

        height: 56px;

        border-radius: 50%;

        background: linear-gradient(135deg, var(--md-primary), #ff7020);

        color: #fff;

        font-size: 24px;

        font-weight: 600;

        box-shadow: 0 8px 24px color-mix(in srgb, var(--md-primary) 35%, transparent), 0 4px 12px rgba(0, 0, 0, 0.12);

        z-index: 50;

        border: none;

        display: flex;

        align-items: center;

        justify-content: center;

        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);

      }



      #sc-addresses .tbar.dark .ibtn.w[onclick*="addr-sheet"]:hover {

        background: linear-gradient(135deg, #ff7020, #ff8840);

        transform: translateY(-4px);

        box-shadow: 0 12px 32px color-mix(in srgb, var(--md-primary) 45%, transparent), 0 6px 16px rgba(0, 0, 0, 0.15);

      }



      #sc-addresses .tbar.dark .ibtn.w[onclick*="addr-sheet"]:active {

        transform: scale(0.95);

        box-shadow: 0 4px 12px color-mix(in srgb, var(--md-primary) 25%, transparent);

      }



      /* Empty State */

      #sc-addresses .empty-st {

        padding: 120px 32px 80px;

        background: linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--md-primary) 3.99999991059303%, transparent) 100%);

      }



      #sc-addresses .empty-st-ttl {

        font-size: 20px;

        font-weight: 700;

        color: #1f1f1f;

        margin-bottom: 8px;

      }



      #sc-addresses .empty-st-sub {

        font-size: 14px;

        color: #5f6368;

        line-height: 1.5;

      }



      /* --- LANGUAGE --- */

      #sc-language .lang-card{

        background:var(--md-surface-1);border-radius:24px;margin:8px 16px;

        border:1px solid var(--border);box-shadow:none;

      }

      #sc-language .lang-item{ padding:18px 20px;border-bottom:1px solid var(--border);gap:18px; }

      #sc-language .lang-item:hover{ background:var(--md-primary-container); }

      #sc-language .lang-flag{ font-size:28px;width:42px;height:42px;line-height:42px;border-radius:14px;background:var(--surface-2);text-align:center; }

      #sc-language .lang-name{ font-size:15px;font-weight:500;color:#111111;font-family:'Google Sans',sans-serif; }

      #sc-language .lang-native{ font-size:13px;color:#111111;margin-top:2px; }

      #sc-language .lang-chk{

        width:24px;height:24px;border-radius:50%;background:var(--md-primary);

        color:var(--md-on-primary);font-size:14px;display:flex;align-items:center;justify-content:center;

      }

      #sc-language .lang-chk svg{ width:14px;height:14px; }



      /* --- HELP --- */

      #sc-help .help-hero{

        background:linear-gradient(160deg, var(--md-primary) 0%, var(--md-primary-dark) 100%);

        margin:4px 16px 16px;border-radius:32px;padding:36px 24px 32px;

        box-shadow:0 8px 24px color-mix(in srgb, var(--md-primary) 22%, transparent);

      }

      #sc-help .help-hero-ico{

        width:72px;height:72px;border-radius:24px;background:rgba(255,255,255,.2);

        backdrop-filter:blur(8px);margin-bottom:16px;

      }

      #sc-help .help-hero h2{ font-size:26px;font-weight:600;letter-spacing:-.4px;font-family:'Google Sans',sans-serif; }

      #sc-help .help-hero p{ font-size:14px;color:rgba(255,255,255,.85);line-height:1.6;max-width:280px;margin:0 auto; }

      #sc-help .scroll > div[style*="font-size:16px"]{

        font-size:14px !important;font-weight:600 !important;color:#111111 !important;

        padding:24px 24px 8px !important;letter-spacing:0 !important;

      }

      #sc-help .faq-card,#sc-help .contact-card{

        background:var(--md-surface-1);border-radius:24px;margin:4px 16px;

        border:1px solid var(--border);box-shadow:none;

      }

      #sc-help .faq-q{ padding:18px 20px;gap:14px; }

      #sc-help .faq-q:hover{ background:var(--md-primary-container); }

      #sc-help .faq-q-txt{ font-size:15px;font-weight:500;color:#111111;font-family:'Google Sans',sans-serif; }

      #sc-help .faq-a{ padding:0 20px 18px;font-size:14px;color:#111111;line-height:1.6; }

      #sc-help .crow{ padding:18px 20px;gap:16px;border-bottom:1px solid var(--border); }

      #sc-help .crow:hover{ background:var(--md-primary-container); }

      #sc-help .crow-ico{ width:44px;height:44px;border-radius:14px;background:var(--md-primary-container); }

      #sc-help .crow-ico svg{ width:22px;height:22px; }

      #sc-help .crow-body strong{ font-size:15px;font-weight:500;color:#111111;font-family:'Google Sans',sans-serif; }

      #sc-help .crow-body span{ font-size:13px;color:#111111;margin-top:2px; }



      /* --- ABOUT --- */

      #sc-about .about-hero{

        background:linear-gradient(160deg, var(--md-primary) 0%, var(--md-primary-dark) 60%, #6B2D00 100%);

        margin:4px 16px 12px;border-radius:32px;padding:44px 24px 36px;

        box-shadow:0 8px 24px color-mix(in srgb, var(--md-primary) 22%, transparent);

        text-align:center;position:relative;overflow:hidden;flex-shrink:0;

      }

      #sc-about .about-logo{

        width:88px;height:88px;border-radius:28px;background:rgba(255,255,255,.18);

        backdrop-filter:blur(8px);

      }

      #sc-about .about-logo span{ font-size:46px;font-weight:700;letter-spacing:-2px;font-family:'Google Sans',sans-serif; }

      #sc-about .about-word{ font-size:32px;font-weight:600;letter-spacing:8px;font-family:'Google Sans',sans-serif; }

      #sc-about .about-tag{ font-size:14px;line-height:1.65;color:rgba(255,255,255,.88); }

      #sc-about .about-sec{

        background:var(--md-surface-1);border-radius:24px;margin:8px 16px;padding:24px;

        border:1px solid var(--border);box-shadow:none;

      }

      #sc-about .about-sec h3{ font-size:18px;font-weight:600;color:#111111;margin-bottom:14px;font-family:'Google Sans',sans-serif;letter-spacing:-.2px; }

      #sc-about .about-sec p{ font-size:14px;color:#111111;line-height:1.7;margin-bottom:12px; }

      #sc-about .about-kv{ gap:12px;margin:16px 0; }

      #sc-about .akv{ background:var(--md-primary-container);border-radius:18px;padding:18px 12px; }

      #sc-about .akv strong{ font-size:24px;font-weight:700;color:#111111;font-family:'Google Sans',sans-serif;letter-spacing:-.4px; }

      #sc-about .akv small{ font-size:11px;color:#111111;text-transform:none;letter-spacing:0;font-weight:500;margin-top:4px;display:block; }

      #sc-about .feat-row{ gap:16px;margin-bottom:18px; }

      #sc-about .feat-ico{ width:44px;height:44px;border-radius:14px;background:var(--md-primary-container); }

      #sc-about .feat-ico svg{ width:22px;height:22px; }

      #sc-about .feat-txt strong{ font-size:14px;font-weight:600;color:#111111;margin-bottom:4px;font-family:'Google Sans',sans-serif; }

      #sc-about .feat-txt span{ font-size:13px;color:#111111;line-height:1.6; }



      /* --- LOYALTY (Google Pay-style refinement) --- */

      #sc-loyalty .loy-hero{

        background:linear-gradient(155deg, #1C1410 0%, #2D1800 55%, var(--md-primary) 130%);

        margin:4px 16px 16px;border-radius:28px;padding:22px 22px 24px;

        box-shadow:0 10px 28px rgba(28,20,16,.18);

        position:relative;overflow:hidden;

      }

      #sc-loyalty .loy-hero::before{

        content:"";position:absolute;width:280px;height:280px;border-radius:50%;

        background:radial-gradient(circle,color-mix(in srgb, var(--md-primary) 30%, transparent) 0%,transparent 65%);

        top:-120px;right:-100px;pointer-events:none;

      }

      #sc-loyalty .lh-blob{ display:none; }

      #sc-loyalty .lh-top{

        display:flex;justify-content:space-between;align-items:center;

        margin-bottom:0;position:relative;z-index:1;

      }

      #sc-loyalty .lh-tier{

        background:rgba(255,255,255,.10);color:var(--md-on-primary);border:1px solid rgba(255,255,255,.18);

        padding:6px 12px;border-radius:100px;font-size:12px;font-weight:500;

        display:inline-flex;align-items:center;gap:6px;backdrop-filter:blur(6px);

        font-family:'Google Sans',sans-serif;

      }

      #sc-loyalty .lh-tier .icon-inline{ color:#FFB070;width:14px;height:14px; }

      #sc-loyalty .lh-id{

        font-size:11px;color:rgba(255,255,255,.55);letter-spacing:.3px;

        font-family:'Roboto Mono','SF Mono',monospace;

      }

      #sc-loyalty .lh-pts-block{

        position:relative;z-index:1;margin:18px 0 18px;

      }

      #sc-loyalty .lh-pts{

        font-size:56px;font-weight:500;letter-spacing:-2.5px;line-height:1;

        font-family:'Google Sans',sans-serif;color:var(--md-on-primary);

      }

      #sc-loyalty .lh-ptslbl{

        font-size:13px;color:rgba(255,255,255,.62);font-weight:400;

        margin-top:6px;letter-spacing:.2px;

      }

      #sc-loyalty .lh-ptspending{font-size:12px;color:rgba(255,255,255,.5);font-weight:400;margin-top:2px;}

      #sc-loyalty .pts-pending{
        font-size:13px;color:var(--orange,var(--md-primary));font-weight:600;margin-left:6px;
      }

      #sc-loyalty .lh-progress-card{

        position:relative;z-index:1;

        background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);

        border-radius:18px;padding:14px 16px;backdrop-filter:blur(8px);

      }

      #sc-loyalty .lh-prog-head{

        display:flex;justify-content:space-between;align-items:center;

        font-size:13px;color:rgba(255,255,255,.78);font-weight:500;margin-bottom:10px;

        font-family:'Google Sans',sans-serif;

      }

      #sc-loyalty .lh-prog-head strong{ color:var(--md-on-primary);font-weight:600; }

      #sc-loyalty .lh-prog-pct{ color:var(--md-on-primary);font-weight:600;font-size:14px; }

      #sc-loyalty .lh-bar{

        height:6px;background:rgba(255,255,255,.14);border-radius:100px;

        overflow:hidden;margin:0 0 10px;

      }

      #sc-loyalty .lh-fill{

        height:100%;background:linear-gradient(90deg,#FF8A4C,#fff);

        border-radius:100px;box-shadow:0 0 10px rgba(255,255,255,.35);

        transition:width .6s cubic-bezier(.4,0,.2,1);

      }

      #sc-loyalty .lh-prog{

        font-size:12px;color:rgba(255,255,255,.65);font-weight:400;

      }



      /* Quick action chips */

      #sc-loyalty .loy-quick{

        display:flex;gap:10px;padding:0 16px;margin-bottom:4px;

      }

      #sc-loyalty .lq-item{

        flex:1;display:flex;align-items:center;justify-content:center;gap:8px;

        padding:12px 14px;background:white;border:1px solid var(--border);

        border-radius:100px;font-size:13px;font-weight:500;color:#111111;

        cursor:pointer;transition:background .18s ease;

        font-family:'Google Sans',sans-serif;

      }

      #sc-loyalty .lq-item:hover{ background:var(--md-primary-container);border-color:var(--md-primary-container); }

      #sc-loyalty .lq-item svg{ width:18px;height:18px;color:#111111; }



      #sc-loyalty .sec-h{

        font-size:13px;font-weight:600;color:#111111;

        text-transform:none;letter-spacing:.1px;padding:24px 24px 10px;

        font-family:'Google Sans',sans-serif;

      }



      /* Rewards list (single column, list-row style) */

      #sc-loyalty .rew-list{

        display:flex;flex-direction:column;gap:8px;

        padding:0 16px;margin:0;

        background:transparent;

      }

      #sc-loyalty .rew-card{

        display:flex;align-items:center;gap:14px;

        background:white;border:1px solid var(--border);

        border-radius:18px;padding:14px 16px;

        transition:background .18s ease, border-color .18s ease, transform .18s ease;

        position:relative;

        /* Reset legacy column layout */

        flex-direction:row !important;text-align:left !important;

      }

      #sc-loyalty .rew-card.available{ cursor:pointer; }

      #sc-loyalty .rew-card.available:hover{

        background:var(--md-primary-container);border-color:var(--md-primary-container);

        transform:none;

      }

      #sc-loyalty .rew-card.available:active{ transform:scale(.99); }

      #sc-loyalty .rew-card.locked{ opacity:1;background:var(--surface-2);cursor:default; }



      #sc-loyalty .rew-ico{

        width:48px;height:48px;border-radius:14px;

        background:var(--md-primary-container);color:#111111;

        display:flex;align-items:center;justify-content:center;flex-shrink:0;

      }

      #sc-loyalty .rew-ico svg{ width:24px;height:24px; }

      #sc-loyalty .rew-ico.locked{ background:#EEE7E1;color:#111111; }



      #sc-loyalty .rew-body{ flex:1;min-width:0;text-align:left; }

      #sc-loyalty .rew-amount{

        font-size:15px;font-weight:600;color:#111111;letter-spacing:-.1px;

        font-family:'Google Sans',sans-serif;line-height:1.3;margin-bottom:2px;

        white-space:nowrap;overflow:hidden;text-overflow:ellipsis;

      }

      #sc-loyalty .rew-pts{

        font-size:13px;color:#111111;font-weight:400;

        white-space:nowrap;overflow:hidden;text-overflow:ellipsis;

      }



      #sc-loyalty .rew-cta{

        flex-shrink:0;background:var(--md-primary);color:var(--md-on-primary);

        border:none;border-radius:100px;padding:9px 18px;

        font-size:13px;font-weight:500;font-family:'Google Sans',sans-serif;

        cursor:pointer;transition:background .18s ease;letter-spacing:.1px;

      }

      #sc-loyalty .rew-cta:hover{ background:var(--md-primary-dark); }



      #sc-loyalty .rew-locked-badge{

        flex-shrink:0;display:inline-flex;align-items:center;gap:4px;

        background:transparent;color:#111111;

        font-size:12px;font-weight:500;padding:6px 10px;border-radius:100px;

        border:1px solid var(--border);font-family:'Google Sans',sans-serif;

      }



      /* ===== Redeem modal (Material 3 / Google Pay style) ===== */

      .rdm-scrim{

        position:absolute;inset:0;background:rgba(0,0,0,.45);

        display:flex;align-items:flex-end;justify-content:center;

        z-index:9999;opacity:0;pointer-events:none;

        transition:opacity .22s cubic-bezier(.4,0,.2,1);

        backdrop-filter:blur(2px);

        left:50% !important;
        transform:translateX(-50%) !important;
        width:min(430px, 100vw) !important;
        max-width:100vw !important;

      }

      .rdm-scrim.open{ opacity:1;pointer-events:auto; }

      .rdm-sheet{

        background:white;width:100%;max-width:420px;

        border-radius:28px 28px 0 0;

        padding:8px 0 max(24px, env(safe-area-inset-bottom));

        transform:translateY(100%);

        transition:transform .28s cubic-bezier(.32,.72,.24,1);

        box-shadow:0 -8px 32px rgba(0,0,0,.18);

        font-family:'Google Sans','Roboto',sans-serif;

        max-height:90vh;overflow-y:auto;

      }

      .rdm-scrim.open .rdm-sheet{ transform:translateY(0); }

      @media (min-width:520px){

        .rdm-scrim{ align-items:center; }

        .rdm-sheet{ border-radius:28px;transform:translateY(20px) scale(.96);opacity:0; }

        .rdm-scrim.open .rdm-sheet{ transform:translateY(0) scale(1);opacity:1; }

      }

      .rdm-grabber{

        width:36px;height:4px;background:#E0DDD8;border-radius:100px;

        margin:8px auto 4px;

      }

      @media (min-width:520px){ .rdm-grabber{ display:none; } }

      .rdm-body{ padding:20px 28px 4px; }

      .rdm-icon{

        width:64px;height:64px;border-radius:50%;

        background:#FFF1E6;color:var(--md-primary);

        display:flex;align-items:center;justify-content:center;

        margin:8px auto 16px;

      }

      .rdm-icon.success{ background:#E6F4EA;color:#137333; }

      .rdm-icon svg{ width:32px;height:32px; }

      .rdm-title{

        font-size:22px;font-weight:500;color:#1F1B17;

        text-align:center;letter-spacing:-.2px;line-height:1.3;

        margin:0 0 6px;

      }

      .rdm-sub{

        font-size:14px;color:#6B6259;text-align:center;line-height:1.5;

        margin:0 0 20px;

      }



      /* Balance preview card */

      .rdm-balance{

        background:#F7F4F0;border-radius:18px;padding:14px 16px;

        display:flex;align-items:center;justify-content:space-between;

        margin:0 0 8px;

      }

      .rdm-balance + .rdm-balance{ margin-top:8px; }

      .rdm-balance.cost{ background:#FFF1E6; }

      .rdm-balance .lbl{

        font-size:13px;color:#6B6259;font-weight:500;

      }

      .rdm-balance .val{

        font-size:18px;font-weight:600;color:#1F1B17;

        font-family:'Google Sans',sans-serif;letter-spacing:-.3px;

      }

      .rdm-balance.cost .val{ color:var(--md-primary); }

      .rdm-arrow{

        text-align:center;color:#9C938A;margin:6px 0;

      }

      .rdm-arrow svg{ width:20px;height:20px; }



      /* Coupon code box */

      .rdm-coupon{

        margin:8px 0 4px;background:#FFF8EC;

        border:1.5px dashed #F4D9A6;border-radius:16px;

        padding:14px 16px;display:flex;align-items:center;gap:12px;

      }

      .rdm-coupon-info{ flex:1;min-width:0; }

      .rdm-coupon-lbl{

        font-size:11px;color:#7A4E00;text-transform:uppercase;

        letter-spacing:.6px;font-weight:600;margin-bottom:2px;

      }

      .rdm-coupon-code{

        font-family:'Roboto Mono','SF Mono','Consolas',monospace;

        font-size:17px;font-weight:600;color:#1F1B17;letter-spacing:.5px;

        white-space:nowrap;overflow:hidden;text-overflow:ellipsis;

      }

      .rdm-copy{

        flex-shrink:0;background:white;border:1px solid #F4D9A6;

        width:40px;height:40px;border-radius:50%;

        display:flex;align-items:center;justify-content:center;

        cursor:pointer;color:#7A4E00;transition:background .18s ease;

      }

      .rdm-copy:hover{ background:#FFF1E6; }

      .rdm-copy.copied{ background:#E6F4EA;color:#137333;border-color:#B6E0C0; }

      .rdm-copy svg{ width:18px;height:18px; }



      /* Actions */

      .rdm-actions{

        display:flex;gap:8px;padding:20px 24px 4px;

      }

      .rdm-btn{

        flex:1;padding:14px 20px;border-radius:100px;

        font-size:15px;font-weight:500;font-family:'Google Sans',sans-serif;

        border:none;cursor:pointer;letter-spacing:.1px;

        transition:background .18s ease, box-shadow .18s ease, transform .12s ease;

      }

      .rdm-btn:active{ transform:scale(.98); }

      .rdm-btn.secondary{

        background:transparent;color:#1F1B17;

        border:1px solid #E0DDD8;

      }

      .rdm-btn.secondary:hover{ background:#F7F4F0; }

      .rdm-btn.primary{

        background:var(--md-primary);color:var(--md-on-primary);

        box-shadow:0 1px 3px color-mix(in srgb, var(--md-primary) 30%, transparent);

      }

      .rdm-btn.primary:hover{ background:var(--md-primary-dark);box-shadow:0 4px 12px color-mix(in srgb, var(--md-primary) 32%, transparent); }

      .rdm-btn.primary:disabled{

        background:var(--md-primary);opacity:.6;cursor:not-allowed;

      }

      .rdm-btn.full{ width:100%; }



      /* Error banner inside the sheet */

      .rdm-error{

        background:#FCE8E6;border:1px solid #F5C6C0;color:#A50E0E;

        border-radius:14px;padding:12px 14px;margin:0 0 12px;

        font-size:13px;font-weight:500;display:flex;align-items:flex-start;gap:8px;

      }

      .rdm-error svg{ width:18px;height:18px;flex-shrink:0;margin-top:1px; }



      /* ===== Checkout coupon section (Material 3) ===== */

      .co-coupon{

        margin-top:14px;padding-top:14px;border-top:1px dashed #E0DDD8;

        font-family:'Google Sans','Roboto',sans-serif;

      }

      .co-coupon-head{

        display:flex;align-items:center;gap:8px;margin-bottom:10px;

      }

      .co-coupon-head .ic{

        width:28px;height:28px;border-radius:50%;

        background:#FFF1E6;color:var(--md-primary);

        display:flex;align-items:center;justify-content:center;flex-shrink:0;

      }

      .co-coupon-head .ic svg{ width:16px;height:16px; }

      .co-coupon-head .ttl{

        font-size:14px;font-weight:600;color:#1F1B17;

      }

      .co-coupon-input-wrap{

        display:flex;gap:8px;

      }

      .co-coupon-input{

        flex:1;padding:11px 14px;border:1px solid #E0DDD8;border-radius:12px;

        font-size:14px;font-family:'Roboto Mono','SF Mono',monospace;

        letter-spacing:.5px;background:white;color:#1F1B17;

        transition:border-color .18s ease, box-shadow .18s ease;

        text-transform:uppercase;

      }

      .co-coupon-input:focus{

        outline:none;border-color:var(--md-primary);

        box-shadow:0 0 0 3px color-mix(in srgb, var(--md-primary) 15%, transparent);

      }

      .co-coupon-apply{

        padding:0 18px;border:none;border-radius:100px;

        background:#1F1B17;color:var(--md-on-primary);font-size:13px;font-weight:500;

        font-family:'Google Sans',sans-serif;cursor:pointer;letter-spacing:.1px;

        transition:background .18s ease;

      }

      .co-coupon-apply:hover{ background:#000; }

      .co-coupon-apply:disabled{ background:#9C938A;cursor:not-allowed; }



      /* Saved coupons chips */

      .co-coupon-saved{

        display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;

      }

      .co-chip{

        background:#FFF8EC;border:1px solid #F4D9A6;color:#7A4E00;

        border-radius:100px;padding:7px 12px;font-size:12px;font-weight:500;

        cursor:pointer;display:inline-flex;align-items:center;gap:6px;

        font-family:'Google Sans',sans-serif;

        transition:background .15s ease;

      }

      .co-chip:hover{ background:#FFEFD0; }

      .co-chip svg{ width:13px;height:13px; }

      .co-chip strong{

        font-family:'Roboto Mono','SF Mono',monospace;

        font-weight:600;letter-spacing:.3px;color:#1F1B17;

      }



      /* Applied coupon banner */

      .co-coupon-applied{

        display:flex;align-items:center;gap:12px;

        background:#E6F4EA;border:1px solid #B6E0C0;

        border-radius:14px;padding:12px 14px;

      }

      .co-coupon-applied .ic{

        width:32px;height:32px;border-radius:50%;

        background:#137333;color:var(--md-on-primary);

        display:flex;align-items:center;justify-content:center;flex-shrink:0;

      }

      .co-coupon-applied .ic svg{ width:18px;height:18px; }

      .co-coupon-applied .info{ flex:1;min-width:0; }

      .co-coupon-applied .lbl{

        font-size:11px;color:#0E5C28;text-transform:uppercase;

        letter-spacing:.6px;font-weight:600;

      }

      .co-coupon-applied .name{

        font-size:14px;font-weight:600;color:#1F1B17;line-height:1.3;

        font-family:'Google Sans',sans-serif;

        white-space:nowrap;overflow:hidden;text-overflow:ellipsis;

      }

      .co-coupon-applied .name code{

        font-family:'Roboto Mono','SF Mono',monospace;

        font-size:12px;color:#6B6259;font-weight:500;margin-left:6px;

      }

      .co-coupon-applied .remove{

        background:transparent;border:none;width:32px;height:32px;

        border-radius:50%;cursor:pointer;color:#6B6259;

        display:flex;align-items:center;justify-content:center;

        transition:background .15s ease, color .15s ease;

      }

      .co-coupon-applied .remove:hover{ background:white;color:#A50E0E; }

      .co-coupon-applied .remove svg{ width:18px;height:18px; }



      /* Inline error message under input */

      .co-coupon-err{

        font-size:12px;color:#A50E0E;margin-top:8px;

        display:flex;align-items:center;gap:6px;

      }

      .co-coupon-err svg{ width:14px;height:14px;flex-shrink:0; }



      /* Discount line in summary */

      .sum-row.discount span:last-child{ color:#137333;font-weight:600; }



      /* Offline notice shown above sample rewards when backend is unreachable */

      #sc-loyalty .rew-offline{

        display:flex;align-items:center;gap:10px;

        background:#FFF8EC;border:1px solid #F4D9A6;color:#7A4E00;

        border-radius:14px;padding:10px 14px;margin-bottom:8px;

        font-size:12px;font-weight:500;font-family:'Google Sans',sans-serif;

        line-height:1.4;

      }

      #sc-loyalty .rew-offline svg{

        width:18px;height:18px;color:#B8741A;flex-shrink:0;

      }



      /* Empty activity state */

      #sc-loyalty .pts-empty{

        margin:8px 16px 0;padding:32px 24px;background:white;

        border:1px solid var(--border);border-radius:20px;

        display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;

      }

      #sc-loyalty .pts-empty-ico{

        width:56px;height:56px;border-radius:50%;background:var(--md-primary-container);

        display:flex;align-items:center;justify-content:center;color:#111111;

        margin-bottom:4px;

      }

      #sc-loyalty .pts-empty-ico svg{ width:28px;height:28px; }

      #sc-loyalty .pts-empty-ttl{

        font-size:15px;font-weight:600;color:#111111;

        font-family:'Google Sans',sans-serif;

      }

      #sc-loyalty .pts-empty-sub{

        font-size:13px;color:#111111;line-height:1.5;max-width:240px;

      }



      /* Activity list rows */

      #sc-loyalty .pts-list{

        display:flex;flex-direction:column;gap:8px;

        padding:0 16px;margin:0;

      }

      #sc-loyalty .pts-row{

        display:flex;align-items:center;gap:14px;

        background:white;border:1px solid var(--border);

        border-radius:18px;padding:14px 16px;

        font-family:'Google Sans','Roboto',sans-serif;

      }

      #sc-loyalty .pts-ico{

        width:40px;height:40px;border-radius:12px;

        display:flex;align-items:center;justify-content:center;flex-shrink:0;

      }

      #sc-loyalty .pts-ico.earned{ background:#E6F4EA;color:#137333; }

      #sc-loyalty .pts-ico.redeemed{ background:#FFF1E6;color:var(--md-primary); }

      #sc-loyalty .pts-ico svg{ width:20px;height:20px; }

      #sc-loyalty .pts-info{ flex:1;min-width:0; }

      #sc-loyalty .pts-desc{

        font-size:14px;font-weight:500;color:#111111;line-height:1.3;

        white-space:nowrap;overflow:hidden;text-overflow:ellipsis;

      }

      #sc-loyalty .pts-date{

        font-size:12px;color:#111111;margin-top:2px;

      }

      #sc-loyalty .pts-amt{

        flex-shrink:0;font-size:15px;font-weight:600;letter-spacing:-.2px;

        font-family:'Google Sans',sans-serif;

      }

      #sc-loyalty .pts-amt.pos{ color:#137333; }

      #sc-loyalty .pts-amt.neg{ color:var(--md-primary); }



      /* ============================================================

         QUANTITY CONTROLS ? Material 3 Design

         ============================================================ */

      .qty-ctrl-m3{
        display:flex;align-items:center;
        border:2px solid var(--md-outline-var);
        border-radius:999px;
        overflow:hidden;
        height:44px;
      }
      .qty-btn-m3{
        width:40px;height:100%;
        display:flex;align-items:center;justify-content:center;
        font-size:20px;font-weight:700;
        color:var(--md-primary);
        background:transparent;
        border:none;
        transition:background .15s;
      }
      .qty-btn-m3:hover{background:var(--md-primary-container);}
      .qty-num-m3{min-width:48px;height:48px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:22px;font-weight:700;color:var(--md-on-surface);border-radius:16px;}

      .detail-bottom-bar{
        position:fixed;bottom:0;left:50%;transform:translateX(-50%);
        width:100%;max-width:min(430px,100vw);
        background:var(--md-surface-2);
        padding:12px 16px;
        border-top:1px solid var(--md-outline-var);
        display:flex;align-items:center;gap:12px;
        backdrop-filter:blur(8px);
      }

      .btn-filled{
        flex:1;min-height:56px;
        background:linear-gradient(135deg, var(--md-primary) 0%, #ff7a1a 100%);
        color:#fff;border:none;border-radius:999px;
        font-size:15px;font-weight:800;letter-spacing:.2px;
        display:flex;align-items:center;justify-content:center;gap:8px;
        box-shadow:0 10px 24px color-mix(in srgb, var(--md-primary) 24%, transparent);
        position:relative;overflow:hidden;font-family:inherit;padding:0 22px;
      }
      .btn-filled svg{width:18px;height:18px;fill:currentColor;flex-shrink:0;}
      .btn-filled:active{transform:scale(.98);}



      .btn-filled svg {

        width: 18px;

        height: 18px;

        fill: currentColor;

        flex-shrink: 0;

      }



      /* --- NOTIFICATIONS & PROFILE SUITE --- */

      #sc-notif .scroll{ padding:8px 0 0 !important; }

      #sc-notif { padding-bottom:0 !important; }

      #sc-profile { padding-bottom:0 !important; }

      #sc-edit-profile { padding-bottom:0 !important; }

      #sc-addresses { padding-bottom:0 !important; }

      #sc-loyalty { padding-bottom:0 !important; }

      #sc-language { padding-bottom:0 !important; }

      #sc-help { padding-bottom:0 !important; }

      #sc-about { padding-bottom:0 !important; }

      #sc-notif #notif-body > div, #sc-notif .notif-card, #sc-notif .notif-item{

        background:var(--md-surface);border-radius:20px;margin:8px 16px;padding:16px 18px;

        border:1px solid var(--border);box-shadow:none;

      }

      #sc-notif .empty-st{ padding:60px 40px; }

      #sc-notif .empty-st-ttl{ font-size:18px;font-weight:600;color:#111111;font-family:'Google Sans',sans-serif; }

      #sc-notif .empty-st-sub{ font-size:14px;color:#111111;line-height:1.6;max-width:260px; }



      /* --- Profile section last item ?? make logout pop --- */

      #sc-profile .prof-card:last-child{

        background:var(--md-surface);border:1px solid var(--md-outline-var);

      }

      #sc-profile .prof-card:last-child .li:hover{ background:var(--md-error-container); }



      /* Hide any home-style nav items inside profile screens (defensive) */

      #sc-profile .ni[onclick*="'home'"], #sc-edit-profile .ni[onclick*="'home'"],

      #sc-addresses .ni[onclick*="'home'"], #sc-loyalty .ni[onclick*="'home'"],

      #sc-notif .ni[onclick*="'home'"], #sc-language .ni[onclick*="'home'"],

      /* Reduced motion */

      @media (prefers-reduced-motion: reduce){

        #sc-profile .li, #sc-loyalty .rew-card, #sc-addresses .addr-act{ transition:none !important; }

      }



      /* ---------------------------------------------------

         NEW REFERENCE DESIGN SYSTEM ? extra tokens

         --------------------------------------------------- */

      /* --- PRODUCTS PAGE --- */

      #screen-products { background: var(--cream); overflow-x: hidden; box-sizing: border-box; }

      #screen-products .scroll { background: var(--cream); padding-bottom: var(--nav-h); }

      #screen-products #prod-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 12px 16px 20px; }

      #screen-products .prod-grid-m3 { background: transparent !important; }
      #screen-products .prod-card-m3 { background: var(--md-surface-1); border-radius: 20px; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
      #screen-products .prod-price-m3 { color: #0D0600 !important; }



      /* ===== TOP APP BAR WITH SEARCH ===== */

      .search-app-bar{display:flex;align-items:center;height:64px;background:var(--md-surface);padding:8px 16px;gap:12px;z-index:100;box-shadow:0 1px 3px rgba(0,0,0,.12);flex-shrink:0;}

      .suggestion-item{padding:12px 16px;border-bottom:1px solid var(--border);cursor:pointer;display:flex;align-items:center;gap:12px;transition:background 0.2s;}

      .suggestion-item:hover{background:var(--md-surface-1);}

      .search-no-results{padding:20px 16px;text-align:center;color:#111111;font-size:14px;}



      /* Pill row: reduce right padding to avoid visible whitespace after last pill
        and use page surface color so any remaining area matches background */
      .pill-row { display:flex; gap:6px; padding:10px 8px 14px 16px; overflow-x:auto; scrollbar-width:none; flex-shrink:0; background:var(--md-surface); width:100%; margin:0; }

      .pill-row::-webkit-scrollbar { display:none; }

      .pill.on { background:var(--md-on-surface); color:var(--md-on-primary); border-color:#111111; box-shadow:0 2px 8px rgba(28,20,16,0.2); }

      /* Premium category experience */
      #sc-catpage {
        background: linear-gradient(180deg, #fff8f2 0%, #fffdf9 100%);
      }

      .cat-top-shell {
        padding: 8px 16px 0;
        margin-bottom: 0;
      }

      .cat-top-bar {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 0;
        margin-bottom: 0;
        border-radius: 999px;
        background: var(--md-surface-4);
        border: 1px solid rgba(232,117,34,0.14);
        box-shadow: 0 10px 24px rgba(24,13,5,0.06);
        backdrop-filter: blur(12px);
      }

      .cat-top-bar .icon-btn,
      .cat-top-bar #cat-search-toggle-btn {
        margin: 0;
        align-self: center;
      }

      .cat-top-title-wrap {
        flex: 1;
        min-width: 0;
      }

      .cat-top-kicker {
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: #b35e12;
      }

      #sc-catpage .cat-top-title {
        margin: 0 !important;
        color: #23160d;
        font-size: 18px;
        font-weight: 800;
      }

      .cat-hero-card:empty {
        display: none;
      }

      .cat-top-bar .icon-btn,
      .cat-top-bar #cat-search-toggle-btn {
        width: 42px;
        height: 42px;
        flex-shrink: 0;
        background: rgba(255,255,255,0.95);
        border: 1px solid rgba(232,117,34,0.16);
        box-shadow: 0 8px 18px rgba(24,13,5,0.08);
        border-radius: 999px;
      }

      .cat-hero-card {
        padding: 16px 18px;
        border-radius: 24px;
        background: var(--md-surface-4);
        border: 1px solid rgba(232,117,34,0.16);
        box-shadow: 0 14px 30px rgba(24,13,5,0.08);
      }

      .cat-hero-badge {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 5px 10px;
        border-radius: 999px;
        background: rgba(232,117,34,0.12);
        color: #a24a0a;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        margin-bottom: 8px;
      }

      .cat-hero-title {
        font-size: 19px;
        font-weight: 800;
        color: #22150d;
        line-height: 1.3;
        margin-bottom: 6px;
      }

      .cat-hero-subtitle {
        font-size: 13px;
        line-height: 1.55;
        color: #6d5c4f;
      }

      .cat-hero-stats {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 10px;
      }

      .cat-hero-pill {
        padding: 6px 10px;
        border-radius: 999px;
        background: #fff;
        border: 1px solid rgba(232,117,34,0.16);
        color: #7b5b3f;
        font-size: 12px;
        font-weight: 600;
      }

      /* Search and Sort Controls */
      .category-search-sort { display:none; gap:12px; padding:12px 14px; margin: 0 16px 10px; border-radius:20px; background:rgba(255,255,255,0.92); box-shadow:0 10px 24px rgba(24,13,5,0.06); align-items:center; flex-wrap:nowrap; border:1px solid rgba(232,117,34,0.12); }

      #beverages-filters.filter-visible.search-active .category-search-sort,
      #cleaning-filters.filter-visible.search-active .category-search-sort,
      #maize-filters.filter-visible.search-active .category-search-sort,
      #dairy-tea-filters.filter-visible.search-active .category-search-sort,
      #noodles-filters.filter-visible.search-active .category-search-sort,
      #spreads-condiments-filters.filter-visible.search-active .category-search-sort,
      #rice-grains-filters.filter-visible.search-active .category-search-sort,
      #oil-fats-filters.filter-visible.search-active .category-search-sort,
      #household-filters.filter-visible.search-active .category-search-sort,
      #snacks-filters.filter-visible.search-active .category-search-sort,
      #sugar-filters.filter-visible.search-active .category-search-sort,
      #stationery-filters.filter-visible.search-active .category-search-sort,
      #personal-care-filters.filter-visible.search-active .category-search-sort,
      #beauty-filters.filter-visible.search-active .category-search-sort { display:flex !important; }


      /* Squeeze search input so sort dropdown has reserved horizontal space */
      .category-search { flex:1 1 auto; display:flex; align-items:center; gap:8px; background:#fff7f0; border:1px solid rgba(232,117,34,0.16); border-radius:999px; padding:8px 12px; min-width:0; max-width: calc(100% - 160px); }

      .category-search input { flex:1 1 auto; min-width:0; border:none; outline:none; font-size:14px; font-family:inherit; background:transparent; }

      .category-search input::placeholder { color:#8b6f5b; }

      .category-sort { flex:0 0 150px; display:flex; align-items:center; gap:8px; background:#fff; border:1px solid rgba(232,117,34,0.16); border-radius:999px; padding:8px 16px; cursor:pointer; font-size:13px; font-weight:600; position:relative; z-index:60; color:#4f3b2b; }

      #beverages-filters.filter-visible,
      #cleaning-filters.filter-visible,
      #maize-filters.filter-visible,
      #dairy-tea-filters.filter-visible,
      #noodles-filters.filter-visible,
      #spreads-condiments-filters.filter-visible,
      #rice-grains-filters.filter-visible,
      #oil-fats-filters.filter-visible,
      #household-filters.filter-visible,
      #snacks-filters.filter-visible,
      #sugar-filters.filter-visible,
      #stationery-filters.filter-visible,
      #personal-care-filters.filter-visible,
      #beauty-filters.filter-visible {
        background: rgba(255,255,255,0.82) !important;
        border: 1px solid rgba(232,117,34,0.12) !important;
        border-radius: 22px !important;
        box-shadow: 0 10px 24px rgba(24,13,5,0.06) !important;
        padding: 10px !important;
        margin: 0 16px 10px !important;
      }

      .subcategory-btn {
        flex-shrink:0; height:38px; padding:0 14px;
        border-radius:999px;
        background:#fff; border:1px solid rgba(232,117,34,0.15);
        font-size:14px; font-weight:600; color:#5e4637;
        cursor:pointer; transition:all .18s cubic-bezier(.4,0,.2,1);
        white-space:nowrap;
        box-shadow:0 4px 12px rgba(24,13,5,0.04);
      }

      .subcategory-btn.active {
        background:linear-gradient(135deg, var(--md-primary) 0%, #ff8e2b 100%);
        color:#fff; border-color:transparent;
        box-shadow:0 10px 20px rgba(232,117,34,0.2);
      }

      .subcategory-btn:hover {
        transform:translateY(-1px);
        box-shadow:0 8px 16px rgba(24,13,5,0.08);
      }

      .pgrid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; padding:8px 16px 20px; }

      .pcard {
        background: linear-gradient(180deg, #ffffff 0%, #fff7f0 100%);
        border-radius: 22px;
        overflow:hidden;
        cursor:pointer;
        box-shadow:0 10px 24px rgba(24,13,5,0.06);
        transition:transform .2s ease, box-shadow .2s ease;
        border:1px solid rgba(232,117,34,0.10);
        position:relative;
        animation:cardIn 0.3s var(--ease) both;
      }

      .pcard:hover {
        transform:translateY(-3px);
        box-shadow:0 16px 32px rgba(24,13,5,0.10);
      }

      .pcard-img {
        width:100%; aspect-ratio:1/1; background:linear-gradient(135deg, #fff4e7 0%, #fbe7d6 100%); overflow:hidden;
      }

      .pcard-info { padding:12px 12px 12px; }

      .pcard-name { font-size:13px; font-weight:700; color:#23160d; }

      .pcard-brand { font-size:12px; color:#8b6f5b; margin-bottom:8px; }

      .pcard-price { font-size:17px; font-weight:800; color:#111111; }

      .pcard-fab {
        width:42px; height:42px; border-radius:14px; background:linear-gradient(135deg, var(--md-primary) 0%, #ff8e2b 100%);
        box-shadow:0 10px 18px rgba(232,117,34,0.22);
      }

      /* -- Screens with bottom nav bar padding ------------------------- */

      #screen-home,

      #screen-products,

      #screen-cart,

      #sc-orders {

        padding-bottom: 56px;

      }



      /* -- Screens without bottom nav or hidden nav --------------------- */

      #sc-catpage,

      #sc-receipt,

      #screen-checkout {

        padding-bottom: 0 !important;

      }



      #sc-catpage { display: flex; flex-direction: column; }

      #sc-catpage .tbar.dark { padding: 16px; }

      #beverages-filters, #cleaning-filters, #maize-filters, #dairy-tea-filters,

      #noodles-filters, #spreads-condiments-filters, #rice-grains-filters, #oil-fats-filters,

      #household-filters, #snacks-filters, #sugar-filters, #stationery-filters,

      #personal-care-filters, #beauty-filters { display: none !important; background: rgb(254, 241, 238); width:100%; margin:0; }



      #beverages-filters.filter-visible,

      /* Make filter containers stack vertically so search bar doesn't sit
         side-by-side with the button row and cause clipping/overflow. The
         horizontal scrolling remains on the internal pill-row/button row. */
      #beverages-filters.filter-visible,
      #cleaning-filters.filter-visible,
      #maize-filters.filter-visible,
      #dairy-tea-filters.filter-visible,
      #noodles-filters.filter-visible,
      #spreads-condiments-filters.filter-visible,
      #rice-grains-filters.filter-visible,
      #oil-fats-filters.filter-visible,
      #household-filters.filter-visible,
      #snacks-filters.filter-visible,
      #sugar-filters.filter-visible,
      #stationery-filters.filter-visible,
      #personal-care-filters.filter-visible,
      #beauty-filters.filter-visible {
        display: flex !important;
        flex-direction: column !important;
        visibility: visible !important;
        height: auto !important;
        gap: 8px !important;
        overflow: visible !important;
        background: rgb(254, 241, 238) !important;
        width:100% !important;
        margin: 0 !important;
        padding: 8px !important;
      }
      #beauty-filters.filter-visible {

        display: flex !important;

        visibility: visible !important;

        height: auto !important;

        gap: 8px !important;

        overflow-x: auto !important;

        background: rgb(254, 241, 238) !important;

        width:100% !important;

        margin: 0 !important;

        padding: 8px !important;

      }



      #beverages-filters.filter-visible.column-layout,

      #cleaning-filters.filter-visible.column-layout {

        flex-direction: column !important;

      }

      #sc-catpage #cat-search-container { display: none !important; visibility: hidden !important; height: 0 !important; }

      #sc-catpage #cat-search-container.active { display: flex !important; visibility: visible !important; height: auto !important; }

      #sc-catpage .scroll { flex: 1; overflow-y: auto; padding: 0 !important; margin: 0 !important; }

      #sc-catpage .pgrid { padding: 20px 18px 0 !important; margin-bottom: 0 !important; }

      @keyframes cardIn { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }

      .pcard { background:white; border-radius:18px; overflow:hidden; cursor:pointer; box-shadow:0 2px 12px rgba(24,13,5,0.07); transition:transform var(--dur); border:1px solid rgba(24,13,5,0.04); position:relative; animation:cardIn 0.3s var(--ease) both; }

      .pcard:active { transform:scale(0.96); }

      .pcard-img { width:100%; aspect-ratio:1/1; background:var(--cream); overflow:hidden; }

      .pcard-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.35s; }

      .pcard-info { padding:12px 12px 10px; }

      .pcard-name { font-size:13px; font-weight:600; color:#111111; line-height:1.4; margin-bottom:3px; display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

      .pcard-brand { font-size:14px; color:#111111; margin-bottom:8px; font-weight:500; }

      .pcard-price { font-family:'Google Sans', sans-serif; font-size:19px; font-style:normal; font-weight:700; color:#111111; }

      .pcard-fab { position:absolute; bottom:0; right:0; width:38px; height:38px; background:var(--md-primary); border-radius:14px 0 14px 0; display:flex; align-items:center; justify-content:center; border:none; cursor:pointer; color:var(--md-on-primary); box-shadow:0 2px 8px var(--orange-glow); transition:transform 160ms var(--ease-spring); }

      .pcard-fab:active { transform:scale(0.86); }

      .pcard-fab svg { width:18px; height:18px; }



      /* --- CART PAGE --- */

      #screen-cart { background: var(--cream); }

      #screen-cart .scroll { background: var(--cream); padding-bottom: var(--nav-h); display:flex; flex-direction:column; }

      .cart-item { background:var(--md-surface-4); margin:8px 16px; border-radius:18px; padding:14px 16px; display:flex; gap:12px; box-shadow:0 1px 8px rgba(24,13,5,0.06); position:relative; }

      .cart-img { width:68px; height:68px; border-radius:12px; background:var(--md-surface-1); overflow:hidden; flex-shrink:0; display:flex; align-items:center; justify-content:center; }

      .cart-img img { width:100%; height:100%; object-fit:cover; }

      .cart-info { flex:1; min-width:0; }

      .cart-name { font-size:13px; font-weight:600; color:#111111; line-height:1.35; margin-bottom:2px; }

      .cart-unit { font-size:11px; color:#111111; margin-bottom:10px; text-transform:uppercase; letter-spacing:0.4px; }

      .cart-row { display:flex; align-items:center; justify-content:space-between; }

      .cart-qty { display:flex; align-items:center; border:1.5px solid var(--border); border-radius:100px; overflow:hidden; height:30px; }

      .cq-btn { width:30px; height:100%; display:flex; align-items:center; justify-content:center; background:none; border:none; cursor:pointer; font-size:16px; font-weight:700; color:#111111; }

      .cq-num { min-width:26px; text-align:center; font-size:13px; font-weight:700; color:#111111; }

      .cart-price { font-family:'Google Sans', sans-serif; font-style:normal; font-weight:400; font-size:15px; color:#111111; }

      .cart-del { position:absolute; top:10px; right:12px; width:28px; height:28px; border-radius:8px; background:none; border:none; cursor:pointer; display:flex; align-items:center; justify-content:center; color:#111111; }

      .cart-del svg { width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:2; }

      .cart-summary { background:var(--md-surface-4); margin:8px 16px; border-radius:18px; padding:18px 20px; box-shadow:0 1px 8px rgba(24,13,5,0.06); }

      #screen-cart .sum-row { display:flex; justify-content:space-between; align-items:center; padding:6px 0; font-size:14px; color:#111111; }

      #screen-cart .sum-row.total { font-family:'Google Sans', sans-serif; font-size:17px; font-style:normal; font-weight:700; color:#111111; padding-top:12px; margin-top:6px; border-top:1px solid var(--border); }

      #screen-cart .sum-row.total span:last-child { color:#111111; }

      .free-pill { background:rgba(26,122,63,0.1); color:#111111; font-size:11px; font-weight:700; padding:2px 8px; border-radius:100px; }

      .cart-pts { background:var(--orange-dim); border:1px solid color-mix(in srgb, var(--md-primary) 18%, transparent); border-radius:14px; padding:12px 16px; margin:8px 16px 0; font-size:13px; font-weight:600; color:#111111; text-align:center; }

      .cart-checkout-bar { padding:12px 16px 16px; background:var(--md-surface-4); border-top:1px solid var(--border); position:sticky; bottom:0; }

      .cart-empty { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:80px 32px; text-align:center; gap:16px; }

      .cart-empty-title { font-family:var(--font-display); font-size:24px; font-style:normal; color:#111111; }

      .cart-empty-sub { font-size:14px; color:#111111; line-height:1.6; max-width:240px; }

      .cart-clear-btn {
        margin-left:auto;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:6px;
        padding:8px 12px;
        border:none;
        border-radius:999px;
        background:transparent;
        color:#111111;
        font-size:12px;
        font-weight:700;
        cursor:pointer;
      }

      .cart-clear-btn svg { width:14px; height:14px; fill:currentColor; }

      /* DELETED: #screen-cart nav highlighting ? nav removed permanently */




      /* --- ORDERS PAGE --- */

      #sc-orders {

        background: var(--surface-2);

      }



      #sc-orders .scroll {

        background: var(--surface-2);

        padding: 0 !important;

        padding-bottom: calc(var(--nav-h) + 16px) !important;

      }



      /* Orders header container - already defined above in Material 3 section */



      /* Order Card - Professional Premium Design */

      .order-card-m3 {

        background: #fff;

        border-radius: 20px;

        margin: 16px 16px;

        padding: 24px;

        cursor: pointer;

        box-shadow: 0 2px 8px rgba(60, 64, 67, 0.08);

        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);

        border: 1px solid #e8eaed;

        position: relative;

        overflow: hidden;

      }



      .order-card-m3:hover {

        box-shadow: 0 8px 24px rgba(60, 64, 67, 0.14);

        transform: translateY(-4px);

      }



      .order-card-m3:active {

        transform: translateY(-2px);

      }



      /* Order Top Section - Premium layout */

      .oc-top {

        display: flex;

        justify-content: space-between;

        align-items: flex-start;

        margin-bottom: 18px;

        gap: 16px;

      }



      .oc-id {

        font-family: 'Google Sans Display', sans-serif;

        font-size: 18px;

        font-weight: 700;

        color: #1f1f1f;

        margin-bottom: 6px;

        letter-spacing: -0.2px;

      }



      .oc-date {

        font-size: 14px;

        color: #5f6368;

        font-weight: 500;

        display: flex;

        align-items: center;

        gap: 8px;

      }



      /* Status Badge - Premium */

      .status-chip {

        font-size: 12px;

        font-weight: 700;

        padding: 8px 16px;

        border-radius: 100px;

        text-transform: capitalize;

        letter-spacing: 0.4px;

        font-family: 'Google Sans', sans-serif;

        white-space: nowrap;

        display: inline-flex;

        align-items: center;

        gap: 6px;

      }



      .s-pending {

        background: #FFF3E0;

        color: #E65100;

      }



      .s-placed {

        background: linear-gradient(135deg, #E3F2FD 0%, #BBDEFB 100%);

        color: #1565C0;

      }



      .s-processing {

        background: linear-gradient(135deg, #E3F2FD 0%, #BBDEFB 100%);

        color: #1565C0;

      }



      .s-delivered {

        background: linear-gradient(135deg, #E8F5E9 0%, #C8E6C9 100%);

        color: #0D652D;

      }



      .s-shipping {

        background: linear-gradient(135deg, #E8F5E9 0%, #C8E6C9 100%);

        color: #0D652D;

      }



      .s-cancelled {

        background: #FFEBEE;

        color: #B71C1C;

      }

      .ord-card { background: var(--surface-2); margin:10px 16px; border-radius:20px; padding:18px; box-shadow:none; }

      .ord-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:14px; }

      .ord-id { font-size:15px; font-weight:700; color:#111111; }

      .ord-date { font-size:12px; color:#111111; margin-top:3px; }

      .ord-status { font-size:10px; font-weight:700; padding:5px 10px; border-radius:8px; letter-spacing:0.5px; text-transform:uppercase; white-space:nowrap; }

      .ord-status.placed,.ord-status.processing,.ord-status.pending { background:#FFF1E8; color:#111111; }

      .ord-status.preparing { background:#FEF7E0; color:#111111; }

      .ord-status.shipped { background:#E6F4EA; color:#111111; }

      .ord-status.delivered,.ord-status.completed { background:#E6F4EA; color:#111111; }

      .ord-status.cancelled { background:#FCE8E6; color:#111111; }


      .ord-info-item { display:flex; flex-direction:column; gap:3px; }

      .ord-info-label { font-size:10px; font-weight:600; color:#111111; text-transform:uppercase; letter-spacing:0.5px; }

      .ord-info-value { font-size:14px; color:#111111; font-weight:500; }

      .ord-info-value.price { font-weight:700; }
      .ord-info-value.price .ipoo-kes { color: var(--md-primary); }
      .ord-info-value.price .ipoo-amt { color: #000000; }

      .ord-info-value.strong { font-family:var(--font-display); font-style:normal; font-size:16px; color:var(--md-primary); }

      .ord-action { display:flex; justify-content:flex-end; margin-top:14px; }


      .ord-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:80px 32px; text-align:center; }

      .ord-empty-title { font-family:var(--font-display); font-size:22px; font-style:normal; color:#111111; margin-bottom:8px; }

      .ord-empty-sub { font-size:14px; color:#111111; line-height:1.6; }



      /* --- PROFILE PAGE ? new pli list items --- */

      .pli { display:flex; align-items:center; gap:14px; padding:14px 18px; cursor:pointer; transition:background 160ms; position:relative; }

      .pli:hover { background:var(--md-primary-container); }

      .pli:active { background:var(--orange-container); }

      .pli::after { content:''; position:absolute; left:72px; right:0; bottom:0; height:1px; background:var(--border); }

      .pli:last-child::after { display:none; }

      .pli-ico { width:40px; height:40px; border-radius:12px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }

      .pli-ico.pri { background:var(--md-primary-container); }

      .pli-ico.err { background:var(--md-error-container); }

      .pli-ico svg { width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:2; }

      .pli-ico.pri svg { stroke:var(--md-primary); }

      .pli-ico.err svg { stroke:#C5221F; }

      .pli-body { flex:1; }

      .pli-ttl { font-size:15px; font-weight:500; color:#111111; }

      .pli-ttl.danger { color:#C5221F; }

      .pli-sub { font-size:12px; color:#111111; margin-top:2px; }

      .pli-chev { width:18px; height:18px; flex-shrink:0; opacity:0.45; background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231C1410' stroke-width='2.2'><polyline points='9 18 15 12 9 6'/></svg>") center/contain no-repeat; }



      /* ---------------------------------------------------

         MATERIAL 3 CART PAGE ? REDESIGN

         --------------------------------------------------- */



      #screen-cart { background: var(--cream); }

      #screen-cart .scroll-body { background: var(--cream); padding: 8px 0 16px; }

      #screen-cart .top-app-bar { background: var(--md-surface-4); border-bottom: 1px solid rgba(120, 75, 40, 0.08); }

      #screen-cart .bar-title { font-size: 22px; font-weight: 500; }



      /* Empty state */

      .empty-state {

        display: flex;

        flex-direction: column;

        align-items: center;

        justify-content: center;

        padding: 80px 32px;

        text-align: center;

        gap: 16px;

      }



      .empty-icon {

        width: 88px;

        height: 88px;

        border-radius: 22px;

        background: var(--md-surface-3);

        display: flex;

        align-items: center;

        justify-content: center;

      }



      .empty-icon svg {

        width: 48px;

        height: 48px;

        stroke: var(--md-on-surface-var);

        stroke-width: 1.5;

        fill: none;

      }



      .empty-title {

        font-size: 22px;

        font-weight: 500;

        color: var(--md-on-surface);

        margin: 8px 0;

      }



      .empty-sub {

        font-size: 14px;

        color: var(--md-on-surface-var);

        line-height: 1.5;

        max-width: 280px;

      }



      /* ===== CANONICAL CART STYLES — single source of truth ===== */
      #screen-cart { background: var(--cream); }
      #screen-cart .scroll-body { background: var(--cream); padding: 8px 0 16px; }

        background: var(--md-surface-2);
        margin: 8px 16px;
        border-radius: 16px;
        padding: 14px 16px;
        display: flex;
        gap: 12px;
        border: 1px solid var(--md-outline-var);
        position: relative;
        transition: transform 0.22s ease, opacity 0.22s ease, background 200ms cubic-bezier(0.2, 0, 0.13, 1);
      }

      .cart-img-m3 {
        width: 72px; height: 72px;
        border-radius: 12px;
        background: var(--md-surface-3);
        overflow: hidden; flex-shrink: 0;
        display: flex; align-items: center; justify-content: center;
      }
      .cart-img-m3 img { width: 100%; height: 100%; object-fit: cover; }

      .cart-info-m3 { flex: 1; min-width: 0; display: flex; flex-direction: column; justify-content: space-between; }
      .cart-name-m3 { font-size: 14px; font-weight: 500; color: var(--md-on-surface); line-height: 1.3; margin-bottom: 2px; }
      .cart-unit-m3 { font-size: 12px; color: var(--md-on-surface-var); margin-bottom: 8px; }
      .cart-bottom-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; }

      .cart-qty-m3 { display: flex; align-items: center; border: 1px solid var(--md-outline); border-radius: 8px; overflow: hidden; background: var(--md-surface); height: 32px; }
      .cart-qty-m3 .cq-btn { width: 32px; height: 100%; display: flex; align-items: center; justify-content: center; background: none; border: none; cursor: pointer; font-size: 16px; font-weight: 500; color: var(--md-primary); }
      .cart-qty-m3 .cq-btn:active { background: var(--md-primary-container); }
      .cart-qty-m3 .cq-num { min-width: 28px; text-align: center; font-size: 13px; font-weight: 600; color: var(--md-on-surface); }

      .cart-price-m3 { font-size: 15px; font-weight: 400; color: var(--md-primary); white-space: nowrap; }

      .cart-del-m3 { position: absolute; top: 8px; right: 12px; width: 32px; height: 32px; border-radius: 8px; background: none; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; color: var(--md-on-surface-var); }
      .cart-del-m3:hover { background: var(--md-error-container); color: var(--md-error); }
      .cart-del-m3 svg { width: 18px; height: 18px; fill: currentColor; }


      .free-badge { background: var(--md-success-container); color: var(--md-success); font-size: 12px; font-weight: 600; padding: 2px 8px; border-radius: 4px; }

      .cart-pts-preview {
        display: flex;
        align-items: center;
        gap: 8px;
        background: var(--md-primary-container);
        border-radius: 14px;
        padding: 12px 16px;
        margin: 8px 16px 0;
        font-size: 13px;
        font-weight: 600;
        color: #111111;
      }
      .cart-pts-preview svg { color: var(--md-primary); flex-shrink: 0; }

      .cart-img-m3.img-fallback {
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        font-size: 26px;
        color: var(--md-primary);
        background: var(--md-primary-container);
      }

      .btn-filled {

        background: linear-gradient(135deg, var(--md-primary) 0%, #ff7a1a 100%);

        color: #fff;

        border: none;

        border-radius: 999px;

        font-size: 15px;

        font-weight: 800;

        cursor: pointer;

        transition: all 200ms cubic-bezier(0.2, 0, 0.13, 1);

        font-family: inherit;

        box-shadow: 0 10px 24px color-mix(in srgb, var(--md-primary) 24%, transparent);

      }



      .btn-filled:hover {

        background: linear-gradient(135deg, color-mix(in srgb, var(--md-primary-dark) 80%, black) 0%, color-mix(in srgb, var(--md-primary-light) 90%, white) 100%);

        box-shadow: 0 10px 24px color-mix(in srgb, var(--md-primary) 28%, transparent);

      }



      .btn-filled:active {

        transform: scale(0.98);

        box-shadow: 0 2px 8px color-mix(in srgb, var(--md-primary) 20%, transparent);

      }



      .ripple-btn {

        position: relative;

        overflow: hidden;

      }



      .ripple-btn::after {

        content: '';

        position: absolute;

        top: 50%;

        left: 50%;

        width: 0;

        height: 0;

        border-radius: 50%;

        background: rgba(255, 255, 255, 0.3);

        transform: translate(-50%, -50%);

        pointer-events: none;

      }



      .ripple-btn:active::after {

        animation: ripple 600ms ease-out;

      }



      @keyframes ripple {

        0% {

          width: 0;

          height: 0;

          opacity: 1;

        }

        100% {

          width: 300px;

          height: 300px;

          opacity: 0;

        }

      }



      /* DELETED: .screen .nav-bar ? replaced by nav#nav-home positioning */

      /* (nav is now fixed outside screens, not inside) */



      /* DELETED: All .nav-item, .nav-indicator, .nav-label CSS ? these classes are no longer used */
      /* Only .nav and .ni classes used for main bottom navigation */



      /* Floating Cart Button Styles */

      #catpage-floating-cart-btn {

        background: transparent;

        display: flex;

        align-items: center;

        justify-content: center;

        transition: all 0.2s ease;

      }



      #catpage-floating-cart-btn:hover {

        transform: scale(1.08);

        filter: drop-shadow(0 2px 8px rgba(0,0,0,0.15));

      }



      #catpage-floating-cart-btn:active {

        transform: scale(0.95);

      }

      /* price-color-lock.css is single source — removed duplicate merged block */

      /* === merged from cart-price-fix.css === */
      #screen-cart .price-currency,
      #screen-checkout .price-currency { color: var(--md-primary) !important; }
#screen-cart .price-num,
#screen-checkout .price-num { color: #0D0600 !important; }

      /* --- Checkout screen polish --- */
      #screen-checkout .scroll-body { padding-bottom: 32px; background: var(--md-surface-1); }
      #screen-checkout .top-app-bar { background: var(--md-surface-4); border-bottom: 1px solid rgba(17,17,17,0.06); }
      #screen-checkout .top-app-bar .bar-title { font-size: 20px; font-weight: 700; letter-spacing: 0; }
      #screen-checkout .checkout-card { background: var(--md-surface-4); border: 1px solid rgba(17,17,17,0.08); border-radius: 24px; margin: 18px 16px 0; padding: 22px; box-shadow: 0 18px 40px rgba(15,25,56,0.04); }
      #screen-checkout .checkout-card-title { margin-bottom: 18px; }
      #screen-checkout .delivery-info { padding: 18px; background: var(--md-surface-1); border-radius: 20px; }
      #screen-checkout .checkout-card-note { margin-top: 14px; font-size: 13px; color: #4A4A4A; line-height: 1.6; }
      #screen-checkout .checkout-summary-card { margin: 18px 16px 24px; padding: 24px; border-radius: 24px; background: var(--md-surface-4); border: 1px solid rgba(17,17,17,0.08); box-shadow: 0 18px 40px rgba(15,25,56,0.05); }
      #screen-checkout .checkout-trust-banner { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; margin-top: 0; padding: 0; border: none; background: transparent; }
      #screen-checkout .checkout-trust-pill { display: inline-flex; align-items: center; gap: 10px; padding: 16px 14px; border-radius: 20px; background: linear-gradient(180deg, rgba(254,249,241,1), rgba(255,255,255,1)); border: 1px solid rgba(17,17,17,0.08); box-shadow: 0 10px 24px rgba(17,17,17,0.03); color: #111111; }
      #screen-checkout .checkout-trust-pill svg { width: 16px; height: 16px; }
      #screen-checkout .pay-row { display: flex; gap: 16px; align-items: center; padding: 16px; border: 1px solid var(--md-outline-var); border-radius: 20px; margin-bottom: 12px; background: var(--md-surface-2); cursor: pointer; transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease; }
      #screen-checkout .pay-row:hover { transform: translateY(-1px); }
      #screen-checkout .pay-row.sel { border-color: var(--md-primary); background: rgba(255,245,235,0.9); box-shadow: 0 12px 24px rgba(255,122,26,0.08); }
      #screen-checkout .pay-row .pay-check { width: 28px; height: 28px; }
      #screen-checkout .support-card { margin: 18px 16px 0; }
      #screen-checkout .support-actions { justify-content: flex-start; }
      #screen-checkout #coupon-options-wrap, #screen-checkout #no-coupons-msg { margin-top: 12px; }
      #screen-checkout .checkout-summary-card .sum-row { font-size: 15px; padding: 12px 0; border-bottom: 1px solid rgba(17,17,17,0.08); }
      #screen-checkout .checkout-summary-card .sum-row:last-child { border-bottom: none; }
      #screen-checkout .checkout-summary-card .sum-row.total { font-size: 18px; font-weight: 700; color: #111111; margin-top: 8px; padding-top: 16px; }
      #screen-checkout .checkout-summary-card .sum-note { font-size: 13px; color: #5A4630; line-height: 1.6; margin-top: 12px; }
      #screen-checkout .checkout-summary-card .btn-filled { width: 100%; min-height: 54px; margin-top: 16px; }
      #screen-checkout .price-currency, #screen-checkout .price-num { font-weight: 700; }

      /* === merged from profile-hero-fix.css === */
      #sc-profile [style*="background: #1c0e06"] span,
      #sc-profile [style*="background:#1c0e06"] span {
        color: #fff !important;
      }

      /* === merged from search-suggestions-hide.css === */
      .search-suggestions:not(.show) { display: none !important; }
    </style>