
/* tokens removed — single source is tokens.css (see static/css/tokens.css) */

      /* Micro-interactions & motion polish */
      .btn, .btn-filled, .btn-ghost, .ripple-btn { transition: transform var(--md-duration-short) var(--md-easing), box-shadow var(--md-duration-short) var(--md-easing), background-color var(--md-duration-short) var(--md-easing); }
      .btn:active, .btn-filled:active, .btn-ghost:active, .ripple-btn:active { transform: translateY(1px) scale(0.995); }
      .btn:hover, .btn-filled:hover, .btn-ghost:hover { box-shadow: 0 6px 18px rgba(0,0,0,0.08); }

      /* Loading button */
      .btn.loading, .btn-filled.loading { pointer-events: none; opacity: 0.9; }
      .btn.loading::after, .btn-filled.loading::after {
        content: '';
        display: inline-block;
        width: 16px; height:16px; margin-left:8px; vertical-align:middle;
        border-radius:50%; border:2px solid rgba(255,255,255,0.35); border-top-color:var(--md-on-primary); animation: ipoo-spin 900ms linear infinite;
      }

      @keyframes ipoo-spin { from { transform: rotate(0deg);} to { transform: rotate(360deg);} }

      /* Screen transitions */
      .screen { transition: opacity var(--md-duration-medium) var(--md-easing), transform var(--md-duration-medium) var(--md-easing); }
      .screen.hidden { opacity:0; transform: translateY(6px); pointer-events:none; }

      /* Badge pop */
      .floating-cart-badge, #nav-badge, #cbadge, #cbadge2 { transition: transform 260ms var(--md-easing), box-shadow 260ms var(--md-easing); }
      .badge-pop { animation: ipoo-badge-pop 420ms cubic-bezier(.2,.9,.2,1); }
      @keyframes ipoo-badge-pop { 0% { transform: scale(1); } 30% { transform: scale(1.36); } 60% { transform: scale(0.96); } 100% { transform: scale(1); } }

      /* Subtle card elevation on hover */
      .checkout-card, .summary-card, .support-card { transition: box-shadow var(--md-duration-short) var(--md-easing), transform var(--md-duration-short) var(--md-easing); }



      @font-face {

        font-family: 'Satisfy';

        font-style: normal;

        font-weight: 400;

        font-display: swap;

        src: url('https://fonts.gstatic.com/s/satisfy/v21/rP2Hp2ywxg3Z9ZRvUjVHqvesZW2xOQ-xsNqO47m55DA.woff2') format('woff2'),

             url('https://fonts.gstatic.com/s/satisfy/v21/rP2Hp2ywxg3Z9ZRvUjVHqvesZW2xOQ-xsNqO47m55DA.ttf') format('truetype');

      }









      * { margin:0; padding:0; box-sizing:border-box; -webkit-tap-highlight-color:transparent; }



            /* Force Satisfy font on receipt elements and homepage greeting only */

      .receipt-logo, .receipt-thanks, .greeting-top, .greeting-name { font-family: 'Satisfy', cursive !important; }



      html { height:100%; height:100dvh; overflow:hidden; overflow-x:hidden; overflow-y:hidden; }
      body { height:100%; height:100dvh; overflow:hidden; overflow-x:hidden; overflow-y:hidden; font-family:'DM Sans', 'Google Sans', Roboto, sans-serif; background:var(--md-surface) !important; }















      #shell {







        position:fixed; left:50%; transform:translateX(-50%); top:0; bottom:0; width:min(430px, 100vw) !important; max-width:100vw !important; height:100dvh; z-index:10;







        margin:0; background:var(--md-surface);







        display:flex; flex-direction:column;







        overflow:hidden;







        box-shadow:0 0 0 1px rgba(0,0,0,.15);







      }















      .screen {
        position:fixed;
        left:50%;
        transform:translateX(-50%);
        top:0;
        bottom:0;
        width:min(430px, 100vw) !important;
        max-width:100vw !important;
        display:none;
        flex-direction:column;
        background:var(--md-surface) !important;
        opacity:0;
        pointer-events:none;
        overflow:hidden;
        box-shadow: 0 0 0 1px rgba(0,0,0,.15);
















        display:flex; flex-direction:column;







        padding-bottom:0;







        opacity:0; pointer-events:none; visibility:hidden;
















        transition:opacity .28s cubic-bezier(.4,0,.2,1), transform .28s cubic-bezier(.4,0,.2,1);







        overflow:hidden;







        z-index:1;







      }







      .screen.active {







        opacity:1; pointer-events:auto; visibility:visible; display:flex; z-index:5;







      }







      .screen:not(.active) {
        opacity:0 !important;
        pointer-events:none !important;
        visibility:hidden !important;
        display:none !important;
      }







      .screen.exit-left { transform:translateX(-24px); opacity:0; visibility:hidden; }















      .scroll {







        flex:1; overflow-y:auto; overflow-x:hidden;







        -webkit-overflow-scrolling:touch;







        scrollbar-width:none;







        padding-bottom:0;







      }























      .scroll::-webkit-scrollbar { display:none; }















      .topbar {







        height:64px; padding:12px 16px; box-sizing:border-box;







        display:flex; align-items:center; gap:16px;







        background:var(--md-surface); flex-shrink:0;







        position:relative; z-index:10;







      }







      .topbar-title {







        font-family:'Google Sans Display', sans-serif;







        font-size:22px; font-weight:700; color:#111111; min-width:0;







        flex:1; letter-spacing:-0.5px;







      }







      .topbar-logo {







        font-family:'Google Sans Display', sans-serif;







        font-size:28px; font-weight:700; color:#111111;







        letter-spacing:-2px;
        height: 32px;
        line-height: 32px;







      }







      .topbar-logo span { color: var(--md-on-surface); }







      .icon-btn {







        width:48px; height:48px; border-radius:50%;







        display:flex; align-items:center; justify-content:center;







        background:none; border:none; cursor:pointer;







        color:#111111; transition:background .2s cubic-bezier(.4,0,.2,1);







        position:relative;







      }







      .icon-btn:hover { background:var(--md-surface-2); }







      .icon-btn:active { background:var(--md-surface-1); }







      .badge {







        position:absolute; top:5px; right:5px;







        min-width:16px; height:16px; border-radius:8px;







        padding:0 4px;







        background:var(--md-primary); color:var(--md-on-primary);







        font-size:9px; font-weight:700;







        display:flex; align-items:center; justify-content:center;







        border:2px solid var(--md-surface);







      }















      .nav {
        /* PROTECTIVE NAV STYLING - DO NOT OVERRIDE */
        position: fixed !important;
        bottom: 0 !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: min(430px, 100vw) !important;
        max-width: 100vw !important;
        height: 56px !important;
        z-index: 50000 !important;
        display: flex !important;
        flex-shrink: 0 !important;
        background: var(--md-surface) !important;
        box-shadow: 0 -2px 8px rgba(0,0,0,0.06) !important;
        padding-bottom: env(safe-area-inset-bottom, 0) !important;
        margin: 0 !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        border-top: 1px solid var(--border) !important;
      }







      .ni {







        flex:1; display:flex; flex-direction:column;







        align-items:center; justify-content:center; gap:2px;







        cursor:pointer; color:#111111; position:relative;







        padding-top:6px; transition:color .2s;







      }







      /* .ni CSS DELETED - nav buttons removed */


      .ni-pill {







        width:48px; height:28px; border-radius:14px;







        background:transparent; display:flex; align-items:center;







        justify-content:center; position:relative;







        transition:background .3s cubic-bezier(.4,0,.2,1);







      }







      .ni.on .ni-pill { background:rgba(255,107,0,0.12); }







      .nbadge {

        position: absolute;

        top: -4px;

        right: -4px;

        min-width: 22px;

        height: 22px;

        border-radius: 50%;
        background: var(--md-primary) !important;
        color: var(--md-on-primary) !important;
        font-size: 12px;
        font-weight: 800;
        display: flex !important;
        align-items: center;
        justify-content: center;
        line-height: 1;
        padding: 0 4px;
        border: 2px solid var(--md-surface-2);

      }

      /* Force-specific styles for the cart badge to override inline or other rules */
      #nav-badge {
        background: var(--md-primary) !important;
        color: var(--md-on-primary) !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 6px !important;
        min-width: 18px !important;
        height: 18px !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        border: 2px solid var(--md-surface-2) !important;
      }

      .floating-cart-badge {
        background: var(--md-primary) !important;
        color: var(--md-on-primary) !important;
        fill: currentColor !important;
        border-radius: 50% !important;
        min-width: 18px !important;
        height: 18px !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 4px !important;
        border: 2px solid var(--md-surface-2) !important;
      }

      /* Ensure filled buttons always use on-primary (white) for text/icons */
      .btn-filled, .btn-filled * {
        color: var(--md-on-primary) !important;
        fill: currentColor !important;
      }

      /* Small variant enforcement */
      .btn-filled[style] { color: var(--md-on-primary) !important; }
      
      /* Higher-specificity overrides for inner elements that may be targeted by broad global rules */
      .btn-filled span,
      .btn-filled .text,
      .btn-filled .label,
      .btn-filled .pcard-name,
      .btn-filled .pcard-desc,
      .btn-filled strong,
      .btn-filled b,
      .add-to-cart span,
      .add-to-cart .text {
        color: var(--md-on-primary) !important;
        fill: currentColor !important;
      }







      .ni svg { width:20px; height:20px; fill:currentColor;







        transition:transform .3s cubic-bezier(.4,0,.2,1);







      }







      .ni.on svg { transform:scale(1.08); }







      .ni-lbl { font-size:10px; font-weight:500; letter-spacing:0.3px; }















      .pill-tabs {







        display:flex; gap:6px; padding:12px 16px;







        overflow-x:auto; scrollbar-width:none; flex-shrink:0;







      }







      .pill-tabs::-webkit-scrollbar { display:none; }







      .pill {







        flex-shrink:0; padding:8px 18px; border-radius:var(--radius-full);







        font-size:13px; font-weight:600; cursor:pointer;







        border:1.5px solid var(--border);







        background:var(--md-primary-container); color:#111111;







        transition:all .2s cubic-bezier(.4,0,.2,1); white-space:nowrap;







      }







      .pill.active {







        background:var(--md-on-surface); color:var(--md-on-primary); border-color:#111111;







        box-shadow:0 2px 8px rgba(28,20,16,0.2);







      }















      .products-grid {







        display:grid; grid-template-columns:repeat(2, minmax(0, 1fr));







        gap:16px; padding:16px 16px 96px;







      }















      .cat-grid {







        display:block; width:100%; padding:0; margin:0; background:var(--md-surface);







      }















      .cat-chips {







        display:flex; gap:8px; padding:12px 16px 16px;







        overflow-x:auto; -webkit-overflow-scrolling:touch;







        scrollbar-width:none; flex-shrink:0;







        background:var(--md-surface);







      }







      .cat-chips::-webkit-scrollbar { display:none; }















      .chip {







        flex-shrink:0; padding:8px 14px; border-radius:100px; display:inline-flex; align-items:center;







        font-size:13px; font-weight:600; cursor:pointer;







        border:1px solid var(--border); background:var(--md-surface);







        color:#111111; transition:all .2s cubic-bezier(.4,0,.2,1);







        white-space:nowrap;







      }







      .chip.on {







        background:var(--md-primary); color:white; border-color:#111111;







        box-shadow:0 2px 8px color-mix(in srgb, var(--md-primary) 20%, transparent);







      }







      .product-card {







        background:var(--surface); border-radius:16px;







        overflow:hidden; box-shadow:0 2px 4px rgba(0,0,0,0.08), 0 4px 8px rgba(0,0,0,0.06);







        cursor:pointer; transition:all .28s cubic-bezier(.4,0,.2,1);







        position:relative;







        border:1px solid rgba(0,0,0,0.06);







      }







      .product-card:hover {



        box-shadow:0 4px 12px rgba(0,0,0,0.12);



        transform:translateY(-4px);



      }







      .product-card:active { transform:scale(.96); box-shadow:0 2px 4px rgba(0,0,0,0.08); }







      .product-img-wrap {







        width:100%; aspect-ratio:1/1; background:linear-gradient(135deg, var(--md-surface) 0%, var(--md-surface-1) 100%);







        position:relative; overflow:hidden;







      }







      .product-img {







        width:100%; height:100%; object-fit:cover;







        transition:transform .35s cubic-bezier(.4,0,.2,1);







      }







      .product-card:hover .product-img { transform:scale(1.08); }







      .product-img-fallback {







        width:100%; height:100%; display:flex;







        align-items:center; justify-content:center;







        font-family:'Google Sans Display', sans-serif;







        font-size:52px; font-weight:700; color:#111111;







        background:linear-gradient(135deg, var(--md-surface) 0%, var(--md-surface-1) 100%);







      }







      .product-info { padding:12px; background:#FFF8F6; }







      .prod-qty-ctrl {
        position: absolute;
        bottom: 8px;
        right: 8px;
        display: flex;
        align-items: center;
        height: 34px;
        background: var(--md-primary);
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 4px 12px color-mix(in srgb, var(--md-primary) 35%, transparent);
        z-index: 2;
        animation: fabPop 200ms cubic-bezier(.2,0,0,1);
        backdrop-filter: blur(4px);
      }

      .pqb {
        width: 27px;
        height: 34px;
        background: transparent;
        border: none;
        color: #fff;
        font-size: 16px;
        font-weight: 700;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: background 150ms;
        flex-shrink: 0;
        -webkit-tap-highlight-color: transparent;
      }

      .pqb:active { background: rgba(0,0,0,0.18); }

      .pqn {
        min-width: 20px;
        text-align: center;
        color: #fff;
        font-size: 14px;
        font-weight: 800;
        letter-spacing: .5px;
      }

      .product-name {







        font-family:'Google Sans', sans-serif;



        font-size:14px; font-weight:600; color:#111111;







        line-height:1.4; margin-bottom:4px; background:#F5D7B8; padding:6px 8px; border-radius:4px;







        display:-webkit-box; -webkit-line-clamp:2;







        -webkit-box-orient:vertical; overflow:hidden;







      }







      .product-sub { font-size:11px; color:#111111; margin-bottom:9px; font-weight:500; background:#F5F0EB; padding:4px 6px; border-radius:3px; }







      .product-row { display:flex; align-items:center; justify-content:space-between; }







      .product-price {







        font-family:'Google Sans', sans-serif;







        font-size:20px; font-weight:700; color:#111111; background:#FDF8F4; padding:8px 12px; border-radius:6px; border-left:4px solid var(--md-primary);







      }







      .add-btn {

        width:44px; height:44px; border-radius:8px;

        background:linear-gradient(135deg, var(--md-primary) 0%, var(--md-primary-dark) 100%); border:none; cursor:pointer;

        display:flex; align-items:center; justify-content:center;

        color:var(--md-on-primary); flex-shrink:0;

        transition:all 200ms cubic-bezier(.2,0,0,1);

        box-shadow:0 10px 24px color-mix(in srgb, var(--md-primary) 24%, transparent);

        font-size:13px; font-weight:700;

      }

      .add-btn: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%);

        transform:scale(1.05);

        box-shadow:0 10px 24px color-mix(in srgb, var(--md-primary) 28%, transparent);

      }

      .add-btn:active {

        transform:scale(.95);

        box-shadow:0 2px 8px color-mix(in srgb, var(--md-primary) 20%, transparent);

      }







      @keyframes fabPop {



        from { transform: scale(0.6); opacity: 0.5; }



        to { transform: scale(1); opacity: 1; }



      }




      .product-name {

        font-family: 'Google Sans', sans-serif;
        font-size: 17px;
        line-height: 1.3;
        font-weight: 600;
        letter-spacing: -0.1px;
        color: #111111;
        margin-bottom: 4px;
        background: #F5D7B8;
        padding: 6px 8px;
        border-radius: 4px;
        display: -webkit-box;
        -webkit-line-clamp: 2;

      }







      .tag-badge {







        position:absolute; top:10px; left:10px;







        background:var(--md-primary); color:var(--md-on-primary);







        font-size:10px; font-weight:700; padding:3px 9px;







        border-radius:var(--radius-full); letter-spacing:0.3px;







      }















      /* --- CATEGORIES GRID --- */



      .categories-scroll {



        display: flex !important;



        flex-wrap: wrap !important;



        gap: 12px;



        padding: 14px 14px 0;



        overflow: visible !important;



        visibility: visible !important;



        justify-content: center;



        align-items: flex-start;



        width: 100% !important;



        background: transparent;



        min-height: auto;



      }







      .section-header {



        display: flex;



        align-items: center;



        justify-content: space-between;



        padding: 16px 16px 0;



        width: 100%;



        box-sizing: border-box;



        flex-basis: 100%;



        order: -1;



        background: transparent;



        min-height: 40px;



        height: auto;



        flex-shrink: 0;



      }



      .section-title {



        font-family: 'Instrument Serif', serif;



        font-style: italic;



        font-size: 16px;



        font-weight: 500;



        color: var(--md-on-surface);



        letter-spacing: 0.15px;



        display: block;



        visibility: visible;



        opacity: 1;



        margin: 0;



        padding: 0;



      }



      .section-sub {



        font-size: 12px;



        color: #A08070;



        font-weight: 600;



      }







      /* --- CATEGORY CARD --- */



      .cat-card {



        display: flex;



        flex-direction: column;



        align-items: center;



        gap: 10px;



        background: var(--md-surface-4);



        border-radius: var(--radius-card);



        padding: 16px 10px 14px;



        border: 1px solid var(--border);



        box-shadow: var(--shadow-card);



        cursor: pointer;



        order: 1;



        flex-shrink: 0;



        width: 112px;



        margin: 0 5px;



        text-align: center;



        position: relative;



        overflow: hidden;



        transition: transform 0.28s cubic-bezier(.34,1.56,.64,1),



                    box-shadow 0.28s cubic-bezier(.4,0,.2,1);



        opacity: 0;



        animation: cardIn 0.45s cubic-bezier(.4,0,.2,1) forwards;



      }







      .cat-card:nth-child(2)  { animation-delay: .04s }



      .cat-card:nth-child(3)  { animation-delay: .08s }



      .cat-card:nth-child(4)  { animation-delay: .12s }



      .cat-card:nth-child(5)  { animation-delay: .16s }



      .cat-card:nth-child(6)  { animation-delay: .20s }



      .cat-card:nth-child(7)  { animation-delay: .24s }



      .cat-card:nth-child(8)  { animation-delay: .28s }



      .cat-card:nth-child(9)  { animation-delay: .32s }



      .cat-card:nth-child(10) { animation-delay: .36s }



      .cat-card:nth-child(11) { animation-delay: .40s }



      .cat-card:nth-child(12) { animation-delay: .44s }



      .cat-card:nth-child(13) { animation-delay: .48s }



      .cat-card:nth-child(14) { animation-delay: .52s }



      .cat-card:nth-child(15) { animation-delay: .56s }







      @keyframes cardIn {



        from { opacity:0; transform: translateY(20px) scale(0.94); filter: blur(4px); }



        to   { opacity:1; transform: translateY(0) scale(1); filter: blur(0); }



      }







      @keyframes iconGlow {



        0%, 100% { filter: drop-shadow(0 4px 8px color-mix(in srgb, var(--md-primary) 10%, transparent)); }



        50% { filter: drop-shadow(0 6px 16px color-mix(in srgb, var(--md-primary) 20%, transparent)); }



      }







      .cat-card::before {



        content: '';



        position: absolute;



        inset: 0;



        background: linear-gradient(135deg, rgba(255,255,255,0.5) 0%, transparent 60%);



        border-radius: var(--radius-card);



        pointer-events: none;



        opacity: 0;



        transition: opacity 0.25s;



      }







      .cat-card::after {



        content: '';



        position: absolute;



        top: 0; left: 16px; right: 16px;



        height: 2px;



        background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--md-primary) 35%, transparent), transparent);



        border-radius: 0 0 2px 2px;



        opacity: 0;



        transition: opacity 0.25s;



      }







      .cat-card:hover {



        transform: translateY(-8px) scale(1.04);



        box-shadow: 0 12px 24px color-mix(in srgb, var(--md-primary) 20%, transparent), var(--shadow-hover);



        border-color: color-mix(in srgb, var(--md-primary) 25%, transparent);



        background: linear-gradient(180deg, #fff 0%, #fafaf8 100%);



      }



      .cat-card:hover::before { opacity: 1; }



      .cat-card:hover::after  { opacity: 1; transform: scaleX(1.2); }



      .cat-card:hover .icon-wrap { transform: scale(1.15) rotate(-4deg); filter: drop-shadow(0 8px 16px color-mix(in srgb, var(--md-primary) 25%, transparent)); }



      .cat-card:hover .cat-name { color: var(--md-primary); font-weight: 800; }







      .cat-card:active {



        transform: scale(0.95) !important;



        box-shadow: var(--shadow-card) !important;



        transition-duration: 0.1s;



      }







      /* --- ICON WRAPPER --- */



      .icon-wrap {



        width: 68px;



        height: 68px;



        border-radius: 20px;



        display: flex;



        align-items: center;



        justify-content: center;



        transition: transform 0.35s cubic-bezier(.34,1.56,.64,1), box-shadow 0.3s ease, filter 0.3s ease;



        position: relative;



        flex-shrink: 0;



        box-shadow: 0 4px 12px rgba(0,0,0,0.08);



      }







      .icon-wrap svg {



        width: 54px;



        height: 54px;



        filter: drop-shadow(0 4px 8px rgba(0,0,0,0.12));



      }







      /* --- LABELS --- */



      .cat-name {



        font-family: 'Google Sans', sans-serif;

        font-size: 11px;



        font-weight: 700;



        color: var(--md-on-surface);



        line-height: 1.3;



        transition: color 0.2s;



        letter-spacing: -0.1px;



      }



      .cat-sub {



        font-family: 'Google Sans', sans-serif;

        font-size: 9.5px;



        font-weight: 600;



        color: var(--md-primary);



        opacity: 0.85;



        letter-spacing: 0.2px;



      }







      /* --- ICON BG COLORS --- */



      .bg-orange { background: linear-gradient(145deg, #FFF1E8, #FFE0CC); box-shadow: 0 8px 16px rgba(255,124,0,0.15) inset; }

      .bg-orange:hover { box-shadow: 0 8px 16px rgba(255,124,0,0.25), 0 0 20px rgba(255,124,0,0.15); }



      .bg-green { background: linear-gradient(145deg, #E8F7EE, #CCF0DA); box-shadow: 0 8px 16px rgba(76,175,80,0.15) inset; }

      .bg-green:hover { box-shadow: 0 8px 16px rgba(76,175,80,0.25), 0 0 20px rgba(76,175,80,0.15); }



      .bg-blue { background: linear-gradient(145deg, #E8F0FF, #CDD9FF); box-shadow: 0 8px 16px rgba(33,150,243,0.15) inset; }

      .bg-blue:hover { box-shadow: 0 8px 16px rgba(33,150,243,0.25), 0 0 20px rgba(33,150,243,0.15); }



      .bg-gold { background: linear-gradient(145deg, #FFF7E0, #FFECB0); box-shadow: 0 8px 16px rgba(255,193,7,0.15) inset; }

      .bg-gold:hover { box-shadow: 0 8px 16px rgba(255,193,7,0.25), 0 0 20px rgba(255,193,7,0.15); }



      .bg-red { background: linear-gradient(145deg, #FFECE8, #FFD5CC); box-shadow: 0 8px 16px rgba(239,83,80,0.15) inset; }

      .bg-red:hover { box-shadow: 0 8px 16px rgba(239,83,80,0.25), 0 0 20px rgba(239,83,80,0.15); }



      .bg-teal   { background: linear-gradient(145deg, #E0F7F5, #BDEAE8); }



      .bg-purple { background: linear-gradient(145deg, #F0EAFF, #DDD0FF); }



      .bg-pink   { background: linear-gradient(145deg, #FFE8F5, #FFCCEA); }



      .bg-sage   { background: linear-gradient(145deg, #EAF5E8, #CEEACC); }



      .bg-amber  { background: linear-gradient(145deg, #FFF3E0, #FFE0A0); }



      .bg-cyan   { background: linear-gradient(145deg, #E0F8FF, #B8EDFF); }



      .bg-lime   { background: linear-gradient(145deg, #F0FFE0, #D8F9B0); }



      .bg-berry  { background: linear-gradient(145deg, #F5E8FF, #E8C8FF); }



      .bg-coral  { background: linear-gradient(145deg, #FFE8E8, #FFD0D0); }















      .banner-wrap {







        margin:16px 16px 0 16px; border-radius:var(--radius);







        overflow:hidden; position:relative; height:160px;







      }







      .banner-track {







        display:flex; height:100%; width:100%;







        transition:transform .4s cubic-bezier(.4,0,.2,1);







      }







      .banner-slide {







        flex-shrink:0; width:100%; height:100%;







        position:relative; overflow:hidden;







      }







      .banner-bg {







        position:absolute; inset:0;







        background-size:cover; background-position:center;







      }







      .banner-overlay {







        position:absolute; inset:0;







        background:linear-gradient(135deg, rgba(13,6,0,.72) 0%, rgba(13,6,0,.12) 100%);







      }







      .banner-content {







        position:absolute; inset:0; padding:20px;







        display:flex; flex-direction:column; justify-content:flex-end;







      }







      .banner-eyebrow {







        font-size:10px; font-weight:700; color:rgba(255,255,255,.7);







        letter-spacing:1.5px; text-transform:uppercase; margin-bottom:4px;







      }







      .banner-title {







        font-family:'Google Sans Display', sans-serif;







        font-size:20px; font-weight:700; color:var(--md-on-primary);







        line-height:1.2; margin-bottom:8px;







      }







      .banner-cta {







        display:inline-flex; align-items:center; gap:6px;







        background:var(--md-primary); color:var(--md-on-primary);







        font-size:12px; font-weight:700; padding:7px 14px;







        border-radius:30px; width:fit-content; border:none; cursor:pointer;







      }







      .banner-dots {







        position:absolute; bottom:12px; right:16px;







        display:flex; gap:4px;







      }







      .banner-dot {







        width:6px; height:6px; border-radius:3px;







        background:rgba(255,255,255,.4);







        transition:all .3s; cursor:pointer;







      }







      .banner-dot.active { width:20px; background:white; }































      .greeting-section {







        padding:4px 20px 12px;







        display:flex; align-items:center; justify-content:space-between; gap:12px;







      }







      .greeting-top {







        font-size:13px; color:#111111; font-weight:500; margin-bottom:3px;







        letter-spacing:0.1px;







      }







      .greeting-top[data-greeting]::before {



        display: inline-block;



        margin-right: 8px;



        font-size: 16px;



        vertical-align: middle;



      }











      .greeting-name {







        font-family:'Google Sans Display', sans-serif;







        font-size:28px; font-weight:400; color:#111111;







        letter-spacing:0; line-height:1.2;







      }







      .avatar-wrap {







        width:46px; height:46px; border-radius:50%;







        background-color: white;







        display:flex; align-items:center; justify-content:center;







        color:var(--md-on-primary); font-weight:700; font-size:17px;







        flex-shrink:0; box-shadow:0 2px 8px color-mix(in srgb, var(--md-primary) 35%, transparent);







      }















      .section-header {







        display:flex; align-items:center; justify-content:space-between; flex-basis: 100%; width: 100%; box-sizing: border-box; order: -1; background: transparent; flex-shrink: 0;







        height: 32px;

        margin-bottom: 12px;

        padding:0 20px;







      }







      .section-title {







        font-family:'Google Sans Display', sans-serif;







        font-size:18px; font-weight:600; color:#111111;







        letter-spacing:-0.4px;







      }







      .see-all {







        font-size:14px; font-weight:500; color:#111111;







        border:none; background:none; cursor:pointer;







        padding:6px 12px; border-radius:var(--radius-full);







        transition:background .18s;







      }







      .see-all:active { background:var(--md-primary-container); }















      .cat-scroll {







        display:flex; gap:10px; padding:0 16px 16px;







        overflow-x:auto; scrollbar-width:none;







      }







      .cat-scroll::-webkit-scrollbar { display:none; }







      .cat-chip {







        flex-shrink:0; display:flex; flex-direction:column;







        align-items:center; gap:6px; cursor:pointer;







        width:64px;







      }







      .cat-icon-wrap {







        width:54px; height:54px; border-radius:18px;







        display:flex; align-items:center; justify-content:center;







        background:var(--md-surface-1); transition:all .18s;







      }







      .cat-chip.active .cat-icon-wrap { background:var(--md-primary); color:var(--md-on-primary); border:2px solid rgba(255,255,255,0.5); box-shadow:0 4px 12px color-mix(in srgb, var(--md-primary) 50%, transparent); transform:scale(1.1);







      }







      .cat-chip.active .cat-icon-wrap svg { color:var(--md-on-primary); }







      .cat-label {







        font-size:10px; font-weight:600; color:#111111;







        text-align:center; line-height:1.2;







      }







      .cat-chip.active .cat-label { color:#111111; background:color-mix(in srgb, var(--md-primary) 15%, transparent); padding:2px 6px; border-radius:8px; font-weight:700; }















      .h-scroll {

        display:flex; gap:12px; padding:0 16px 8px;

        overflow-x:auto; scrollbar-width:none;

      }



      .h-scroll::-webkit-scrollbar { display:none; }



      /* =====================================================

         TOP SELLERS CAROUSEL

         ===================================================== */

      .seller-carousel-wrap{

        padding:0 4px 20px;

        overflow:hidden;

      }

      .seller-carousel{

        display:flex;

        gap:12px;

        overflow-x:auto;

        scroll-behavior:smooth;

        padding:8px 12px;

        scroll-snap-type:x mandatory;

        -webkit-overflow-scrolling:touch;

        scrollbar-width:none;

      }

      .seller-carousel::-webkit-scrollbar{display:none;}

      .seller-card{

        position:relative;

        flex:0 0 172px;

        background:var(--md-surface-1);

        border-radius:var(--md-shape-lg);

        border:1px solid var(--md-outline-var);

        overflow:hidden;

        scroll-snap-align:start;

        transition:all var(--md-duration-short) var(--md-easing);

        display:flex;

        flex-direction:column;

        cursor:pointer;

        min-height:0;

      }

      .seller-card:hover{

        border-color:#111111;

        box-shadow:0 4px 12px color-mix(in srgb, var(--md-primary) 15%, transparent);

        transform:translateY(-2px);

      }

      .seller-card-img{

        width:100%;

        height:166px;

        background:linear-gradient(135deg,var(--md-primary-container) 0%,var(--md-surface-2) 100%);

        display:flex;

        align-items:center;

        justify-content:center;

        font-size:48px;

        position:relative;

        overflow:hidden;

      }

      .seller-card-img::before{

        content:'';

        position:absolute;

        inset:0;

        background:repeating-linear-gradient(

          45deg,

          transparent,

          transparent 10px,

          rgba(255,255,255,.05) 10px,

          rgba(255,255,255,.05) 20px

        );

        pointer-events:none;

      }

      .seller-card-badge{

        position:absolute;

        top:6px;

        right:6px;

        background:var(--md-error);

        color:white;

        font-size:11px;

        font-weight:700;

        padding:4px 8px;

        border-radius:var(--md-shape-full);

        letter-spacing:.5px;

      }

      .seller-card-body{

        padding:10px 10px 8px;

        flex:1;

        display:flex;

        flex-direction:column;

        gap:3px;

        min-height:0;

      }

      .seller-card-name{

        font-size:11px;

        font-weight:700;

        color:#111111;

        line-height:1.18;
        margin-bottom:2px;
        display:-webkit-box;

        -webkit-line-clamp:2;

        -webkit-box-orient:vertical;

        overflow:hidden;

      }

      .seller-card-price{

        font-size:12px;

        font-weight:800;

        color:#111111;

      }

      .seller-card-unit{

        font-size:9px;

        color:#111111;

        font-weight:500;

      }

      .seller-card-stock{

        font-size:8px;

        color:var(--md-success);

        font-weight:500;

        line-height:1.1;

      }

      .seller-card-btn{

        margin-top:auto;

        width:100%;

        padding:10px 12px;

        background:var(--md-primary);

        color:white;

        border-radius:999px;

        font-size:12px;

        font-weight:700;

        letter-spacing:0.2px;

        transition:all var(--md-duration-short) var(--md-easing);

        cursor:pointer;

        border:none;

        box-shadow:0 4px 10px color-mix(in srgb, var(--md-primary) 20%, transparent);

      }

      .seller-card-btn:hover{

        background:#C53000;

        transform:translateY(-1px);

      }

      .seller-card-btn:active{

        transform:scale(.98);

      }







      .h-product-card {







        flex-shrink:0; width:148px; background:var(--surface);







        border-radius:var(--radius); overflow:hidden;







        box-shadow:var(--shadow-card); cursor:pointer;







        transition:transform .2s cubic-bezier(.4,0,.2,1), box-shadow .2s;







        border:1px solid rgba(0,0,0,0.04);







      }







      .h-product-card:active { transform:scale(.96); box-shadow:none; }







      .h-img-wrap {







        width:100%; height:118px; background:var(--md-surface-1);







        overflow:hidden;







      }







      .h-img-wrap img {







        width:100%; height:100%; object-fit:cover;







        transition:transform .3s cubic-bezier(.4,0,.2,1);







      }







      .h-product-card:hover .h-img-wrap img { transform:scale(1.05); }







      .h-info { padding:10px 12px 12px; }







      .h-name {







        font-size:14px; font-weight:600; color:#111111; margin-bottom:3px; line-height:1.3;







        display:-webkit-box; -webkit-line-clamp:2;







        -webkit-box-orient:vertical; overflow:hidden;







      }







      .h-price {







        font-family:'Google Sans Display', sans-serif;







        font-size:14px; font-weight:700; color: inherit;







      }















      .btn-primary {







        width:100%; height:52px; border-radius:var(--radius-full);







        background:var(--md-primary); color:var(--md-on-primary); border:none;







        font-family:'Google Sans', sans-serif;







        font-size:15px; font-weight:700; cursor:pointer;







        display:flex; align-items:center; justify-content:center; gap:8px;







        transition:background .18s, transform .12s cubic-bezier(.4,0,.2,1), box-shadow .18s;







        letter-spacing:0.2px;







        box-shadow:0 2px 12px color-mix(in srgb, var(--md-primary) 30%, transparent);







      }







      .btn-primary:active { background:var(--md-primary); transform:scale(.98); box-shadow:none; }















      .form-group { margin-bottom:14px; }







      .form-label {







        font-size:12px; font-weight:700; color:#111111;







        text-transform:uppercase; letter-spacing:0.8px;







        margin-bottom:6px; display:block;







      }







      .form-input {







        width:100%; height:52px; border-radius:14px;







        border:1.5px solid var(--border); background:var(--md-surface);







        padding:0 16px; outline:none;







        font-family:'Google Sans', sans-serif;







        font-size:15px; color:#111111;







        transition:border-color .18s;







      }







      .form-input:focus { border-color:#111111; }







      .form-input::placeholder { color:#111111; font-size:14px; }







      .form-hint { font-size:11px; color:#111111; margin-top:5px; }















      .home-stats {







        display:flex; gap:8px; padding:4px 16px 18px;







        overflow-x:auto; scrollbar-width:none;







      }







      .home-stats::-webkit-scrollbar { display:none; }







      .stat-chip {







        flex-shrink:0; display:flex; align-items:center; gap:7px;







        background:var(--surface-2); border:1px solid var(--border);







        border-radius:var(--radius-full); padding:5px 14px;







        white-space:nowrap;







      }







      .stat-chip-val {







        font-family:'Google Sans Display', sans-serif;







        font-size:14px; font-weight:700; color:#111111;







      }







      .stat-chip-label { font-size:12px; color:#111111; font-weight:500; }















      /* DELIVERY STRIP */
      .delivery-strip {
        background: var(--md-surface-2);
        border-radius: var(--md-shape-xl);
        margin: 8px 16px 14px;
        padding: 10px 12px;
        display: flex;
        align-items: center;
        gap: 10px;
        border: 1px solid var(--md-outline-var);
      }
      .delivery-icon {
        width: 36px;
        height: 36px;
        border-radius: var(--md-shape-md);
        background: var(--md-primary-container);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 18px;
        flex-shrink: 0;
      }
      .delivery-info {
        flex: 1;
      }
      .delivery-title {
        font-size: 12px;
        font-weight: 500;
        color: var(--md-on-surface);
      }
      .delivery-title strong {
        font-weight: 600;
      }
      .delivery-sub {
        font-size: 12px;
        color: var(--md-on-surface-var);
        margin-top: 1px;
      }
      .delivery-badge {
        font-family: var(--font-display);
        font-size: 11px;
        font-weight: 700;
        color: var(--md-primary);
        background: var(--md-primary-container);
        padding: 6px 10px;
        border-radius: 8px;
        white-space: nowrap;
        flex-shrink: 0;
      }

      .info-box {







        display:flex; align-items:center; gap:12px;







        background:var(--md-primary-container); border-radius:var(--radius-sm);







        padding:12px 16px; margin:0 16px 14px;







        border:1px solid color-mix(in srgb, var(--md-primary) 12%, transparent);







      }







      .info-box-text { font-size:13px; color:#111111; line-height:1.5; }







      .info-box-text strong { color:#111111; font-weight:700; }















      .feat-wrap { padding:0 12px 14px; flex-shrink:0; }







      .feat-header { display:flex; align-items:center; justify-content:space-between; padding:20px 16px 12px; }







      .see-all { background:transparent; border:none; color:#111111; font-size:13px; font-weight:700; cursor:pointer; padding:0; transition:all 0.2s; }







      .see-all:hover { color:var(--orange-dark); }







      .h-scroll { display:flex; gap:12px; padding:0 16px 4px; overflow-x:auto; scrollbar-width:none; }







      .h-scroll::-webkit-scrollbar { display:none; }







      .h-product-card { flex-shrink:0; width:150px; background:var(--md-surface); border-radius:12px; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,0.1); cursor:pointer; transition:transform 0.18s; }







      .h-product-card:hover { transform:translateY(-2px); box-shadow:0 2px 8px rgba(0,0,0,0.15); }







      .h-img-wrap { width:100%; height:120px; background:var(--md-surface-1); overflow:hidden; }







      .h-img-wrap img { width:100%; height:100%; object-fit:cover; }







      .h-info { padding:10px; }







      .h-name { font-size:13px; font-weight:500; color:#111111; margin-bottom:4px; line-height:1.35; letter-spacing:0.1px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }







      .h-price { font-family:'Google Sans Display', sans-serif; font-size:15px; font-weight:700; color: inherit; letter-spacing:0; }
@keyframes cardIn {







        from { opacity:0; transform:translateY(14px); }







        to   { opacity:1; transform:translateY(0); }







      }







      .product-card { animation:cardIn .32s cubic-bezier(.4,0,.2,1) both; }







      .h-product-card { animation:cardIn .28s cubic-bezier(.4,0,.2,1) both; }















      /* ========== CATEGORY PAGE STYLES ========== */







      .cat-page-topbar {







        height:var(--header-h); padding:0 12px 0 16px;







        display:flex; align-items:center; gap:12px;







        background:var(--md-surface); flex-shrink:0;







        position:relative; z-index:10;







      }







      .cat-page-title {







        font-family: 'Instrument Serif', serif;



        font-style: italic;



        font-size:20px; font-weight:700; color:#111111;







        flex:1; letter-spacing:-0.3px;







      }







      .back-btn {







        width:44px; height:44px; border-radius:50%;







        background:none; border:none; cursor:pointer;







        display:flex; align-items:center; justify-content:center;







        color:#111111; transition:background .15s;







      }







      .back-btn:active { background:var(--md-surface-1); }







      .back-btn svg { width:22px; height:22px; stroke-width:2.5; }















      .cat-search-wrap {







        padding:12px 16px 10px; flex-shrink:0;







        background:var(--md-surface); position:relative; z-index:9;







      }







      /* Material Design 3 Search Button in Header */



      #cat-search-toggle-btn {



        width:48px;height:48px;border-radius:50%;background:transparent;color:var(--md-on-primary);transition:all .28s cubic-bezier(.4,0,.2,1);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;



      }



      #cat-search-toggle-btn:hover{transform:scale(1.15);background:rgba(255,255,255,0.1);}



      #cat-search-toggle-btn:active{transform:scale(0.9);}







      /* Search Container - Material Design 3 */







      #cat-search-container.psearch {



        display:none !important;padding:12px 16px;background:#f9f9f9;border-bottom:1px solid #e8e8e8;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none;visibility:hidden !important;height:0 !important;transition:all .2s;



      }



      #cat-search-container.psearch.active {



        display:flex !important;visibility:visible !important;height:auto !important;



      }







      #cat-search-inp {



        flex:1;border:none;background:none;outline:none;font-size:16px;color:#111111;font-family:inherit;



      }



      #cat-search-inp::placeholder{color:#111111;font-weight:500;}







      .psearch-ic{width:20px;height:20px;color:#111111;display:flex;align-items:center;justify-content:center;flex-shrink:0;}



      .psearch-ic svg{width:100%;height:100%;stroke:currentColor;}







      .cat-filter-chips {







        display:flex; gap:8px; padding:0 14px 12px;







        overflow-x:auto; scrollbar-width:none;







        flex-shrink:0; background:var(--md-surface);







        position:relative; z-index:8;







      }







      .cat-filter-chips::-webkit-scrollbar { display:none; }







      .filter-chip {







        flex-shrink:0; height:36px; padding:0 14px; display:inline-flex; align-items:center;







        border-radius:var(--radius-full);







        background:var(--md-surface-1); border:1.5px solid transparent;







        font-size:13px; font-weight:600; color:#111111;







        cursor:pointer; transition:all .18s cubic-bezier(.4,0,.2,1);







        white-space:nowrap;







      }







      .filter-chip:active { transform:scale(.94); }







      .filter-chip.active {







        background:var(--md-primary); color:var(--md-on-primary); border-color:#111111;







        box-shadow:0 2px 8px color-mix(in srgb, var(--md-primary) 30%, transparent);







      }















      .cat-products-grid {







        display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px;







        padding:16px 16px 120px 16px; animation:fadeIn .3s cubic-bezier(.4,0,.2,1);







      }







      .pgrid {



        display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px;



      }







      @keyframes fadeIn { from { opacity:0; } to { opacity:1; } }















      .floating-cart-btn {







        position:absolute; bottom:100px; left:50%; transform:translateX(-50%);







        padding:12px 20px; height:52px;







        background:var(--md-primary); color:var(--md-on-primary);







        border-radius:var(--radius-full); border:none;







        font-size:14px; font-weight:700; cursor:pointer;







        box-shadow:0 4px 16px color-mix(in srgb, var(--md-primary) 40%, transparent);







        display:flex; align-items:center; gap:16px;







        z-index:20; transition:all .2s cubic-bezier(.4,0,.2,1);







        letter-spacing:0.2px;







      }







      .floating-cart-btn:hover { box-shadow:0 6px 20px color-mix(in srgb, var(--md-primary) 50%, transparent); }







      .floating-cart-btn:active { transform:translateX(-50%) scale(.95); }







      .cart-badge-float {







        min-width:20px; height:20px;







        background:rgba(255,255,255,.3); border-radius:10px;







        font-size:11px; font-weight:700;







        display:flex; align-items:center; justify-content:center;







        padding:0 5px;







      }















      /* ===== CATEGORY PAGE STYLES ===== */







      #sc-category {







        background:#fafafa;







        overflow:hidden;







        display:flex;







        flex-direction:column;







      }















      #sc-category .top-bar {







        display:none;







        align-items:center;







        justify-content:space-between;







        padding:12px 16px;







        background:white;







        border-bottom:1px solid rgba(0,0,0,.04);







        backdrop-filter:blur(20px);







      }

      #sc-category .tbar.dark {

        background:transparent;

      }

      #sc-catpage .tbar.dark {

        background:transparent;

      }

      #sc-catpage .ibtn.w {

        color:#111111 !important;

      }

      #sc-catpage .ibtn.w:hover {

        background:rgba(0,0,0,.08);

      }

      #sc-catpage .tbar-left {

        color:#111111 !important;

      }

      #sc-catpage .cat-title, #sc-category .cat-title {

        color:#111111 !important;

      }

      #sc-catpage .icon-btn svg, #sc-category .icon-btn svg {

        stroke:var(--md-on-surface) !important;

        fill:var(--md-on-surface) !important;

      }



      #sc-catpage .tbar.dark, #sc-category .top-bar {

        color:#111111 !important;

      }



      #sc-catpage .tbar.dark .ep-name, #sc-category .top-bar .ep-name {

        color:#111111 !important;

      }



      #sc-catpage .tbar.dark svg, #sc-category .top-bar svg {

        stroke:var(--md-on-surface) !important;

        fill:var(--md-on-surface) !important;

        color:#111111 !important;

      }



      #sc-catpage .tbar.dark, #sc-category .top-bar, #sc-catpage .tbar.dark * , #sc-category .top-bar * {

        color:#111111 !important;

        -webkit-text-fill-color:#111111 !important;

      }



















      #sc-category .top-bar-left {







        display:flex;







        align-items:center;







        gap:16px;







      }















      #sc-category .back-btn {







        background:transparent;







        border:none;







        width:44px; height:44px;







        border-radius:50%;







        display:flex;







        align-items:center;







        justify-content:center;







        cursor:pointer;







        font-size:20px;







        color:#111111;







        transition:all .2s cubic-bezier(.4,0,.2,1);







        -webkit-tap-highlight-color:transparent;







      }















      #sc-category .back-btn:active {







        background: var(--md-surface-1);







        transform:scale(.95);







      }















      #sc-category .cat-title {







        font-size:18px;







        font-weight:700;







        color:#111111;







        flex:1;







        letter-spacing:-0.3px;







      }















      #sc-category .top-bar-icons {







        display:flex;







        gap:4px;







      }















      #sc-category .icon-btn {







        width:44px; height:44px;







        background:transparent;







        border:none;







        display:flex;







        align-items:center;







        justify-content:center;







        cursor:pointer;







        color:#111111;







        font-size:20px;







        border-radius:50%;







        transition:all .2s cubic-bezier(.4,0,.2,1);







        -webkit-tap-highlight-color:transparent;







      }















      #sc-category .icon-btn:active {







        background:rgba(28,20,16,.08);







        transform:scale(.95);







      }















      /* Filter chips - Modern 2025 Design */







      #sc-category .filter-section {







        background:white;







        padding:12px 16px;







        border-bottom:1px solid rgba(0,0,0,.04);







        overflow-x:auto;







        overflow-y:hidden;







        -webkit-overflow-scrolling:touch;







        display:flex;







        gap:10px;







        scrollbar-width:none;







      }















      #sc-category .filter-section::-webkit-scrollbar {







        display:none;







      }















      #sc-category .filter-section::-webkit-scrollbar-thumb {







        background:#ddd;







        border-radius:2px;







      }















      #sc-category .cat-filter-chip {







        background:#FDF8F4;







        border:1px solid var(--md-outline-variant);







        color:#111111;







        padding:10px 16px;







        border-radius:24px;







        font-size:13px;







        font-weight:600;







        white-space:nowrap;







        cursor:pointer;







        flex-shrink:0;







        transition:all .2s cubic-bezier(.4,0,.2,1);







        -webkit-tap-highlight-color:transparent;







      }















      #sc-category .cat-filter-chip:hover {







        background:#F5F0EB;







        transform:translateY(-1px);







      }















      #sc-category .cat-filter-chip:active {







        transform:scale(.96);







      }















      #sc-category .cat-filter-chip.active {







        background:var(--md-primary);







        color:var(--md-on-primary);







        border-color:#111111;







        box-shadow:0 4px 12px color-mix(in srgb, var(--md-primary) 30%, transparent);







      }















      /* Subcategory filter buttons - Pill Style (matching Products page) */



      .subcategory-btn {
        flex-shrink:0; height:32px; padding:0 16px;
        border-radius:var(--radius-full);
        background:var(--md-primary-container); border:1px solid var(--md-outline-var);
        font-size:14px; font-weight:500; color:#111111;
        cursor:pointer; transition:all .18s cubic-bezier(.4,0,.2,1);
        white-space:nowrap;
      }







      .subcategory-btn:active {



        transform:scale(0.95);



      }



      .subcategory-btn.active {
        background:var(--md-primary); color:var(--md-on-primary); border-color:#111111;
      }













































      .products-grid-icon {



        display:inline-flex;



        align-items:center;



        justify-content:center;



        width:24px;



        height:24px;



        background:url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="2" y="2" width="8" height="8" fill="none" stroke="%23FF6B00" stroke-width="1.5"/><rect x="14" y="2" width="8" height="8" fill="none" stroke="%23FF6B00" stroke-width="1.5"/><rect x="2" y="14" width="8" height="8" fill="none" stroke="%23FF6B00" stroke-width="1.5"/><rect x="14" y="14" width="8" height="8" fill="none" stroke="%23FF6B00" stroke-width="1.5"/></svg>') no-repeat center;



        background-size:16px 16px;



      }







      .products-grid-icon::before {



        content:'';



      }



        width:20px;



        height:20px;



      }















      /* Product grid - Modern 2025 Layout */







      #sc-category .cat-scroll-area {







        flex:1;







        overflow-y:auto;







        -webkit-overflow-scrolling:touch;







        padding:16px 0;







      }















      #sc-category #cat-products-grid {







        display:grid;







        grid-template-columns:repeat(2, minmax(0, 1fr));







        gap:14px;







        padding:0 12px;







        margin-bottom:20px;







        animation:fadeInScale .4s cubic-bezier(.4,0,.2,1);







      }















      @keyframes fadeInScale {







        from {







          opacity:0;







          transform:scale(.98);







        }







        to {







          opacity:1;







          transform:scale(1);







        }







      }















      #sc-category .product-card {







        background:white;







        border-radius:20px;







        overflow:hidden;







        box-shadow:0 1px 3px rgba(0,0,0,.08);







        display:flex;







        flex-direction:column;







        cursor:pointer;







        transition:all .25s cubic-bezier(.4,0,.2,1);







        border:1px solid rgba(0,0,0,.04);







      }















      #sc-category .product-card:hover {







        box-shadow:0 8px 24px rgba(0,0,0,.12);







        transform:translateY(-4px);







      }















      #sc-category .product-card:active {







        transform:translateY(-2px) scale(.98);







        box-shadow:0 4px 12px rgba(0,0,0,.1);







      }















      #sc-category .product-img-wrap {







        width:100%;







        height:140px;







        background:linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 100%);







        display:flex;







        align-items:center;







        justify-content:center;







        overflow:hidden;







        position:relative;







      }















      #sc-category .product-img {







        width:100%;







        height:100%;







        object-fit:cover;







        transition:transform .3s cubic-bezier(.4,0,.2,1);







      }















      #sc-category .product-card:hover .product-img {







        transform:scale(1.08);







      }















      #sc-category .tag-badge {







        position:absolute;







        top:8px;







        right:8px;







        background:var(--md-primary);







        color:var(--md-on-primary);







        padding:6px 10px;







        border-radius:8px;







        font-size:11px;







        font-weight:700;







        text-transform:uppercase;







        z-index:2;







        box-shadow:0 2px 8px color-mix(in srgb, var(--md-primary) 30%, transparent);







        letter-spacing:0.3px;







      }















      #sc-category .product-info { padding:12px; background:#FFF8F6; }















      #sc-category .product-name {







        font-size:14px;







        font-weight:700;







        color:#111111;







        line-height:1.4;







        display:-webkit-box;







        -webkit-line-clamp:2;







        -webkit-box-orient:vertical;







        overflow:hidden;







        letter-spacing:-0.3px; background:#F5D7B8; padding:6px 8px; border-radius:4px;







      }















      #sc-category .product-sub {







        font-size:12px;







        color:#888;







        font-weight:500;







        line-height:1.3; background:#F5F0EB; padding:4px 6px; border-radius:3px;







      }















      #sc-category .product-row {







        display:flex;







        justify-content:space-between;







        align-items:center;







        margin-top:auto;







        gap:8px;







        padding-top:8px;







      }















      #sc-category .product-price {







        font-size:20px;







        font-weight:700;







        color:#111111; background:#FDF8F4; padding:6px 8px; border-radius:4px; border-left:3px solid var(--md-primary);







        letter-spacing:-0.2px;







      }















      #sc-category .add-btn {







        background:var(--md-primary);







        border:none;







        color:var(--md-on-primary);







        width:36px; height:36px;







        border-radius:12px;







        display:flex;







        align-items:center;







        justify-content:center;







        cursor:pointer;







        font-size:18px;







        transition:all .2s cubic-bezier(.4,0,.2,1);







        -webkit-tap-highlight-color:transparent;







        box-shadow:0 2px 8px color-mix(in srgb, var(--md-primary) 25%, transparent);







      }















      #sc-category .add-btn:hover {







        background:#ff7020;







        box-shadow:0 4px 12px color-mix(in srgb, var(--md-primary) 40%, transparent);







        transform:scale(1.05);







      }















      #sc-category .add-btn:active {







        background:var(--md-primary);







        transform:scale(.95);







        box-shadow:0 2px 4px color-mix(in srgb, var(--md-primary) 30%, transparent);







      }















      /* Floating cart button - Modern 2025 */







      #sc-category .cat-floating-cart {







        position:absolute;







        bottom:calc(var(--nav-h) + 16px);







        left:50%;







        transform:translateX(-50%);







        background:var(--md-primary);







        color:var(--md-on-primary);







        border:none;







        padding:14px 28px;







        border-radius:24px;







        font-size:14px;







        font-weight:700;







        cursor:pointer;







        box-shadow:0 10px 32px color-mix(in srgb, var(--md-primary) 40%, transparent);







        transition:all .3s cubic-bezier(.4,0,.2,1);







        z-index:50;







        white-space:nowrap;







        -webkit-tap-highlight-color:transparent;







        display:flex;







        align-items:center;







        gap:8px;







      }















      #sc-category .cat-floating-cart:hover {







        box-shadow:0 12px 40px color-mix(in srgb, var(--md-primary) 50%, transparent);







        transform:translateX(-50%) translateY(-2px);







      }















      #sc-category .cat-floating-cart:active {







        transform:translateX(-50%) scale(.96);







        box-shadow:0 6px 20px color-mix(in srgb, var(--md-primary) 30%, transparent);







      }















      #sc-category .cat-floating-cart .cart-count {







        font-weight:700;







        background:rgba(255,255,255,.3);







        padding:2px 8px;







        border-radius:10px;







        min-width:20px;







        text-align:center;







        font-size:12px;







      }















      /* DETAIL PAGE CSS FROM OLD CODE */







      .detail-header{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;background:#1A0A00;border-bottom:none;height:56px;}







      .detail-back{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(255,255,255,0.1);color:#111111;cursor:pointer;transition:all 0.2s ease;font-weight:700;border:none;}







      .detail-back:hover{background:var(--md-primary);color:var(--md-on-primary);}







      .detail-header-title{font-size:16px;font-weight:800;color:#111111;flex:1;text-align:center;letter-spacing:-0.3px;}







      .help-circle{width:36px;height:36px;border-radius:50%;background:var(--md-primary);color:var(--md-on-primary);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;cursor:pointer;}







      .detail-body{background:var(--md-surface);flex:1;overflow-y:auto;display:flex;flex-direction:column;padding:20px 16px 100px;}







      /* Material Design 3 Product Detail */



      .detail-img-wrap{background:linear-gradient(135deg, var(--md-surface) 0%, var(--md-surface-1) 100%);display:flex;align-items:center;justify-content:center;padding:40px 16px;min-height:420px;border-bottom:none;}



      .detail-img-wrap img{width:100%;max-width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:24px;box-shadow:0 12px 40px rgba(0,0,0,0.12);transition:transform 0.3s cubic-bezier(.4,0,.2,1);}



      .detail-img-wrap:hover img{transform:scale(1.02);}







      /* Product Info Tabs */



      .detail-tabs{display:flex;flex-direction:column;gap:0;border-left:3px solid #f0f0f0;padding:0;overflow-x:auto;scrollbar-width:none;}



      .detail-tab{padding:16px 12px;font-size:14px;font-weight:600;color:#111111;cursor:pointer;border-left:3px solid transparent;margin-left:-3px;transition:all .2s;white-space:normal;flex-shrink:0;}



      .detail-tab.active{color:#111111;border-left-color:#111111;}



      .detail-tab:hover{color:#111111;}



      .detail-tab:nth-child(2){display:none;}







      .detail-tab-content{display:none;padding:24px 20px 120px;animation:fadeIn .2s;}



      .detail-tab-content.active{display:block;}



      #specs-tab{display:none !important;}







      .detail-info{padding:28px 20px 110px;color:#111111;}







      .det-cat{font-size:14px;font-weight:600;color:#111111;text-transform:none;letter-spacing:0;margin-bottom:8px;opacity:1;text-align:center;}







      .det-name{font-size:28px;font-weight:800;color:#111111;margin-bottom:14px;line-height:1.2;letter-spacing:-0.5px; background:var(--md-surface-1); padding:12px 16px; border-radius:8px;}







      .det-unit{font-size:14px;color:#111111;text-transform:none;letter-spacing:0;margin-bottom:4px;font-weight:600; background:#F5F0EB; padding:6px 10px; border-radius:4px; display:inline-block;}







      .det-price{font-size:32px;font-weight:900;color:#111111;background:#F5D7B8;margin-bottom:24px;margin-top:6px; padding:12px 16px; border-radius:8px; display:inline-block; border-left:4px solid var(--md-primary);}







      .det-specs{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:20px;margin-top:16px;}







      .spec{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(26,10,0,0.1);}







      .spec-l{font-weight:700;color:#111111;font-size:13px;}







      .spec-v{color:#111111;font-size:13px;font-weight:500;}







      .sim-section{margin-top:32px;padding-top:24px;border-top:1px solid rgba(26,10,0,0.1);}







      .sim-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}







      .sim-title{font-size:16px;font-weight:800;color:#111111;margin:0;}







      .sim-count{background:rgba(255,140,0,0.12);color:#111111;font-size:12px;font-weight:700;padding:4px 12px;border-radius:20px;}







      .sim-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:32px;}







      .sim-card{background:var(--md-surface-1);border:1px solid rgba(26,10,0,0.08);border-radius:12px;padding:14px;text-align:center;cursor:pointer;transition:all 0.2s ease;}







      .sim-card:hover{background:var(--md-surface);border-color:#111111;transform:translateY(-2px);box-shadow:0 4px 12px rgba(255,140,0,0.1);}







      .sim-name{font-size:13px;font-weight:700;color:#111111;line-height:1.3;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}







      .sim-unit{font-size:10px;color:#111111;text-transform:uppercase;letter-spacing:0.3px;margin-bottom:8px;font-weight:600;}







      .sim-img{width:100%;aspect-ratio:1;background:var(--md-surface-1);border-radius:8px;overflow:hidden;margin-bottom:8px;}







      .sim-img img{width:100%;height:100%;object-fit:cover;}







      .sim-price{font-size:16px;font-weight:800;color:#111111;margin-bottom:4px;}







      .detail-footer{position:absolute;bottom:0;left:0;right:0;width:100%;max-width: min(430px, 100vw);background:linear-gradient(to bottom, rgba(255,248,246,0.98), rgba(255,248,246,1));padding:14px 16px 20px;border-top:1px solid rgba(26,10,0,0.08);display:flex;align-items:center;gap:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -4px 16px rgba(0,0,0,0.06);}







      .detail-qty-ctrl{display:flex;align-items:center;border:2px solid var(--md-primary);border-radius:10px;overflow:hidden;background:rgba(255,140,0,0.05);}







      .detail-qty-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;color:#111111;transition:all 0.2s ease;user-select:none;background:none;border:none;cursor:pointer;}







      .detail-qty-btn:active{background:rgba(255,140,0,0.1);-webkit-user-select:none;user-select:none;}







      .detail-qty-num{min-width:40px;text-align:center;font-size:16px;font-weight:700;color:#111111;}







      @keyframes button-press {







        0% { transform: scale(1); }







        50% { transform: scale(0.96); }







        100% { transform: scale(1); }







      }







      .detail-add-cart{flex:1;background:linear-gradient(135deg, var(--md-primary) 0%, var(--md-primary-dark) 100%);color:var(--md-on-primary);border-radius:10px;padding:14px;font-weight:800;font-size:15px;cursor:pointer;border:none;text-align:center;box-shadow:0 10px 24px color-mix(in srgb, var(--md-primary) 24%, transparent);transition:all 0.3s ease;}







      .detail-add-cart: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);transform:translateY(-1px);}







      .detail-add-cart:active{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 2px 8px color-mix(in srgb, var(--md-primary) 20%, transparent);transform:scale(0.98);}







      .scroll-body{flex:1;overflow-y:auto;}

      /* M3 Detail View Complete Styles */
      .detail-img-area{
        position:relative;
        width:100%;
        height:280px;
        overflow:hidden;
        background:linear-gradient(135deg, var(--md-surface) 0%, var(--md-surface-1) 100%);
        display:flex;
        align-items:center;
        justify-content:center;
        padding:0;
      }
      .detail-carousel-track{
        display:flex;
        width:100%;
        height:100%;
        transition:transform .35s cubic-bezier(.4,0,.2,1);
      }
      .detail-carousel-slide{
        flex:0 0 100%;
        width:100%;
        height:100%;
        display:flex;
        align-items:center;
        justify-content:center;
        position:relative;
        overflow:hidden;
        padding:0 24px;
        box-sizing:border-box;
      }
      .detail-carousel-media{
        position:relative;
        width:fit-content;
        height:100%;
      }
      .detail-carousel-slide img{
        width:auto;
        max-width:210px;
        height:100%;
        object-fit:contain;
        object-position:center;
        display:block;
        margin:0 auto;
        filter:drop-shadow(0 8px 24px rgba(0,0,0,0.16));
        transition:transform 0.3s cubic-bezier(.4,0,.2,1);
      }
      .detail-carousel-dots{
        position:absolute;
        bottom:12px;
        left:0;right:0;
        display:flex;
        justify-content:center;
        gap:6px;
      }
      .detail-dot{
        width:7px;height:7px;border-radius:50%;
        background:rgba(0,0,0,.25);
        cursor:pointer;
        transition:all .2s;
      }
      .detail-dot.active{
        background:var(--md-primary);
        width:18px;
        border-radius:4px;
      }
      .detail-cat-btn{
        display:inline-flex;align-items:center;gap:6px;
        background:var(--md-primary-container);
        color:var(--md-primary);
        border:none;border-radius:100px;
        padding:10px 18px;
        font-size:13px;font-weight:700;
        cursor:pointer;margin:8px 0 4px;
      }
      .detail-section-label{
        font-size:15px;font-weight:700;color:#0d0600;
        margin:20px 0 10px;padding:0 16px;
      }
      .detail-share-btn{
        position:absolute;top:12px;right:12px;
      }
      .detail-content{
        background:var(--md-surface);
        flex:1;padding:0 16px 100px;
      }
      #screen-detail, #screen-detail *{
        font-family:'Google Sans',Roboto,sans-serif !important;
        font-style:normal !important;
      }
      .detail-cat-chip{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;padding:5px 12px;border-radius:999px;background:var(--md-primary-container);color:var(--md-on-primary-container);}
      .detail-title{font-family:var(--font-display);font-size:20px;font-weight:500;color:var(--md-on-surface);line-height:1.3;letter-spacing:.15px;}
      .detail-unit{font-size:12px;font-weight:600;color:var(--md-on-surface-variant);text-transform:uppercase;letter-spacing:.6px;}
      .detail-price-big{font-family:var(--font-display);font-size:30px;font-weight:700;color:var(--md-primary);letter-spacing:-.5px;line-height:1;}
      .detail-price-panel{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0 8px;}
      .detail-description{font-size:14px;color:#111111;line-height:1.7;margin-bottom:16px;max-width:720px;}
      .detail-divider{height:1px;background:var(--md-outline-var);margin:4px 0;}
      .detail-spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:6px;}
      .spec-card{background:var(--md-surface-2);border-radius:20px;padding:16px;box-shadow:0 10px 24px rgba(22,28,45,0.06);}
      .spec-label{font-size:11px;color:#5B5B5B;text-transform:uppercase;letter-spacing:.16em;margin-bottom:8px;font-weight:700;}
      .spec-val{font-size:14px;font-weight:700;color:#111111;line-height:1.5;}
      .spec-note{display:block;margin-top:8px;font-size:12px;color:#6B7280;font-weight:400;line-height:1.5;}
      .detail-section-label{font-size:15px;font-weight:700;color:#0d0600;margin:0 0 12px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;}
      .detail-cat-btn{display:inline-flex;align-items:center;gap:8px;background:rgba(79,127,244,.1);color:#1D3F7F;border:none;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:700;cursor:pointer;margin:0;}
      .detail-cat-btn:hover{background:rgba(79,127,244,.2);}
      .detail-stock-pill{display:inline-flex;align-items:center;gap:8px;background:#FFEBEE;color:#B71C1C;font-size:12px;font-weight:700;padding:8px 14px;border-radius:999px;margin-bottom:16px;}
      .detail-stock-icon{width:16px;height:16px;flex-shrink:0;}
      .detail-content{background:var(--md-surface);flex:1;padding:0 16px 100px;}
      .detail-cat-chip{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;padding:6px 14px;border-radius:999px;background:rgba(79,127,244,.12);color:#1D3F7F;display:inline-flex;margin-bottom:12px;}
      .detail-cat-chip.beverages{background:rgba(192,92,0,.12);color:#c05c00;}
      .detail-cat-chip.dairy-tea{background:rgba(10,122,104,.12);color:#0a7a68;}
      .detail-cat-chip.maize-flour{background:rgba(184,74,0,.12);color:#b84a00;}
      .detail-cat-chip.rice-grains{background:rgba(154,98,0,.12);color:#9a6200;}
      .detail-cat-chip.noodles{background:rgba(160,24,24,.12);color:#a01818;}
      .detail-cat-chip.oil-fats{background:rgba(42,122,42,.12);color:#2a7a2a;}
      .detail-cat-chip.spreads-condiments{background:rgba(140,90,0,.12);color:#8c5a00;}
      .detail-cat-chip.sugar{background:rgba(122,85,0,.12);color:#7a5500;}
      .detail-cat-chip.snacks{background:rgba(92,26,154,.12);color:#5c1a9a;}
      .detail-cat-chip.cleaning-supplies{background:rgba(10,122,104,.12);color:#0a7a68;}
      .detail-cat-chip.household-supplies{background:rgba(26,79,160,.12);color:#1a4fa0;}
      .detail-cat-chip.personal-care{background:rgba(140,26,90,.12);color:#8c1a5a;}
      .detail-cat-chip.stationery{background:rgba(26,58,122,.12);color:#1a3a7a;}
      .detail-cat-chip.beauty{background:rgba(140,26,90,.12);color:#8c1a5a;}
      .detail-cat-chip.general{background:rgba(140,26,90,.12);color:#8c1a5a;}
      .detail-title{font-family:var(--font-display);font-size:26px;font-weight:700;color:#111111;line-height:1.18;letter-spacing:0.01em;margin-bottom:12px;}
      .detail-unit{font-size:13px;font-weight:600;color:#475569;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;}
      .prod-unit-m3{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0;}
      .prod-unit-m3 span{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;background:rgba(79,127,244,.12);border:1px solid rgba(79,127,244,.18);color:#1D3F7F;font-size:12px;font-weight:700;letter-spacing:.02em;white-space:nowrap;}
      .detail-price-panel .prod-badge-savings-flat{margin-top:0;}
      .detail-price-panel .prod-badge-savings-flat span{font-size:12px;}
      .detail-price-panel .prod-price-m3{font-size:30px;}
      .detail-description{max-width:740px;}
      .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);
      }
      .detail-bottom-bar .btn-filled{flex:1;}
      .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);}
      .btn-filled{
        flex:1;height:52px;border-radius:999px;background:#ff4d00;color:#fff;
        font-size:15px;font-weight:700;letter-spacing:.2px;
        display:flex;align-items:center;justify-content:center;gap:8px;
        box-shadow:0 4px 14px rgba(255,77,0,.35);border:none;
      }
      .btn-filled svg{width:18px;height:18px;fill:#fff;}
      .btn-filled:active{transform:scale(.98);}
      .btn-tonal{
        height:44px;
        background:var(--md-secondary-cont);
        color:#111111;
        border-radius:var(--md-shape-full);
        font-size:14px;font-weight:600;
        padding:0 20px;
        display:flex;align-items:center;gap:6px;
      }

      /* =====================================================



         CART



         ===================================================== */



      /* =====================================================



         CART - M3 Style



         ===================================================== */






        display:flex;gap:12px;



        padding:14px 16px;



        background:var(--md-surface-1);



        border-radius:var(--md-shape-lg);



        margin:0 16px 10px;



        box-shadow:0 1px 3px rgba(0,0,0,.08);



        position:relative;



      }



      .cart-img-m3{



        width:72px;height:72px;



        background:var(--md-surface-3);



        border-radius:var(--md-shape-md);



        display:flex;align-items:center;justify-content:center;



        font-size:38px;flex-shrink:0;overflow:hidden;



      }



      .cart-img-m3 img{width:60px;height:60px;object-fit:contain;}



      .cart-info-m3{flex:1;}



      .cart-name-m3{font-size:13px;font-weight:500;color:#111111;margin-bottom:2px;line-height:1.35;}



      .cart-unit-m3{font-size:11px;color:#111111;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;}
      .cart-unit-m3 .price-currency{color:var(--md-primary) !important;font-weight:600;}
      .cart-unit-m3 .price-num{color:#000000 !important;font-weight:400;}



      .cart-bottom-row{display:flex;align-items:center;justify-content:space-between;}



      .cart-qty-m3{display:flex;align-items:center;border:1.5px solid var(--md-outline-var);border-radius:var(--md-shape-full);overflow:hidden;height:32px;}



      .cq-btn{width:32px;height:100%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#111111;}



      .cq-num{min-width:28px;text-align:center;font-size:13px;font-weight:700;color:#111111;}



      .cart-price-m3{font-family:var(--font-display);font-size:var(--text-base);font-weight:400;color:#111111;}
      .cart-price-m3 .price-currency{font-size:var(--price-currency-size);color:var(--md-primary) !important;margin-right:6px;font-weight:600;}
      .cart-price-m3 .price-num{font-size:var(--price-size);font-weight:400;color:#000000 !important;vertical-align:baseline;}

      .sum-row .price-currency{font-size:var(--price-currency-size);color:var(--md-primary) !important;margin-right:6px;}
      .sum-row .price-num{font-size:var(--price-size);font-weight:400;color:#000000 !important;}



      .cart-del-m3{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:var(--md-shape-full);display:flex;align-items:center;justify-content:center;color:var(--md-outline);}



      .cart-del-m3:hover{background:var(--md-primary-container);color:var(--md-error);}



      .cart-del-m3 svg{width:18px;height:18px;fill:currentColor;}







      /* M3 Summary Card */






        background:var(--md-surface-2);



        border-radius:var(--md-shape-xl);



        margin:0 16px;



        padding:20px;



        box-shadow:0 1px 3px rgba(0,0,0,.08);



      }



      .sum-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:14px;color:#111111;}



      .sum-row.total{font-family:var(--font-display);font-size:17px;font-weight:700;padding-top:12px;margin-top:4px;border-top:1px solid var(--md-outline-var);}



      .sum-row.total span:last-child{color:#111111;}



      .free-badge{background:var(--md-primary-container);color:#111111;font-size:11px;font-weight:700;padding:2px 8px;border-radius:var(--md-shape-full);}



      .bottom-btn-bar{padding:16px;}







      /* =====================================================



         M3 CHECKOUT



         ===================================================== */






        background:var(--md-surface-1);



        border-radius:var(--md-shape-xl);



        margin:12px 16px 0;



        padding:20px;



        box-shadow:0 1px 3px rgba(0,0,0,.08);



      }



      .checkout-card-title{font-size:13px;font-weight:600;color:#111111;text-transform:uppercase;letter-spacing:.8px;margin-bottom:16px;}

      .checkout-trust-banner{
        display:flex;flex-wrap:wrap;gap:8px;
        margin-top:12px;padding:12px 14px;
        border:1px solid var(--md-outline-var);border-radius:var(--md-shape-md);
        background:var(--md-surface-2);
      }
      .checkout-trust-pill{
        display:inline-flex;align-items:center;gap:6px;
        padding:6px 10px;border-radius:999px;
        background:var(--md-surface-4);color:#111111;
        font-size:12px;font-weight:700;letter-spacing:.2px;
      }
      .checkout-trust-pill svg{width:14px;height:14px;flex-shrink:0;color:var(--md-primary);}
      .support-card{margin-top:12px;padding:14px;border-radius:var(--md-shape-md);background:var(--md-surface-4);border:1px solid var(--md-outline-var);} 
      .support-card-title{font-size:14px;font-weight:700;color:#111111;margin-bottom:6px;} 
      .support-card-body{font-size:13px;line-height:1.5;color:#111111;margin-bottom:10px;} 
      .support-actions{display:flex;gap:8px;flex-wrap:wrap;} 
      .support-actions .btn{flex:1;min-width:120px;justify-content:center;} 



      .checkout-summary-card{

        background:var(--md-surface-4);

        color:#111111;

        border-radius:var(--md-shape-lg);

        padding:20px;

        margin-bottom:24px;

        position:relative;

        z-index:10;

        box-shadow:0 2px 8px rgba(0,0,0,0.08);

        border-left:4px solid var(--md-primary);

      }



      .checkout-summary-card .sum-row{

        display:flex;

        justify-content:space-between;

        align-items:center;

        margin-bottom:12px;

        font-size:14px;

      }



      .checkout-summary-card .sum-row:last-child{

        margin-bottom:0;

        padding-top:12px;

        border-top:1px solid var(--md-outline-var);

        font-size:16px;

        font-weight:700;

        color:#111111;

      }



      .co-section{

        background:var(--md-surface-1);

        border-radius:var(--md-shape-lg);

        margin-bottom:20px;

        overflow:hidden;

        box-shadow:0 2px 8px rgba(0,0,0,0.06);

      }



      .co-section-header{

        display:flex;

        align-items:center;

        gap:12px;

        padding:16px 20px;

        background:var(--md-surface-2);

        border-bottom:1px solid var(--md-outline-var);

        color:#111111;

      }



      .co-section-header svg{

        color:#111111;

        stroke-width:2.5;

      }



      .co-section-header h3{

        margin:0;

        font-size:15px;

        font-weight:600;

        color:#111111;

      }



      .co-section-content{

        padding:16px 20px;

        display:flex;

        flex-direction:column;

        gap:12px;

      }



      .delivery-info{

        padding:12px;

        background:var(--md-surface-2);

        border-radius:var(--md-shape-md);

      }



      .delivery-name{

        font-weight:600;

        font-size:15px;

        color:#111111;

        margin-bottom:4px;

      }



      .delivery-address{

        font-size:13px;

        color:#111111;

        margin-bottom:4px;

      }



      .delivery-phone{

        font-size:13px;

        color:#111111;

      }



      .co-trust-signals{

        display:flex;

        flex-direction:column;

        gap:10px;

        margin:24px 0 16px;

        padding:16px 20px;

        background:linear-gradient(135deg, rgba(46,125,50,0.08), rgba(21,101,192,0.08));

        border-radius:var(--md-shape-lg);

        border:1px solid var(--md-outline-var);

      }



      .trust-item{

        display:flex;

        align-items:center;

        gap:10px;

        font-size:13px;

        color:#111111;

        font-weight:500;

      }



      .trust-item svg{

        color:#111111;

        flex-shrink:0;

      }



      .btn-checkout{

        display:flex;

        align-items:center;

        justify-content:center;

        gap:8px;

        width:100%;

        min-height:54px;

        padding:16px 20px;

        font-size:15px;

        font-weight:700;

        letter-spacing:0.01em;

        border-radius:999px;

        background:linear-gradient(135deg, var(--md-primary-light) 0%, var(--md-primary) 50%, var(--md-primary-dark) 100%);

        color:#fff;

        border:1px solid rgba(255,255,255,0.22);

        cursor:pointer;

        position:relative;

        overflow:hidden;

        box-shadow:0 12px 24px color-mix(in srgb, var(--md-primary) 26%, transparent), inset 0 1px 0 rgba(255,255,255,0.22);

        transition:transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;

      }

      .btn-checkout::before{

        content:"";

        position:absolute;

        inset:0;

        background:linear-gradient(90deg, transparent, rgba(255,255,255,0.28), transparent);

        transform:translateX(-120%);

        transition:transform 0.5s ease;

      }

      .btn-checkout:hover{

        transform:translateY(-2px);

        box-shadow:0 16px 30px color-mix(in srgb, var(--md-primary) 34%, transparent), inset 0 1px 0 rgba(255,255,255,0.24);

        filter:brightness(1.03);

      }

      .btn-checkout:hover::before{

        transform:translateX(120%);

      }

      .btn-checkout:active{

        transform:translateY(0) scale(0.98);

        box-shadow:0 6px 16px color-mix(in srgb, var(--md-primary) 24%, transparent);

      }



      .m3-text-field{



        width:100%;height:56px;



        border:1px solid var(--md-outline);



        border-radius:var(--md-shape-sm);



        padding:16px;



        font-size:16px;color:#111111;



        background:var(--md-surface);



        outline:none;



        transition:border-color var(--md-duration-short);



        margin-bottom:10px;



      }



      .m3-text-field:focus{border-color:#111111;border-width:2px;}



      .m3-text-field::placeholder{color:#111111;}






        display:flex;align-items:center;gap:12px;



        padding:14px;



        border:1px solid var(--md-outline-var);



        border-radius:var(--md-shape-md);



        cursor:pointer;margin-bottom:10px;



        transition:all var(--md-duration-short);



        position:relative;



      }



      .pay-row.sel{border-color:#111111;border-width:2px;background:var(--md-primary-container);}



      .pay-icon-wrap{min-width:64px;height:40px;padding:0 10px;border-radius:var(--md-shape-md);background:var(--md-surface-3);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.4px;color:#111111;flex-shrink:0;}



      .pay-info strong{display:block;font-size:14px;font-weight:600;color:#111111;}



      .pay-info small{font-size:12px;color:#111111;}



      .pay-check{margin-left:auto;width:24px;height:24px;border-radius:50%;background:var(--md-primary);color:var(--md-on-primary);display:none;align-items:center;justify-content:center;}



      .pay-row.sel .pay-check{display:flex;}



      .pay-check svg{width:14px;height:14px;fill:currentColor;}



      .coupon-option{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--md-outline-var);border-radius:var(--md-shape-md);cursor:pointer;margin-bottom:10px;transition:all var(--md-duration-short);background:var(--md-surface-1);}



      .coupon-option:hover{background:var(--md-surface-2);}



      .coupon-option.sel{border-color:#111111;border-width:2px;background:var(--md-primary-container);}



      .coupon-code-badge{min-width:60px;height:36px;padding:0 10px;border-radius:var(--md-shape-sm);background:var(--md-surface-3);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;letter-spacing:.3px;color:#111111;flex-shrink:0;font-family:monospace;}



      .coupon-info strong{display:block;font-size:13px;font-weight:600;color:#111111;}



      .coupon-info small{font-size:11px;color:#111111;}



      .coupon-discount{margin-left:auto;font-weight:600;color:#111111;font-size:13px;flex-shrink:0;}



      .coupon-option.sel .coupon-check{display:flex;}



      .coupon-check{margin-left:4px;width:20px;height:20px;border-radius:50%;background:var(--md-primary);color:var(--md-on-primary);display:none;align-items:center;justify-content:center;flex-shrink:0;}



      #co-coupon-code{font-size:13px !important; padding:10px 12px !important; border:1px solid var(--md-outline-var) !important; border-radius:var(--md-shape-md) !important;}



      #co-coupon-code:focus{outline:none; border-color:#111111 !important; box-shadow:0 0 0 3px rgba(233, 80, 10, 0.1);}



      #co-coupon-code:disabled{background:var(--md-surface-3); color:#111111;}



      #co-coupon-msg{font-size:12px; padding:10px 12px; margin-top:8px; border-radius:var(--md-shape-md); display:none; animation:slideIn 0.3s ease;}



      @keyframes slideIn{from{opacity:0; transform:translateY(-4px);} to{opacity:1; transform:translateY(0);}}







      /* =====================================================



         ORDER SUCCESS



         ===================================================== */



      #screen-success{background:var(--md-surface);align-items:center;justify-content:center;}
      .success-container{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px 24px;gap:12px}
      .success-icon{width:96px;height:96px;border-radius:50%;background:var(--md-primary-container);display:flex;align-items:center;justify-content:center;font-size:48px;animation:popIn .5s var(--md-easing-emph)}
      @keyframes popIn{0%{transform:scale(0);}60%{transform:scale(1.15);}100%{transform:scale(1);}}
      .success-title{font-size:20px;font-weight:800;color:var(--md-primary)}
      .success-body{font-size:14px;color:#111111;line-height:1.6;max-width:280px}
      .order-id-wrap{display:flex;align-items:center;gap:8px;margin-top:6px}
      .order-id-chip{background:var(--md-surface-3);padding:8px 12px;border-radius:12px;font-family:monospace;font-weight:700;color:#111;box-shadow:0 4px 14px rgba(0,0,0,0.04);cursor:pointer}
      .copy-id-btn{background:transparent;border:none;padding:6px;border-radius:8px;cursor:pointer;color:var(--md-primary);display:inline-flex;align-items:center;justify-content:center}
      .copy-id-btn svg{width:18px;height:18px}
      .pts-banner{margin-top:6px;background:var(--md-primary-container);border-radius:var(--md-shape-xl);padding:14px 20px;width:100%;display:flex;align-items:center;gap:10px}
      .pts-banner-text{font-size:14px;font-weight:600;color:#111111}
      .pts-pending{font-size:14px;color:var(--orange,var(--md-primary));font-weight:500;margin-left:8px;}
      .success-actions{display:flex;gap:10px;width:100%;margin-top:14px}
      .success-actions .btn-pri{flex:1;padding:12px 14px;border-radius:12px;font-size:16px;background:var(--md-primary)!important;color:var(--md-on-primary)!important;box-shadow:0 6px 28px var(--orange-glow),0 1px 3px color-mix(in srgb, var(--md-primary) 20%, transparent);transition:transform .12s cubic-bezier(.4,0,.2,1),box-shadow .18s ease}
      .success-actions .btn-pri:hover,.success-actions .btn-pri:active,.success-actions .btn-pri:focus{background:var(--md-primary)!important}
      .success-actions .btn-ghost{flex:1;padding:12px 14px;border-radius:12px;font-size:16px}
      @media (max-width:480px){.success-actions{flex-direction:column}.success-actions .btn-pri,.success-actions .btn-ghost{width:100%}}















      /* NOTIFICATION STYLES */







      .notif-item {display:flex;align-items:flex-start;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border);transition:background .15s;cursor:pointer}







      .notif-item:active {background:var(--md-surface-1)}







      .notif-item.unread {background:var(--md-primary-container)}







      .notif-icon-wrap {width:40px;height:40px;border-radius:14px;background:var(--orange-dim);flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-top:2px}







      .notif-title {font-size:14px;font-weight:600;color:#111111;margin-bottom:3px}







      .notif-body {font-size:13px;color:#111111;line-height:1.45}







      .notif-time {font-size:11px;color:#111111;margin-top:4px}







      .notif-unread-dot {width:8px;height:8px;border-radius:50%;background:var(--md-primary);flex-shrink:0;margin-top:6px}







      #screen-notifications .tbar {background:linear-gradient(135deg, var(--md-on-surface), #2d1800)}







      #screen-notifications .tbar-title {color:var(--md-surface)}







      #screen-notifications .ibtn.w {color:var(--md-surface)}



      /* =====================================================

         PRODUCT PAGE - FILTER CHIPS & GRID

         ===================================================== */

      .filter-chip-row{display:flex;gap:8px;overflow-x:auto;padding:12px 16px 0;scrollbar-width:none;flex-shrink:0;background:rgb(254, 241, 238);width:100%;margin:0;}

      .filter-chip-row::-webkit-scrollbar{display:none;}

      .filter-chip{flex-shrink:0;height:40px;line-height:40px;padding:0 18px;border-radius:20px;border:1px solid var(--md-outline-var);background:var(--md-primary-container);font-size:13px;font-weight:500;color:#111111;white-space:nowrap;cursor:pointer;transition:all var(--md-duration-short) var(--md-easing);letter-spacing:.1px;display:inline-flex;align-items:center;justify-content:center;}

      .filter-chip:active{transform:scale(.95);}

      .filter-chip.active{background:var(--md-primary);color:var(--md-on-primary);border-color:#111111;box-shadow:0 2px 8px color-mix(in srgb, var(--md-primary) 30%, transparent);}

      .prod-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px;padding:6px 10px 16px;}

      .prod-card{background:var(--md-surface-1);border-radius:var(--md-shape-lg);overflow:visible;cursor:pointer;position:relative;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:box-shadow var(--md-duration-short),transform var(--md-duration-short);display:flex;flex-direction:column;}

      .prod-card:hover{box-shadow:0 3px 10px rgba(0,0,0,.14);transform:translateY(-2px);}

      .prod-card:active{transform:scale(.97);}

      .prod-card .add-btn{background:linear-gradient(135deg, var(--md-primary) 0%, var(--md-primary-dark) 100%);border-radius:var(--md-shape-lg);display:flex;align-items:center;justify-content:center;color:var(--md-on-primary);box-shadow:0 10px 24px color-mix(in srgb, var(--md-primary) 24%, transparent);transition:all 200ms cubic-bezier(.2,0,0,1);cursor:pointer;font-size:13px;font-weight:700;border:none;width:44px;height:44px;padding:0;flex-shrink:0;position:static !important;}

      .prod-card .add-btn: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);transform:scale(1.05);}

      .prod-card .add-btn:active{transform:scale(.95);box-shadow:0 2px 8px color-mix(in srgb, var(--md-primary) 20%, transparent);}

      .prod-card .add-btn svg{width:18px;height:18px;fill:#fff;display:block;}

      .prod-img-wrap{width:100%;height:160px;padding-bottom:0;border-radius:20px 20px 0 0;background:var(--md-surface-3);display:flex;align-items:center;justify-content:center;font-size:60px;position:relative;overflow:hidden;margin:0;}

      .prod-img-wrap img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.04);font-size:0;visibility:visible !important;display:block !important;}

      /* Hide any accidental product name placed inside the image wrapper
         (some legacy templates rendered the name inside the image area). */
      .prod-img-wrap > .prod-name-m3,
      .prod-img-wrap > .prod-name {
        display:none !important;
      }

      .product-img-fallback{display:none;font-size:60px;width:100%;height:100%;background:var(--md-surface-3);align-items:center;justify-content:center;}

      /* =====================================================
         IPOO MATERIAL — ADD TO CART FAB (Corner Style)
         ===================================================== */
        position:absolute;bottom:8px;right:8px;
        width:52px;height:52px;
        background:linear-gradient(135deg, var(--md-primary) 0%, var(--md-primary-dark) 100%);
        border-radius:18px;
        display:flex;align-items:center;justify-content:center;
        color:#fff;
        box-shadow:0 10px 24px color-mix(in srgb, var(--md-primary) 24%, transparent);
        transition:background var(--md-duration-short),transform var(--md-duration-short),box-shadow var(--md-duration-short);
        font-size:11px;font-weight:700;
        width:52px!important;
        height:52px!important;
        min-width:52px!important;
        min-height:52px!important;
        border-radius:18px!important;
      }
      .prod-info{padding:12px 18px 8px;position:relative;display:flex;flex-direction:column;gap:6px;}

      .prod-info{padding:12px 18px 8px;position:relative;display:flex;flex-direction:column;gap:6px;}

      .prod-name{font-size:15px;font-weight:600;color:#212121;margin-bottom:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-0.01em;}

      .prod-unit{font-size:13px;color:#757575;text-transform:uppercase;letter-spacing:0.2px;margin-top:8px;margin-bottom:10px;font-weight:500;}

      .prod-price{font-family:'Google Sans', sans-serif;font-size:22px;font-weight:700;line-height:1.2;color:#111111;}

      .prod-stock-chip{display:inline-block;margin-top:4px;font-size:10px;font-weight:600;color:var(--md-error);background:#FCEAE9;padding:2px 8px;border-radius:var(--md-shape-full);}

      .prod-grid-m3{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  padding:0 10px 12px;
}
.prod-card-m3{
  width:172px;
  height:304px;
  background:var(--md-surface-1);
  border-radius:18px;
  overflow:hidden;
  cursor:pointer;
  position:relative;
  box-shadow:0 1px 3px rgba(0,0,0,.025);
  border:1px solid rgba(0,0,0,.02);
  transition:box-shadow var(--md-duration-short),transform var(--md-duration-short);
  display:flex;flex-direction:column;
}
.prod-card-m3:hover{box-shadow:0 2px 7px rgba(0,0,0,.04);}
.prod-card-m3:active{transform:scale(.98);}
.prod-img-wrap{
  width:100%;
  height:200px;
  min-height:200px;
  padding:10px 10px 0;
  border-radius:18px 18px 0 0;
  background:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:60px;
  position:relative;
  overflow:hidden;
  margin:0;
  flex-shrink:0;
  box-sizing:border-box;
}
.prod-img-wrap img,.prod-img-wrap .product-img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.01);padding:0;box-sizing:border-box;font-size:0;visibility:visible !important;display:block !important;border-radius:12px;}
.prod-img-wrap > .prod-name-m3,
.prod-img-wrap > .prod-name{display:none !important;}
.product-img-fallback{font-size:60px;}
/* legacy spacing token: padding:10px 10px 12px */
.prod-info{padding:9px 12px 12px;position:relative;display:flex;flex-direction:column;gap:6px;}
.prod-name-m3{font-size:13px;font-weight:500;color:#111111;margin-bottom:3px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:.1px;}
.prod-unit-m3{font-size:11px;color:#111111;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;line-height:1.2;}
.prod-price-m3{font-family:var(--font-display);font-size:15px;font-weight:700;color:#ff4500;margin-top:1px;letter-spacing:0.01em;font-variant-numeric:tabular-nums;}
.prod-actions-row{display:flex;align-items:center;gap:4px;margin-top:3px;}
.prod-stock-chip{display:inline-block;margin-top:0;font-size:10px;font-weight:600;padding:2px 8px;border-radius:var(--md-shape-full);}.prod-stock-chip-out{color:var(--md-error);background:#FCEAE9;}
.prod-stock-chip-low{color:#B25608;background:#FFF4E5;}
.prod-stock-chip-in{color:#1B8A4B;background:#E7F5EA;}

  position:absolute;bottom:8px;right:8px;
  width:40px;height:40px;
  background:linear-gradient(135deg, var(--md-primary) 0%, #E8500A 100%);
  border-radius:var(--md-shape-lg) 0 var(--md-shape-lg) 0;
  display:flex;align-items:center;justify-content:center;
  color:#fff;
  box-shadow:0 10px 24px rgba(232, 80, 10, 0.24);
  transition:background var(--md-duration-short),transform var(--md-duration-short),box-shadow var(--md-duration-short);
  font-size:11px;font-weight:700;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  border-radius:var(--md-shape-lg) 0 var(--md-shape-lg) 0!important;
}





      /* ORDERS SCREEN STYLES */







      #orders-body {padding:0;padding-bottom:20px}







      /* Orders page - Clean Material 3 header */

      #sc-orders .tbar-title {

        color: #111111 !important;

        font-family: var(--font-display);

        font-style: normal;

        font-size: 18px;

      }



      /* Cart page - Also update to clean design */

      #screen-cart .tbar {

        background: var(--md-surface-4);

        border-bottom: 1px solid rgba(120, 75, 40, 0.08);

      }



      #screen-cart .tbar-title {

        color: var(--md-on-surface);

        font-family: var(--font-display);

        font-style: normal;

        font-size: 18px;

      }







      .order-card {background:var(--md-surface);border-bottom:1px solid var(--border);padding:16px;cursor:pointer;transition:background .2s}







      .order-card:active {background:var(--md-surface-1)}







      .order-header {display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}







      .order-num {font-weight:700;font-size:13px;color:#111111}







      .order-status {font-size:11px;font-weight:600;padding:3px 10px;border-radius:12px;background:var(--success-light);color:#111111}







      .order-status.pending {background:rgba(255,175,0,0.1);color:#111111}







      .order-status.cancelled {background:rgba(220,53,69,0.1);color:#111111}







      .order-date {font-size:12px;color:#111111;margin-bottom:8px}







      .order-details {display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:12px 0}







      .order-detail-item {font-size:12px}







      .order-detail-label {color:#111111;font-weight:500;margin-bottom:2px}







      .order-detail-value {color:#111111;font-weight:700;font-size:13px}







      .order-items-preview {font-size:12px;color:#111111;margin-top:8px}







      .order-total {display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:700;color:#111111;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}







      .order-total-label {color:#111111;font-weight:500}







      .order-total-value {color:#111111;font-size:20px;font-weight:800}























      .cart-summary {position:absolute;bottom:60px;left:0;right:0;max-width:430px;margin:0 auto;background:var(--md-on-primary-cont);color:var(--md-surface);padding:16px;z-index:40;border-top:1px solid var(--border)}







      .cart-summary-row {display:flex;flex-direction:column;gap:8px;font-size:14px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,0.1);align-items:flex-start}







      .cart-summary-row span:first-child {color:rgba(255,255,255,0.7);font-weight:500;display:block;width:100%}







      .cart-summary-row span:last-child {color:#111111;font-weight:600;display:block;width:100%;text-align:left}







      .cart-summary-total {display:flex;flex-direction:column;gap:8px;font-size:16px;font-weight:700;align-items:flex-start;width:100%}







      .cart-summary-total span:first-child {color:rgba(255,255,255,0.7);font-weight:600}







      .cart-summary-total span:last-child {color:#111111;font-size:18px}















      /* -- CART ITEM -- */







      .cart-item {







        display:flex; flex-direction:column; gap:12px;







        padding:14px 20px; border-bottom:1px solid var(--border);







        animation:fadeInSlide 0.4s ease-out;







      }







      @keyframes fadeInSlide {



        from {



          opacity:0;



          transform:translateX(-10px);



        }



        to {



          opacity:1;



          transform:translateX(0);



        }



      }







      .cart-item-img {







        width:100%; height:120px; border-radius:var(--radius-sm);







        object-fit:cover; background:var(--md-surface-1); flex-shrink:0;







      }







      .cart-item-fallback {







        width:100%; height:120px; border-radius:var(--radius-sm);







        background:var(--md-primary-container); flex-shrink:0;







        display:flex; align-items:center; justify-content:center;







        font-family:'Google Sans Display', sans-serif;







        font-size:24px; font-weight:700; color:#111111;







      }







      .cart-item-info { flex:1; min-width:0; }







      .cart-item-name {







        font-size:14px; font-weight:600; color:#111111;







        margin-bottom:3px; line-height:1.3;







      }







      .cart-item-brand {







        font-size:12px; color:#111111; margin-bottom:8px;







      }















      .qty-control {







        display:flex; align-items:center; gap:10px; width:100%;







      }







      .qty-btn {







        width:28px; height:28px; border-radius:50%;







        border:1.5px solid var(--border); background:var(--md-surface);







        display:flex; align-items:center; justify-content:center;







        cursor:pointer; color:#111111; transition:all .15s;







      }







      .qty-btn:active {







        background:var(--md-primary); border-color:#111111; color:var(--md-on-primary);







        animation:buttonTap 0.3s ease;







      }







      @keyframes buttonTap {



        0% { transform:scale(1); }



        50% { transform:scale(0.95); }



        100% { transform:scale(1); }



      }







      .qty-val {







        font-family:'Google Sans Display', sans-serif;







        font-size:15px; font-weight:700; color:#111111;







        min-width:20px; text-align:center;







      }







      .cart-item-price {







        font-family:'Google Sans Display', sans-serif;







        font-size:16px; font-weight:700; color:#111111;







        flex-shrink:0; width:100%; text-align:right;







      }







      .continue-shopping-btn {



        width:100%;



        padding:14px 20px;



        background:linear-gradient(135deg, var(--md-primary), #ff9500);



        color:var(--md-on-primary);



        border:none;



        border-radius:10px;



        font-weight:700;



        font-size:15px;



        cursor:pointer;



        transition:all 0.3s ease;



        margin-bottom:16px;



      }







      .continue-shopping-btn:hover {



        transform:translateY(-2px);



        box-shadow:0 8px 20px color-mix(in srgb, var(--md-primary) 30%, transparent);



      }







      .continue-shopping-btn:active {



        transform:translateY(0);



        box-shadow:0 4px 12px color-mix(in srgb, var(--md-primary) 20%, transparent);



      }







      .checkout-btn {



        width:100%;



        padding:14px 20px;



        background:linear-gradient(135deg, var(--md-primary) 0%, var(--md-primary-dark) 100%);



        color:var(--md-on-primary);



        border:none;



        border-radius:10px;



        font-weight:700;



        font-size:15px;



        cursor:pointer;



        transition:all 0.3s ease;



      }







      .checkout-btn:hover {



        transform:translateY(-2px);



        box-shadow:0 8px 20px color-mix(in srgb, var(--md-primary) 28%, transparent);



      }







      .checkout-btn:active {



        transform:translateY(0);



        box-shadow:0 4px 12px color-mix(in srgb, var(--md-primary) 20%, transparent);



      }















      /* -- CHECKOUT SUMMARY BAR -- */







      .checkout-bar {



        display:flex;



        flex-direction:column;



        gap:12px;



        padding:16px 20px;



        background:var(--md-surface);



        border-top:1px solid var(--border);



        flex-shrink:0;



        position:sticky;



        bottom:0;



        box-shadow:0 -4px 12px rgba(0,0,0,0.08);



        z-index:10;



        animation:slideUpIn 0.3s ease-out;



      }







      @keyframes slideUpIn {



        from {



          opacity:0;



          transform:translateY(20px);



        }



        to {



          opacity:1;



          transform:translateY(0);



        }



      }







      .checkout-row {







        display:flex; flex-direction:column; align-items:flex-start; gap:6px;







        margin-bottom:8px;







      }







      .checkout-label {







        font-size:13px; color:#111111;







      }







      .checkout-val {







        font-size:13px; font-weight:600; color:#111111;







      }







      .checkout-total-label {







        font-family:'Google Sans Display', sans-serif;







        font-size:16px; font-weight:700; color:#111111;







      }







      .checkout-total-val {







        font-family:'Google Sans Display', sans-serif;







        font-size:20px; font-weight:700; color:#111111;







      }







      .divider {







        height:1px; background:var(--border); margin:8px 0;







      }







      .mb16 { margin-bottom:16px; }







      /* =====================================================



         CHECKOUT



         ===================================================== */






        background:var(--md-surface-1);



        border-radius:var(--md-shape-xl);



        margin:12px 16px 0;



        padding:20px;



        box-shadow:0 1px 3px rgba(0,0,0,.08);



      }



      .checkout-card-title{font-size:13px;font-weight:600;color:#111111;text-transform:uppercase;letter-spacing:.8px;margin-bottom:16px;}

      .checkout-trust-banner{
        display:flex;flex-wrap:wrap;gap:8px;
        margin-top:12px;padding:12px 14px;
        border:1px solid var(--md-outline-var);border-radius:var(--md-shape-md);
        background:var(--md-surface-2);
      }
      .checkout-trust-pill{
        display:inline-flex;align-items:center;gap:6px;
        padding:6px 10px;border-radius:999px;
        background:var(--md-surface);color:#111111;
        font-size:12px;font-weight:700;letter-spacing:.2px;
      }
      .checkout-trust-pill svg{width:14px;height:14px;flex-shrink:0;color:var(--md-primary);}
      .info-note{
        margin-top:12px;padding:12px 14px;border-radius:var(--md-shape-md);
        background:var(--md-surface-2);border:1px solid var(--md-outline-var);
        font-size:13px;line-height:1.5;color:#111111;
      }
      .success-step-list{display:grid;gap:8px;width:100%;margin-top:6px;}
      .success-step{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--md-shape-md);background:var(--md-surface-1);box-shadow:0 1px 3px rgba(0,0,0,.08);text-align:left;}
      .success-step-badge{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;background:var(--md-primary-container);color:var(--md-primary);flex-shrink:0;}
      .success-step strong{display:block;font-size:14px;color:#111111;margin-bottom:2px;}
      .success-step span{font-size:13px;line-height:1.45;color:#111111;}

      .m3-text-field{



        width:100%;height:56px;



        border:1px solid var(--md-outline);



        border-radius:var(--md-shape-sm);



        padding:0 16px;



        font-size:16px;color:#111111;



        background:var(--md-surface);



        outline:none;box-sizing:border-box;



        transition:border-color .2s;



        margin-bottom:10px;display:block;



      }



      .m3-text-field:focus{border-color:#111111;border-width:2px;}



      .m3-text-field::placeholder{color:#111111;}






        display:flex;align-items:center;gap:12px;



        padding:14px;



        border:1.5px solid var(--md-outline-var);



        border-radius:var(--md-shape-md);



        cursor:pointer;margin-bottom:10px;



        transition:all .15s;



      }






      .pay-row.sel{border-color:#111111;border-width:2px;background:var(--md-primary-container);}



      .pay-icon-wrap{min-width:64px;height:40px;padding:0 10px;border-radius:var(--md-shape-md);background:var(--md-surface-3);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.4px;color:#111111;flex-shrink:0;}



      .pay-info strong{display:block;font-size:14px;font-weight:600;color:#111111;}



      .pay-info small{font-size:12px;color:#111111;}



      .pay-check{margin-left:auto;width:24px;height:24px;border-radius:50%;background:var(--md-primary);color:var(--md-on-primary);display:none;align-items:center;justify-content:center;flex-shrink:0;}



      .pay-row.sel .pay-check{display:flex;}



      .pay-check svg{width:14px;height:14px;fill:currentColor;}







      /* SUCCESS SCREEN STYLES */



      #screen-success{background:linear-gradient(180deg, #fff7f3 0%, var(--md-surface) 32%, var(--md-surface) 100%);align-items:center;justify-content:center;padding:18px 0;overflow:hidden;}
      .success-scroll{flex:1 1 auto;width:100%;min-height:0;height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:4px 0 18px;}
      .success-container{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 18px 18px;gap:12px;width:min(100%, 420px);max-width:420px;margin:0 auto;border:1px solid rgba(234, 88, 12, 0.12);background:rgba(255,255,255,0.82);backdrop-filter:blur(6px);border-radius:28px;box-shadow:0 18px 50px rgba(16,24,40,0.08),0 6px 18px rgba(234,88,12,0.08);}
      .success-badge{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;background:var(--md-primary-container);color:var(--md-primary);font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;}
      .success-icon{width:84px;height:84px;border-radius:50%;background:linear-gradient(180deg, #fffaf5 0%, var(--md-primary-container) 100%);display:flex;align-items:center;justify-content:center;font-size:48px;animation:popIn .5s var(--md-easing-emph);box-shadow:0 12px 26px rgba(234,88,12,0.14);}
      @keyframes popIn{0%{transform:scale(0);}60%{transform:scale(1.15);}100%{transform:scale(1);}}
      .success-title{font-size:26px;font-weight:800;color:#111111;letter-spacing:-0.03em;line-height:1.2}
      .success-body{font-size:14px;color:#444444;line-height:1.6;max-width:310px}
      .success-summary{width:100%;padding:12px 14px;border-radius:18px;background:#fff;border:1px solid rgba(17,17,17,0.06);box-shadow:inset 0 1px 0 rgba(255,255,255,0.8);}
      .summary-label{font-size:10px;font-weight:700;letter-spacing:0.10em;text-transform:uppercase;color:#666666;margin-bottom:8px;}
      .order-id-wrap{display:flex;align-items:center;justify-content:center;gap:8px}
      .order-id-chip{flex:1;min-height:42px;background:var(--md-surface-3);padding:10px 12px;border-radius:12px;font-family:monospace;font-weight:700;color:#111;box-shadow:0 4px 14px rgba(0,0,0,0.04);cursor:pointer;border:1px solid rgba(17,17,17,0.04);display:flex;align-items:center;justify-content:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
      .copy-id-btn{background:transparent;border:none;padding:8px;border-radius:10px;cursor:pointer;color:var(--md-primary);display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(234,88,12,0.18);background:rgba(234,88,12,0.06)}
      .copy-id-btn svg{width:18px;height:18px}
      .success-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:100%}
      .meta-pill{padding:7px 12px;border-radius:999px;background:#f7f7f7;border:1px solid rgba(17,17,17,0.06);font-size:12px;font-weight:600;color:#333333;}
      .pts-banner{margin-top:2px;background:linear-gradient(135deg, var(--md-primary-container) 0%, rgba(255,255,255,0.9) 100%);border-radius:var(--md-shape-xl);padding:14px 20px;width:100%;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(234,88,12,0.08)}
      .pts-banner-text{font-size:14px;font-weight:600;color:#111111;line-height:1.5}
      .pts-status{margin-top:6px;font-size:12px;font-weight:600;color:var(--orange,var(--md-primary));text-align:center;}
      .success-actions{display:flex;gap:10px;width:100%;margin-top:8px}
      .success-actions .btn-pri{flex:1;padding:12px 14px;border-radius:12px;font-size:16px;background:var(--md-primary)!important;color:var(--md-on-primary)!important;box-shadow:0 6px 28px var(--orange-glow),0 1px 3px color-mix(in srgb, var(--md-primary) 20%, transparent);transition:transform .12s cubic-bezier(.4,0,.2,1),box-shadow .18s ease;min-height:48px}
      .success-actions .btn-pri:hover,.success-actions .btn-pri:active,.success-actions .btn-pri:focus{background:var(--md-primary)!important}
      .success-actions .btn-ghost{flex:1;padding:12px 14px;border-radius:12px;font-size:16px;min-height:48px}
      .wa-btn{display:inline-flex;align-items:center;justify-content:center;min-width:150px;width:auto;padding:0 18px;height:46px;border-radius:999px;background:#25D366;color:#fff;font-weight:700;box-shadow:0 8px 18px rgba(37,211,102,0.25);text-decoration:none;}
      @media (max-width:480px){.success-container{padding-left:16px;padding-right:16px}.success-actions{flex-direction:column}.success-actions .btn-pri,.success-actions .btn-ghost{width:100%}.wa-btn{width:100%}}







      /* -- EMPTY STATE -- */







      .empty-state {







        display:flex; flex-direction:column;







        align-items:center; justify-content:center;







        padding:60px 20px 40px;







        text-align:center;







      }







      .empty-title {







        font-family:'Google Sans Display', sans-serif;







        font-size:20px; font-weight:700; color:#111111;







        margin:20px 0 8px;







      }







      .empty-sub {







        font-size:13px; color:#111111;







        margin-bottom:24px; line-height:1.5;







        max-width:260px;







      }















      /* -- BANNER CAROUSEL -- */







      .banner-wrap {







        margin:16px; border-radius:var(--radius);







        overflow:hidden; position:relative; height:160px;







      }







      .banner-track {







        display:flex; height:100%; width:100%;







        transition:transform .4s cubic-bezier(.4,0,.2,1);







      }







      .banner-slide {







        flex-shrink:0; width:100%; height:100%;







        position:relative; overflow:hidden;







      }







      .banner-bg {







        position:absolute; inset:0;







        background-size:cover; background-position:center;







      }







      .banner-overlay {







        position:absolute; inset:0;







        background:linear-gradient(135deg, rgba(13,6,0,.72) 0%, rgba(13,6,0,.12) 100%);







      }







      .banner-content {







        position:absolute; inset:0; padding:20px;







        display:flex; flex-direction:column; justify-content:flex-end;







      }







      .banner-eyebrow {







        font-size:10px; font-weight:700; color:rgba(255,255,255,.7);







        letter-spacing:1.5px; text-transform:uppercase; margin-bottom:4px;







      }







      .banner-title {







        font-family:'Google Sans Display', sans-serif;







        font-size:20px; font-weight:700; color:var(--md-on-primary);







        line-height:1.2; margin-bottom:8px;







      }







      .banner-cta {







        display:inline-flex; align-items:center; gap:6px;







        background:var(--md-primary); color:var(--md-on-primary);







        font-size:12px; font-weight:700; padding:7px 14px;







        border-radius:30px; width:fit-content; border:none; cursor:pointer;







      }







      .banner-dots {







        position:absolute; bottom:12px; right:16px;







        display:flex; gap:4px;







      }







      .banner-dot {







        width:6px; height:6px; border-radius:3px;







        background:rgba(255,255,255,.4);







        transition:all .3s; cursor:pointer;







      }







      .banner-dot.active { width:20px; background:white; }















      /* ---------------------------------------------------------------

         PROFESSIONAL RECEIPT REDESIGN v2.0

         Material 2 Aesthetic ? 1000+ Years of Receipt Design

         --------------------------------------------------------------- */



      .receipt-content {

        background: #FFFCFA;

        width: 100%;

        max-width: 100%;

        margin: 0 auto;

        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);

        border-radius: 20px;

        padding: 28px 20px 0px;

        position: relative;

        animation: slideUp 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;

        font-family: var(--font-b);

        border: 1px solid rgba(120, 75, 40, 0.08);

      }



      /* Remove decorative borders */

      .receipt-content::before,

      .receipt-content::after { display: none; }



      /* -- HEADER SECTION ? PREMIUM DESIGN ------------------------------------------- */

      .receipt-header-section {

        text-align: center;

        padding: 24px 16px;

        background: linear-gradient(135deg, #FFF8F6 0%, #FEF1EE 100%);

        border-radius: 20px;

        margin-bottom: 24px;

        border: 1px solid #F0E4DB;

      }



      .receipt-logo {

        font-family: 'Satisfy', cursive !important;

        font-size: 52px !important;

        font-style: normal !important;

        font-weight: 400 !important;

        color: var(--md-primary) !important;

        letter-spacing: 0.02em !important;

        line-height: 1 !important;

        margin-bottom: 4px !important;

      }



      .receipt-logo-sub {

        font-family: 'Google Sans', sans-serif;

        font-size: 13px;

        color: var(--md-primary);

        letter-spacing: 0.05em;

        text-transform: uppercase;

        font-weight: 700;

        margin-top: 8px;

        margin-bottom: 14px;

      }



      .receipt-phone {

        margin-top: 10px;

        font-size: 13px;

        color: var(--md-primary);

        letter-spacing: 0;

        font-weight: 500;

      }



      .receipt-phone a {

        color: var(--md-primary);

        text-decoration: none;

        font-weight: 700;

      }



      /* RECEIPT SCREEN SPACING OVERRIDE - Remove bottom padding for nav access */

      #sc-receipt {

        padding-bottom: 0 !important;

      }



      #sc-receipt .receipt-content {

        margin-bottom: 0 !important;

      }



      /* -- ORDER META SECTION ? PREMIUM+ LAYOUT --------------------------------------- */

      .receipt-title {

        font-size: 11px;

        font-weight: 800;

        letter-spacing: 0.12em;

        color: var(--md-primary);

        text-transform: uppercase;

        margin: 0 0 16px 0;

        text-align: center;

      }



      .receipt-info-section {

        background: linear-gradient(135deg, #FFFBF8 0%, #FEFAF7 100%);

        border-radius: 16px;

        padding: 18px 16px;

        margin-bottom: 20px;

        border: 1px solid #F0E4DB;

        box-shadow: 0 2px 8px rgba(31, 31, 31, 0.04);

      }



      .receipt-info-row {

        display: flex;

        justify-content: space-between;

        align-items: center;

        font-size: 13px;

        line-height: 1.6;

        color: #111111;

        padding: 10px 0;

        animation: fadeIn 0.4s ease both;

      }



      .receipt-info-row:not(:last-child) {

        padding-bottom: 14px;

        border-bottom: 1px solid #E8D5C8;

      }



      .receipt-info-row .label {

        color: var(--md-primary);

        font-size: 11px;

        font-weight: 600;

        letter-spacing: 0.03em;

      }



      .receipt-info-row .val {

        font-family: 'Google Sans', sans-serif;

        font-weight: 700;

        font-size: 14px;

        text-align: right;

        color: var(--md-primary);

        font-style: normal;

      }

      /* Make order id less prominent and receipt more prominent */
      .rct-id { font-size: 14px; font-weight: 700; color: #111111; }
      .rct-order-small { font-size: 11px; color: #111111; margin-top:6px; }
      .rct-meta-val.receipt { font-size:18px; font-weight:800; color: #111111; }



      .receipt-status-badge {

        display: inline-flex;

        align-items: center;

        justify-content: center;

        gap: 8px;

        padding: 10px 18px;

        border-radius: 100px;

        font-size: 12px;

        font-weight: 700;

        letter-spacing: 0.05em;

        text-transform: uppercase;

        box-shadow: 0 4px 12px rgba(31, 31, 31, 0.12);

        font-family: 'Google Sans', sans-serif;

      }



      .receipt-status-badge.pend {

        background: linear-gradient(135deg, #FFE8D3 0%, #FFD9B3 100%);

        color: #B8390A;

      }



      .receipt-status-badge.shipped {

        background: linear-gradient(135deg, #BBDEFB 0%, #90CAF9 100%);

        color: #0D47A1;

      }



      .receipt-status-badge.delv {

        background: linear-gradient(135deg, #C8E6C9 0%, #A5D6A7 100%);

        color: #0B3D2C;

      }



      .receipt-status-badge.canc {

        background: linear-gradient(135deg, #FFCDD2 0%, #EF9A9A 100%);

        color: #8B0000;

      }



      /* -- DIVIDER (MODERN) ----------------------------------------- */

      .receipt-dash {

        border: none;

        border-top: 1px solid rgba(120, 75, 40, 0.1);

        margin: 14px 0;

      }



      .receipt-dash-thick {

        border: none;

        border-top: 1px solid rgba(120, 75, 40, 0.12);

        margin: 16px 0;

      }



      .receipt-dash-double {

        border: none;

        border-top: 1px solid rgba(120, 75, 40, 0.12);

        margin: 16px 0;

      }



      /* -- ITEMS SECTION (PREMIUM GRID LAYOUT) ------------------------------ */

      .receipt-items-header {

        display: flex;

        align-items: center;

        gap: 10px;

        min-width: 0;

        font-size: 10px;

        font-weight: 800;

        letter-spacing: 0.12em;

        color: #111111;

        text-transform: uppercase;

        margin-bottom: 0;

        padding: 12px 14px;

        background: #FFFBF8;

        border-radius: 12px 12px 0 0;

        border-bottom: 2px solid #E8D5C8;

      }



      .receipt-item {

        margin: 0;

        padding: 12px 14px;

        display: flex;

        align-items: flex-start;

        gap: 10px;

        min-width: 0;

        animation: fadeIn 0.4s ease both;

        background: var(--md-surface);

        border-bottom: 1px solid #F0E4DB;

      }



      .receipt-item:last-child {

        border-bottom: none;

        border-radius: 0 0 12px 12px;

      }



      .receipt-item-row1 {

        display: contents;

      }



      .receipt-item-main {

        display: flex;

        flex-direction: column;

        gap: 3px;

        flex: 1 1 0;

        min-width: 0;

        overflow: hidden;

      }



      .receipt-item-name {

        font-size: 13px;

        font-weight: 700;

        color: var(--md-primary);

        line-height: 1.35;

        word-break: break-word;

        overflow-wrap: anywhere;

        hyphens: auto;

      }



      .receipt-items-header > span:nth-child(1),
      .receipt-item-main {
        flex: 1 1 0;
        min-width: 0;
      }

      .receipt-items-header > span:nth-child(2),
      .receipt-item-qty {
        flex: 0 0 48px;
        text-align: right;
        white-space: nowrap;
      }

      .receipt-items-header > span:nth-child(3),
      .receipt-item-price {
        flex: 0 0 68px;
        text-align: right;
        white-space: nowrap;
      }

      .receipt-items-header > span:nth-child(4),
      .receipt-item-total {
        flex: 0 0 84px;
        text-align: right;
        white-space: nowrap;
        font-weight: 800;
      }

      .receipt-item-qty,
      .receipt-item-price,
      .receipt-item-total {
        font-size: 12px;
        font-weight: 700;
        color: var(--md-primary);
        align-self: center;
      }



      /* -- SUMMARY SECTION ? PREMIUM TOTALS ------------------------------------------ */

      .receipt-subtotal-row {

        display: flex;

        justify-content: space-between;

        font-size: 15px;

        color: #111111;

        line-height: 1.8;

        font-weight: 700;

        margin-top: 20px;

        padding: 18px 16px;

        background: linear-gradient(135deg, #FFF8F6 0%, #FEF1EE 100%);

        border-radius: 14px;

        border: 1.5px solid #E8D5C8;

        box-shadow: 0 2px 8px rgba(31, 31, 31, 0.04);

      }



      .receipt-subtotal-row span:last-child {

        font-family: 'Google Sans', sans-serif;

        font-style: normal;

        color: #111111;

        font-weight: 800;

        font-size: 20px;

        letter-spacing: -0.02em;

      }



      .receipt-total-row {

        display: flex;

        justify-content: space-between;

        font-size: 12px;

        color: #111111;

        line-height: 1.8;

        margin-top: 14px;

        padding: 8px 0;

      }



      .receipt-total-row.grand {

        font-size: 13px;

        font-weight: 700;

        color: #111111;

        line-height: 1.8;

        margin-top: 14px;

        padding-top: 8px;

        border-top: none;

      }



      .receipt-total-row.grand .val {

        font-size: 18px;

      }



      /* -- LOYALTY POINTS (PREMIUM+ SHOWCASE) ---------------------------------------- */

      .receipt-points-box {

        border: 2px solid var(--md-primary);

        border-radius: 20px;

        padding: 28px 20px;

        text-align: center;

        margin: 28px 0 24px;

        animation: pulseBadge 0.4s ease 0.8s both;

        background: linear-gradient(135deg, #FFF8F6 0%, #FEF1EE 100%);

        box-shadow: 0 8px 24px color-mix(in srgb, var(--md-primary) 14%, transparent);

      }



      .receipt-points-title {

        font-size: 10px;

        letter-spacing: 0.12em;

        color: var(--md-primary);

        font-weight: 800;

        text-transform: uppercase;

        margin-bottom: 8px;

      }



      .receipt-points-number {

        font-family: 'Google Sans Display', sans-serif;

        font-size: 54px;

        font-style: normal;

        font-weight: 800;

        color: var(--md-primary);

        line-height: 1;

        letter-spacing: -0.02em;

        margin: 6px 0;

      }



      .receipt-points-label {

        font-size: 12px;

        color: var(--md-primary);

        margin-top: 8px;

        letter-spacing: 0.04em;

        font-weight: 600;

      }



      .receipt-points-badge {

        display: inline-block;

        background: linear-gradient(135deg, var(--md-primary) 0%, var(--md-primary-dark) 100%);

        color: var(--md-on-primary);

        font-size: 11px;

        font-weight: 800;

        letter-spacing: 0.08em;

        padding: 10px 20px;

        border-radius: 100px;

        margin-top: 14px;

        text-transform: uppercase;

        box-shadow: 0 4px 12px color-mix(in srgb, var(--md-primary) 32%, transparent);

      }



      /* -- BARCODE SECTION (PREMIUM PRESENTATION) ------------------------------------- */

      .receipt-barcode-wrap {

        text-align: center;

        margin: 24px 0 8px;

        padding: 18px 14px;

        background: #FFFBF8;

        border-radius: 12px;

        border: 1px solid #E8D5C8;

        box-shadow: 0 2px 8px rgba(31, 31, 31, 0.04);

      }



      .receipt-barcode {

        display: inline-flex;

        align-items: stretch;

        height: 60px;

        gap: 0;

        background: #FEFAF7;

        padding: 0 8px;

        border-radius: 4px;

      }



      .receipt-bar {

        display: inline-block;

        height: 100%;

      }



      .receipt-barcode-num {

        font-family: 'Google Sans', sans-serif;

        font-size: 12px;

        color: var(--md-primary);

        letter-spacing: 0.12em;

        margin-top: 10px;

        font-weight: 800;

      }



      /* -- FOOTER SECTION ? PREMIUM+ GRATITUDE ------------------------------------------ */

      .receipt-footer-section {

        text-align: center;

        padding-top: 24px;

        padding-bottom: 0;

        border-top: 2px dashed #E8D5C8;

        margin-top: 24px;

      }



      .receipt-thanks {

        font-size: 22px !important;

        font-style: normal !important;

        font-weight: 400 !important;

        color: var(--md-primary) !important;

        margin-bottom: 10px !important;

        font-family: 'Satisfy', cursive !important;

        letter-spacing: 0.02em !important;

      }



      .receipt-tagline {

        font-size: 13px;

        color: var(--md-primary);

        letter-spacing: 0.05em;

        margin-bottom: 4px;

        font-weight: 600;

      }



      .receipt-powered {

        font-family: 'Google Sans', sans-serif;

        font-size: 11px;

        font-style: normal;

        color: var(--md-primary);

        letter-spacing: 0.12em;

        text-transform: uppercase;

        margin-top: 8px;

        font-weight: 600;

      }



      /* -- ANIMATIONS ---------------------------------------------- */

      @keyframes slideUp {

        from {

          opacity: 0;

          transform: translateY(24px);

        }

        to {

          opacity: 1;

          transform: translateY(0);

        }

      }



      @keyframes fadeIn {

        from {

          opacity: 0;

        }

        to {

          opacity: 1;

        }

      }



      @keyframes pulseBadge {

        0% {

          transform: scale(0.97);

          opacity: 0;

        }

        60% {

          transform: scale(1.02);

          opacity: 1;

        }

        100% {

          transform: scale(1);

        }

      }



      /* -- PRINT OPTIMIZATION -------------------------------------- */

      @media print {

        body {

          background: #fff !important;

          padding: 0;

        }

        #app, .tbar, .nav, .receipt-actions {

          display: none !important;

        }

        .receipt-content {

          box-shadow: none !important;

          max-width: 100% !important;

          border-radius: 0 !important;

          animation: none !important;

          border: none !important;

        }

        .receipt-item, .receipt-info-row {

          animation: none !important;

        }

        .receipt-points-box {

          animation: none !important;

        }

      }







      @media print{body{background:white !important;padding:0;}#app,.tbar,.nav,.receipt-actions{display:none !important;}.receipt-content{box-shadow:none !important;max-width:100% !important;border-radius:0 !important;animation:none !important;}.receipt-content::before,.receipt-content::after{display:none;}.receipt-item,.receipt-info-row{animation:none !important;}.receipt-points-box{animation:none !important;}}







      .ord-tabs{display:flex;border-top:1px solid rgba(120,75,40,0.08);background:var(--md-surface-1);}



      .otab{flex:1;text-align:center;padding:13px 0;font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:rgba(120,75,40,0.5);border-bottom:3px solid transparent;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);}



      .otab.on{color:#111111;border-bottom-color:#111111;}



      .more-btn{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--md-on-primary);font-size:24px;cursor:pointer;transition:background var(--dur);border:none;background:none;padding:0;}



      .more-btn:hover{background:rgba(255,255,255,.1);}



      .ord-card{background:var(--sur);margin:8px 12px;border-radius:var(--r16);padding:16px;cursor:pointer;box-shadow:var(--e1);transition:all var(--dur);}



      .ord-card:hover{box-shadow:var(--e3);}



      .ord-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px;}



      .ord-id{font-size:15px;font-weight:900;color:#111111;}



      .ord-date{font-size:12px;color:#111111;margin-top:2px;}



      .ord-items{font-size:13px;color:#111111;line-height:1.5;margin-bottom:12px;}



      .ord-bot{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--sur2);}



      .ord-total{font-size:18px;font-weight:900;color:var(--md-primary);}



      .ord-pts{background:var(--pri-lt);color:#111111;font-size:12px;font-weight:700;padding:4px 12px;border-radius:var(--rpill);}



      .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(--out);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;}







      /* 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) !important; 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-row { display: flex; gap: 10px; align-items: center; }
      #screen-checkout .coupon-row .field { flex: 1; margin: 0; }
      #screen-checkout .coupon-row .btn-filled { min-width: 126px; height: 48px; padding: 0 20px; }
      #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 { display: none !important; }
    </style>