/* =========================================================================
   Pickikt Home — Frontend Design System v3
   Direction: flat, bold, high-contrast marketplace style. Minimal gradients,
   sharp edges, true edge-to-edge layout on every screen size.
   ========================================================================= */

:root{
	/* ── Modern unified palette ── */
	--ph-primary:   #0f172a;    /* slate-900  — darkest ink           */
	--ph-accent:    #2563eb;    /* blue-600   — primary action        */
	--ph-accent2:   #1d4ed8;    /* blue-700   — hover                 */
	--ph-accent-lt: #eff6ff;    /* blue-50    — light tint            */
	--ph-success:   #059669;    /* emerald-600                        */
	--ph-warning:   #d97706;    /* amber-600                          */
	--ph-danger:    #dc2626;    /* red-600                            */
	--ph-bg:        #f8fafc;    /* slate-50   — page background       */
	--ph-ink:       #0f172a;    /* slate-900  — body text             */
	--ph-muted:     #64748b;    /* slate-500  — secondary text        */
	--ph-line:      #e2e8f0;    /* slate-200  — borders               */
	--ph-white:     #ffffff;
	--ph-radius-sm: 8px;
	--ph-radius:    12px;
	--ph-radius-lg: 16px;
	--ph-radius-xl: 24px;
	--ph-shadow-sm: 0 1px 3px rgba(15,23,42,.07);
	--ph-shadow:    0 4px 16px rgba(15,23,42,.08);
	--ph-shadow-lg: 0 12px 32px rgba(15,23,42,.12);
	--ph-ease:      cubic-bezier(.4,0,.2,1);
	--ph-gutter:    0px;
}

*{box-sizing:border-box;}
html{margin:0;padding:0;overflow-x:hidden;max-width:100%;}
body{overflow-x:hidden;max-width:100%;}

/* OneSignal's web push widget doesn't work inside this site's Android app
   WebView (its SDK explicitly detects it as an "incompatible browser" and
   fails to initialize), leaving a broken spinner icon stuck on screen.
   Push notifications inside the app are handled natively, so the web
   widget has no purpose there anyway — hide it entirely in that context. */
body.ph-android-webview #onesignal-bell-container,
body.ph-android-webview .onesignal-bell-launcher,
body.ph-android-webview [id*="onesignal"],
body.ph-android-webview [class*="onesignal"] {
	display: none !important;
}

/* Android app WebView: keep all web content below the native status/notification bar.
   The website announcement strip is browser-only and is hidden inside the app.
   28px is the fallback for WebViews that do not expose safe-area-inset-top. */
body.ph-android-webview .ph-announce-bar {
	display:none !important;
}
body.ph-android-webview .ph-header {
	padding-top:max(env(safe-area-inset-top, 0px), 28px) !important;
}
body.ph-android-webview .ph-sidebar-head {
	padding-top:max(calc(16px + env(safe-area-inset-top, 0px)), 44px) !important;
}
.ph-body{background:var(--ph-bg);margin:0;padding:0;color:var(--ph-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;}
.ph-main{width:100%;margin:0;padding:0 var(--ph-gutter);}
.ph-section{margin:0;padding:34px 0;border-bottom:1px solid var(--ph-line);}
/* Password-protected page gate */
.ph-pw-gate{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:40px 16px;}
.ph-pw-gate-box{width:100%;max-width:380px;text-align:center;background:#fff;border:1px solid var(--ph-line,#e5e7eb);border-radius:18px;padding:36px 28px;box-shadow:0 4px 24px rgba(15,23,42,.06);}
.ph-pw-gate-icon{font-size:34px;margin-bottom:12px;}
.ph-pw-gate-title{font-size:19px;font-weight:800;color:var(--ph-ink,#111827);margin:0 0 6px;}
.ph-pw-gate-sub{font-size:13.5px;color:var(--ph-muted,#6b7280);margin:0 0 22px;}
#ph-pw-gate-form{display:flex;flex-direction:column;gap:12px;}
#ph-pw-gate-input{width:100%;box-sizing:border-box;padding:12px 14px;border:1.5px solid var(--ph-line,#e5e7eb);border-radius:10px;font-size:14px;text-align:center;transition:border-color .15s;}
#ph-pw-gate-input:focus{outline:none;border-color:var(--ph-accent,#4f46e5);}
#ph-pw-gate-form button{width:100%;padding:12px;background:linear-gradient(135deg,#4f46e5 0%,#8b5cf6 100%);color:#fff;border:none;border-radius:10px;font-weight:700;font-size:14.5px;cursor:pointer;box-shadow:0 4px 14px rgba(79,70,229,.3);transition:box-shadow .2s,opacity .2s;}
#ph-pw-gate-form button:hover{box-shadow:0 6px 18px rgba(79,70,229,.42);}
#ph-pw-gate-form button:disabled{opacity:.6;cursor:default;}
.ph-pw-gate-error{color:#dc2626;font-size:12.5px;font-weight:600;margin:14px 0 0;}
/* Footer 2 — separate legal/privacy links bar, shown sitewide when enabled */
.ph-footer2{background:#f8f9fc;border-top:1px solid #e5e7ef;padding:20px 0;}
.ph-footer2-inner{max-width:var(--ph-max-width,1280px);margin:0 auto;padding:0 var(--ph-gutter,16px);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 24px;}
.ph-footer2-brand{display:flex;align-items:center;gap:7px;flex-shrink:0;}
.ph-footer2-dot{width:7px;height:7px;border-radius:50%;background:var(--ph-accent,#4f46e5);flex-shrink:0;}
.ph-footer2-name{font-size:12.5px;font-weight:800;color:#374151;}
.ph-footer2-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.ph-footer2-links a{color:#6b7280;text-decoration:none;font-size:12.5px;font-weight:600;transition:color .15s;}
.ph-footer2-links a:hover{color:var(--ph-accent,#4f46e5);}
.ph-footer2-sep{color:#d1d5db;font-size:12px;}
.ph-footer2-copyright{margin:0;color:#9ca3af;font-size:12px;}
@media(max-width:700px){
  .ph-footer2{padding:22px 0;}
  .ph-footer2-inner{flex-direction:column;align-items:center;text-align:center;gap:14px;}
  .ph-footer2-links{justify-content:center;row-gap:8px;}
}
@media(max-width:380px){
  .ph-footer2-name,.ph-footer2-links a{font-size:11.5px;}
  .ph-footer2-copyright{font-size:11px;}
}
/* Per-device section visibility (Section Visibility settings) */
@media(max-width:599px){.ph-hide-mobile{display:none!important;}}
@media(min-width:600px) and (max-width:959px){.ph-hide-tablet{display:none!important;}}
@media(min-width:960px){.ph-hide-desktop{display:none!important;}}
.ph-ad-slot{max-width:970px;margin:0 auto;padding:16px var(--ph-gutter,16px);text-align:center;overflow:hidden;}
.ph-section:last-child{border-bottom:none;}
.ph-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:nowrap;gap:12px;}
.ph-section-head h2{font-size:24px;margin:0 0 4px;color:var(--ph-ink);font-weight:800;letter-spacing:-.4px;}
.ph-section-head h3{font-size:12px;font-weight:800;color:var(--ph-accent);margin:0 0 6px;text-transform:uppercase;letter-spacing:1.2px;}
.ph-section-head p{color:var(--ph-muted);max-width:600px;margin:0;font-size:14px;line-height:1.6;}
.ph-section-countdown{display:inline-flex;align-items:center;gap:6px;margin-top:10px;background:var(--ph-accent);color:#fff;padding:7px 16px;border-radius:6px;font-size:13.5px;font-weight:700;letter-spacing:.3px;}
a{transition:color .15s var(--ph-ease);}

/* ===================== Announcement bar ===================== */
/* ===================== Announcement Bar — modern rotating strip ===================== */
.ph-announce-bar{
  color:#fff;font-size:12.5px;font-weight:600;letter-spacing:.1px;
  position:relative;overflow:hidden;
}
.ph-announce-dark{background:#0f172a;}
.ph-announce-gradient{background:linear-gradient(90deg,#1e3a8a,#2563eb,#4338ca);background-size:200% 100%;animation:ph-ann-shift 8s ease infinite;}
.ph-announce-light{background:#f8fafc;color:#1e293b;border-bottom:1px solid #e2e8f0;}
@keyframes ph-ann-shift{0%,100%{background-position:0% 50%;}50%{background-position:100% 50%;}}

.ph-announce-inner{
  width:100%;margin:0;padding:8px var(--ph-gutter);
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  min-height:34px;
}

/* Rotating message track — crossfade between messages */
.ph-announce-track{
  position:relative;flex:1;min-width:0;
  height:18px;display:flex;align-items:center;
}
.ph-announce-msg{
  position:absolute;left:0;right:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  opacity:0;transform:translateY(6px);
  transition:opacity .45s ease,transform .45s ease;
  pointer-events:none;
}
.ph-announce-msg-on{
  opacity:1;transform:translateY(0);
  pointer-events:auto;
  position:relative;
}

/* Progress dots — only shown when 2+ messages */
.ph-announce-dots{display:flex;align-items:center;gap:5px;flex-shrink:0;margin-left:4px;}
.ph-announce-dot{
  width:5px;height:5px;border-radius:50%;
  background:currentColor;opacity:.3;
  transition:opacity .3s,width .3s;
}
.ph-announce-dot-on{opacity:1;width:14px;border-radius:3px;}

.ph-announce-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}

.ph-announce-close{
  display:flex;align-items:center;justify-content:center;
  width:20px;height:20px;border-radius:50%;
  background:rgba(255,255,255,.12);color:inherit;
  border:none;cursor:pointer;flex-shrink:0;
  transition:background .15s;
  opacity:.8;
}
.ph-announce-light .ph-announce-close{background:rgba(15,23,42,.08);}
.ph-announce-close:hover{opacity:1;background:rgba(255,255,255,.22);}
.ph-announce-light .ph-announce-close:hover{background:rgba(15,23,42,.14);}

/* Dismissed state */
.ph-announce-bar.ph-announce-dismissed{
  max-height:0;padding:0;margin:0;opacity:0;
  overflow:hidden;
  transition:max-height .3s ease,opacity .2s ease;
}
.ph-social-icons{display:flex;align-items:center;gap:12px;flex:0 0 auto;}
.ph-social-icons a{color:inherit;opacity:.85;display:flex;transition:opacity .15s var(--ph-ease);}
.ph-social-icons a:hover{opacity:1;}
.ph-footer .ph-social-icons{margin-top:14px;color:#fff;}
.ph-sidebar-socials{padding:16px var(--ph-gutter);color:var(--ph-ink);}
.ph-sidebar-socials .ph-social-icons{color:var(--ph-ink);}

/* ===================== Header — flat, bold, no blur ===================== */

/* ── Header typography reset — immune to WordPress/plugin font overrides ── */
.ph-header,.ph-header *{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;}
.ph-desktop-nav a{font-size:13.5px!important;font-weight:700!important;}
.ph-sidebar-nav a{font-size:14px!important;font-weight:600!important;}
.ph-logo-text{font-size:21px!important;font-weight:900!important;}
.ph-login-icon{font-size:13px!important;font-weight:700!important;}
.ph-cart-btn,.ph-header-actions a,.ph-header-actions button{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;}
.ph-header{position:sticky;top:0;z-index:9000;background:#fff;border-bottom:2px solid var(--ph-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:14px;padding-top:env(safe-area-inset-top,0px);}
.ph-header-static{position:static;}
.ph-header-inner{width:100%;margin:0;display:flex;align-items:center;gap:22px;padding:12px var(--ph-gutter);min-height:60px;}
.ph-sidebar-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:38px;height:38px;flex:0 0 38px;border:2px solid var(--ph-ink);background:#fff;cursor:pointer;border-radius:8px;box-sizing:border-box;padding:0;}
.ph-sidebar-toggle span{display:block;width:18px;height:2px;background:var(--ph-ink);margin:0 auto;}
.ph-logo{display:flex;align-items:center;height:38px;line-height:0;flex:0 0 auto;}
.ph-logo img{height:36px !important;width:auto !important;max-width:160px !important;max-height:36px !important;object-fit:contain !important;display:block;margin:0;}
.ph-logo-text{font-weight:900;font-size:21px;color:var(--ph-ink);letter-spacing:-.4px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;}
.ph-desktop-nav{display:flex;align-items:center;gap:24px;flex:1 1 auto;}
.ph-desktop-nav a{position:relative;color:var(--ph-ink);text-decoration:none;font-size:13.5px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;padding:6px 0;line-height:1.4;}
.ph-desktop-nav a:hover{color:var(--ph-accent);}
.ph-header-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex:0 0 auto;}
.ph-header-actions svg,.ph-sidebar-toggle svg{display:block;flex-shrink:0;}

.ph-login-icon{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--ph-ink);text-decoration:none;font-size:13px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;position:relative;border:2px solid var(--ph-ink);border-radius:8px;box-sizing:border-box;height:38px;padding:0 14px;transition:background .15s var(--ph-ease),color .15s var(--ph-ease);}
.ph-login-icon svg{width:18px !important;height:18px !important;}
.ph-login-icon:hover{background:var(--ph-ink);color:#fff;}
.ph-account-menu{position:relative;display:flex;}
.ph-account-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:2px solid var(--ph-ink);border-radius:10px;min-width:170px;padding:6px;display:none;z-index:20;}
.ph-account-menu:hover .ph-account-dropdown,.ph-account-menu.open .ph-account-dropdown{display:block;}
.ph-account-dropdown a{display:block;padding:9px 12px;border-radius:6px;color:var(--ph-ink);text-decoration:none;font-size:13.5px;font-weight:600;}
.ph-account-dropdown a:hover{background:var(--ph-bg);}
.ph-cart-icon{position:relative;display:flex;align-items:center;justify-content:center;color:var(--ph-ink);border:2px solid var(--ph-ink);border-radius:8px;box-sizing:border-box;width:38px;height:38px;padding:0;flex:0 0 38px;}
.ph-cart-icon svg{width:19px !important;height:19px !important;}
.ph-cart-icon:hover{background:var(--ph-ink);color:#fff;}
.ph-cart-count{position:absolute;top:-8px;right:-8px;background:var(--ph-accent);color:#fff;font-size:10px;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-weight:800;box-shadow:0 0 0 2px #fff;}

@media (max-width: 1024px){
	.ph-desktop-nav{display:none;}
	.ph-sidebar-toggle{display:flex;}
}
@media (max-width: 600px){
	.ph-header-inner{gap:8px;padding:10px 12px;}
	.ph-logo img{height:30px !important;max-height:30px !important;}
	.ph-logo-text{font-size:18px;}
	.ph-login-icon span{display:none;}
	.ph-login-icon{padding:8px;}
	.ph-announce-inner{padding:7px 12px;min-height:30px;}
	.ph-announce-msg{font-size:11.5px;}
	.ph-header-actions{gap:6px;}
	.ph-header-social-icon{width:34px;flex:0 0 34px;height:34px;}
	.ph-header-social-icon svg{width:16px !important;height:16px !important;}
	.ph-cart-btn{width:34px;height:34px;flex:0 0 34px;padding:0;}
}
/* Very narrow phones — hide the least-essential header icons (WhatsApp,
   Telegram) so hamburger + logo + account + cart always fit without
   overflowing. Both are still reachable from the sidebar menu. */
@media (max-width: 380px){
	.ph-header-inner{gap:6px;padding:8px 10px;}
	.ph-logo-text{font-size:16px;}
	.ph-header-whatsapp,.ph-header-telegram{display:none;}
}

/* ===================== Sidebar ===================== */
.ph-sidebar{position:fixed;top:0;left:-300px;width:280px;height:100%;background:#fff;z-index:10001;box-shadow:var(--ph-shadow-lg);transition:left .25s var(--ph-ease);overflow-y:auto;border-right:2px solid var(--ph-ink);}
.ph-sidebar.active{left:0;}
.ph-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:calc(16px + env(safe-area-inset-top,0px));border-bottom:2px solid var(--ph-ink);}
.ph-sidebar-head img{height:32px;}
.ph-sidebar-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--ph-ink);line-height:1;}
.ph-sidebar-nav{display:flex;flex-direction:column;padding:8px 0;}
.ph-sidebar-nav a{padding:13px 16px;color:var(--ph-ink);text-decoration:none;font-size:14px;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;border-bottom:1px solid var(--ph-line);}
.ph-sidebar-nav a:hover{background:var(--ph-bg);color:var(--ph-accent);}
.ph-sidebar-overlay{position:fixed;inset:0;background:rgba(22,22,41,.5);z-index:10000;display:none;}
.ph-sidebar-overlay.active{display:block;}

/* ===================== Carousel core ===================== */
.ph-carousel{position:relative;cursor:grab;}
.ph-carousel:active{cursor:grabbing;}
.ph-carousel-viewport{overflow-x:hidden;}
.ph-carousel-track{display:flex;align-items:stretch;transition:transform .45s var(--ph-ease);touch-action:pan-y;}
.ph-car-dots{position:static;display:flex;align-items:center;gap:4px;padding:12px var(--ph-gutter) 0;min-height:4px;}
.ph-car-dots:empty{display:none;padding:0;}
.ph-car-progress-seg{flex:1 1 0;height:3px;background:var(--ph-line);border-radius:3px;overflow:hidden;cursor:pointer;}
.ph-car-progress-fill{display:block;height:100%;width:0%;background:var(--ph-accent);border-radius:3px;}
.ph-slide{flex:0 0 calc(100% / var(--ph-cards-desktop, 1));text-decoration:none;display:block;padding:0;box-sizing:border-box;}
.ph-carousel:not([data-cards-desktop="1"]) .ph-slide{padding:0 3px;}
/* Slide wrapper — aspect ratio set via inline style from admin settings */
.ph-slide-16-9,.ph-slide-img{position:relative;width:100%;overflow:hidden;border-radius:var(--ph-radius-sm);border:1px solid var(--ph-line);background:var(--ph-bg);}
.ph-slide-16-9{aspect-ratio:16/9;} /* default fallback only — overridden by admin setting */
.ph-slide-16-9 img,.ph-slide-img img{width:100% !important;height:100% !important;object-fit:cover !important;display:block;}
.ph-slide-placeholder{width:100%;height:100%;background:var(--ph-bg);}

/* ===================== Store logos ===================== */
/* Grid columns + row height controlled by inline <style> in class-ph-frontend.php
   via --ph-store-cards-desktop/tablet/mobile — this file keeps only shared visuals. */
.ph-store-row{ gap:10px; }
@media(min-width:600px){ .ph-store-row{ gap:12px; } }
.ph-store-logo{
  background:#fff;
  border:1px solid var(--ph-line);border-radius:var(--ph-radius-sm);
  display:flex;align-items:center;justify-content:center;
  transition:border-color .15s var(--ph-ease),transform .15s var(--ph-ease);
  text-decoration:none;
}
.ph-store-logo:hover{border-color:var(--ph-ink);transform:translateY(-2px);}
.ph-store-logo img{max-width:74% !important;max-height:54% !important;width:auto !important;height:auto !important;object-fit:contain !important;}

/* ===================== Categories ===================== */
.ph-cat-grid{display:flex;flex-wrap:wrap;gap:10px;}
.ph-cat-card{width:104px;flex:0 0 104px;background:#fff;border:1px solid var(--ph-line);border-radius:var(--ph-radius-sm);text-decoration:none;text-align:center;padding:14px 8px;color:var(--ph-ink);transition:border-color .15s var(--ph-ease),transform .15s var(--ph-ease);}
.ph-cat-card:hover{border-color:var(--ph-accent);transform:translateY(-2px);}
.ph-cat-card img{width:48px !important;height:48px !important;max-width:48px !important;max-height:48px !important;object-fit:cover !important;border-radius:50%;margin-bottom:8px;border:1px solid var(--ph-line);}
.ph-cat-card span{display:block;font-size:12px;font-weight:700;}

/* ===================== Products ===================== */
.ph-product-tabs{display:flex;gap:6px;overflow-x:auto;margin-bottom:18px;padding-bottom:4px;scrollbar-width:none;}
.ph-product-tabs::-webkit-scrollbar{display:none;}
.ph-tab{border:1.5px solid var(--ph-ink);background:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:12.5px;font-weight:700;white-space:nowrap;color:var(--ph-ink);}
.ph-tab:hover{background:var(--ph-bg);}
.ph-tab.active{background:var(--ph-accent);color:#fff;border-color:var(--ph-accent);}

@media(max-width:959px){}
@media(max-width:600px){}


.ph-product-link{text-decoration:none;color:var(--ph-ink);}


.ph-product-card h4{font-size:12.5px;margin:10px 0 5px;font-weight:600;min-height:32px;line-height:1.4;}
.ph-product-price{font-weight:800;color:var(--ph-ink);font-size:14px;margin-bottom:10px;}


.ph-buy-now-btn:active{transform:translateY(1px);}
.ph-buy-now-btn:disabled{background:#ccc;cursor:not-allowed;}
.ph-buy-now-btn.is-loading{opacity:.6;pointer-events:none;}
.ph-product-grid-wrap{position:relative;min-height:120px;transition:opacity .2s var(--ph-ease);}
.ph-product-grid-wrap.loading{opacity:.4;}

/* ===================== Testimonials ===================== */
/* ===================== Testimonials (Grid layout) ===================== */
/* ── Testimonials ───────────────────────────────────────────── */
/* Header */
.ph-t-header { text-align:center; margin-bottom:36px; }
.ph-t-label { display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--ph-accent); margin-bottom:10px; }
.ph-t-title { font-size:30px; font-weight:900; color:var(--ph-ink); margin:0 0 8px; line-height:1.2; }
.ph-t-subtitle { font-size:14px; color:var(--ph-muted); margin:0; }

/* Grid */
.ph-t-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(min(280px, 100%), 1fr));
  gap:22px;
  align-items:stretch;
}

/* Card */
.ph-t-card {
  position:relative;
  background:#fff;
  border-radius:20px;
  padding:28px 24px 22px;
  box-shadow:0 2px 12px rgba(0,0,0,.06);
  border:1.5px solid #f0f0f0;
  display:flex;
  flex-direction:column;
  box-sizing:border-box;
  transition:transform .22s ease, box-shadow .22s ease;
  overflow:hidden;
}
.ph-t-card::before {
  content:'';
  position:absolute;
  top:0; left:0; right:0;
  height:4px;
  background:linear-gradient(90deg, var(--ph-accent), var(--ph-accent2));
  border-radius:20px 20px 0 0;
}
.ph-t-card:hover {
  transform:translateY(-4px);
  box-shadow:0 8px 32px rgba(79,70,229,.12);
  border-color:#e0e7ff;
}

/* Quote icon */
.ph-t-quote-icon {
  color:#e0e7ff;
  margin-bottom:12px;
  line-height:1;
}

/* Stars */
.ph-t-stars {
  display:flex;
  gap:3px;
  margin-bottom:16px;
}

/* Review text */
.ph-t-text {
  color:#374151;
  font-size:15px;
  line-height:1.75;
  font-weight:400;
  font-style:italic;
  margin:0 0 24px;
  flex:1;
}

/* Footer */
.ph-t-foot {
  display:flex;
  align-items:center;
  gap:12px;
  padding-top:16px;
  border-top:1px solid #f3f4f6;
}

/* Avatar */
.ph-t-avatar {
  width:48px; height:48px; border-radius:50%; flex-shrink:0;
  overflow:hidden; display:flex; align-items:center; justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.12);
}
.ph-t-avatar img { width:100%; height:100%; object-fit:cover; display:block; }
.ph-t-avatar span { color:#fff; font-weight:800; font-size:18px; line-height:1; }

/* Name / role */
.ph-t-who strong { display:block; font-size:14px; color:var(--ph-ink); font-weight:800; line-height:1.3; }
.ph-t-role { font-size:12px; color:var(--ph-muted); display:block; margin-top:2px; }
.ph-t-verified {
  display:inline-flex; align-items:center; gap:4px;
  font-size:11px; font-weight:700; color:#059669;
  background:#d1fae5; padding:3px 9px 3px 7px; border-radius:20px;
  margin-top:4px;
}
.ph-t-verified svg { flex-shrink:0; }

/* Mobile: horizontal scroll */
@media(max-width:600px){
  .ph-t-header { text-align:left; }
  .ph-t-title { font-size:22px; }
  .ph-t-grid {
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    gap:14px;
    margin:0 calc(var(--ph-gutter) * -1);
    padding:4px var(--ph-gutter) 12px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .ph-t-grid::-webkit-scrollbar { display:none; }
  .ph-t-grid > .ph-t-card {
    flex:0 0 85vw;
    max-width:320px;
    scroll-snap-align:start;
  }
}




/* ===================== Video ===================== */
.ph-video-carousel .ph-video-slide{flex:0 0 calc(100% / var(--ph-cards-desktop, 3));padding:0 6px;box-sizing:border-box;}
.ph-video-thumb{position:relative;aspect-ratio:16/9;background:var(--ph-ink);border-radius:var(--ph-radius-sm);overflow:hidden;}
.ph-video-thumb img{width:100% !important;height:100% !important;object-fit:cover !important;opacity:.85;}
.ph-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:#fff;border:none;cursor:pointer;color:var(--ph-ink);display:flex;align-items:center;justify-content:center;box-shadow:var(--ph-shadow);}
.ph-video-slide:hover .ph-play-btn{transform:translate(-50%,-50%) scale(1.08);}
.ph-video-modal{display:none;position:fixed;inset:0;background:rgba(22,22,41,.92);z-index:99999;align-items:center;justify-content:center;}
.ph-video-modal.active{display:flex;}
.ph-video-modal-inner{width:90%;max-width:900px;position:relative;}
.ph-video-modal-body iframe,.ph-video-modal-body video{width:100%;aspect-ratio:16/9;border:none;border-radius:var(--ph-radius-sm);}
.ph-video-modal-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:32px;cursor:pointer;line-height:1;}

/* ===================== Newsletter ===================== */

.ph-newsletter-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;}
.ph-newsletter-inner h2{margin:0 0 4px;color:#fff;font-size:20px;font-weight:800;}
.ph-newsletter-inner p{margin:0;color:rgba(255,255,255,.7);font-size:13.5px;}
.ph-newsletter-form{display:flex;gap:8px;flex:0 0 auto;}
.ph-newsletter-form input{padding:11px 16px;border-radius:6px;border:none;min-width:220px;font-size:13px;}
.ph-newsletter-form input:focus{outline:2px solid var(--ph-accent);}
.ph-newsletter-form button{background:var(--ph-accent);color:#fff;border:none;padding:11px 22px;border-radius:6px;font-weight:700;font-size:13px;cursor:pointer;}
.ph-newsletter-form button:hover{opacity:.9;}
.ph-newsletter-message{width:100%;font-size:12.5px;color:#fff;margin-top:8px;font-weight:600;}
.ph-newsletter-message.is-error{color:#ff8a80;}

/* ===================== App download ===================== */
/* App Download — centered immersive layout */

/* .ph-app-download::before/::after removed — leftover from an older
   design, unconstrained by any overflow:hidden container on this class,
   which could push page width beyond the viewport. The current design's
   own decorative element (.ph-app-band::before) is properly contained. */
.ph-app-download-inner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:28px;position:relative;z-index:1;}
.ph-app-text h2{color:#fff;margin:0 0 10px;font-size:28px;font-weight:800;letter-spacing:-.3px;line-height:1.2;}
.ph-app-text p{color:rgba(255,255,255,.85);margin:0;font-size:15px;max-width:480px;line-height:1.6;}
.ph-app-badges{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;}
.ph-app-badges a{display:inline-block;transition:transform .18s,opacity .18s;}
.ph-app-badges a:hover{transform:translateY(-2px);opacity:.92;}
.ph-app-badges img{height:48px;border-radius:8px;}
/* Feature pills row */
.ph-app-features{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;}
.ph-app-feature{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.12);color:#fff;font-size:12.5px;font-weight:600;padding:5px 13px;border-radius:100px;}
.ph-app-feature svg{flex-shrink:0;}

/* ===================== Footer — flat, bold ===================== */

/* Mobile nav bar clearance — padding on the whole container, not
   :last-child, since hidden "View All" modal divs render as siblings
   after each offer/video section, which made :last-child match an
   invisible modal instead of the actual last visible section. This
   also ensures correct clearance when the footer is turned off,
   since the footer (when present) isn't inside .ph-main to begin
   with, so this was never truly dependent on it. */
body.mnbp-has-navbar .ph-main {
  padding-bottom: 80px;
}
@media (min-width: 769px) {
  body.mnbp-has-navbar .ph-main {
    padding-bottom: 20px;
  }
}

/* ── 4-col grid ── */
.ph-footer-inner {
  width: 100%;
  padding: 48px var(--ph-gutter) 32px;
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 32px;
}

/* ── Brand col ── */
.ph-footer-sitename {
  font-size: 20px;
  font-weight: 900;
  color: #fff;
  margin-bottom: 12px;
}
.ph-footer-logo {
  height: 36px;
  width: auto;
  object-fit: contain;
  display: block;
  margin-bottom: 12px;
  filter: brightness(0) invert(1);
}
.ph-footer-brand p {
  color: rgba(255,255,255,.5);
  font-size: 13px;
  line-height: 1.75;
  margin: 0 0 18px;
}

/* Social icons */
.ph-footer .ph-social-icons { margin-top: 4px; gap: 8px; flex-wrap: wrap; }
.ph-social-icons { display: flex; align-items: center; gap: 8px; }
.ph-social-icons a { color: inherit; opacity: .85; display: flex; transition: opacity .15s; }
.ph-social-icons a:hover { opacity: 1; }
.ph-social-icon {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: opacity .18s, transform .18s;
  flex-shrink: 0;
}
.ph-social-icon:hover { opacity: .85; transform: translateY(-2px); }

/* ── Column headings (desktop visible, mobile hidden by JS) ── */
.ph-footer-acc-btn {
  display: flex;
  width: 100%;
  background: none;
  border: none;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  padding: 0 0 14px;
  cursor: default;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(255,255,255,.1);
  margin-bottom: 14px;
}
.ph-footer-acc-btn span { color: rgba(255,255,255,.45); }
.ph-footer-chevron { display: none; transition: transform .25s; flex-shrink: 0; }
.ph-footer-acc-body { overflow: hidden; }

/* Links */
.ph-footer-col ul { list-style: none; margin: 0; padding: 0; }
.ph-footer-col ul li { margin-bottom: 10px; }
.ph-footer-col ul a {
  color: rgba(255,255,255,.6);
  text-decoration: none;
  font-size: 13.5px;
  font-weight: 400;
  transition: color .14s, padding-left .14s;
  display: block;
}
.ph-footer-col ul a:hover { color: #fff; padding-left: 4px; }

/* ── Payment row ── */
.ph-footer-payments {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  padding: 24px var(--ph-gutter) 20px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.ph-footer-pay-label {
  font-size: 13px;
  font-weight: 500;
  color: rgba(255,255,255,.45);
  letter-spacing: 0;
  text-transform: none;
}
.ph-footer-pay-logos {
  background: #fff;
  border-radius: 12px;
  padding: 12px 20px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  width: 100%;
  max-width: 680px;
  box-sizing: border-box;
}
.ph-footer-pay-logos img {
  height: 30px;
  width: auto;
  display: block;
  object-fit: contain;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}
.ph-pay-badge {
  font-size: 11px;
  font-weight: 700;
  color: rgba(255,255,255,.55);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  padding: 4px 10px;
  border-radius: 20px;
}

/* ── Copyright ── */
.ph-footer-bottom {
  border-top: 1px solid rgba(255,255,255,.06);
  text-align: center;
  padding: 14px var(--ph-gutter);
  font-size: 12px;
  color: rgba(255,255,255,.28);
}
.ph-footer-bottom p { margin: 0; }

/* ── Tablet: 2-col ── */
@media (min-width: 601px) and (max-width: 959px) {
  .ph-footer-inner { grid-template-columns: 1fr 1fr; gap: 24px; padding: 36px var(--ph-gutter) 24px; }
  .ph-footer-brand { grid-column: 1 / -1; }
  .ph-footer-acc-btn { cursor: default; }
  .ph-footer-payments { justify-content: flex-start; }
}

/* ── Mobile: accordion ── */
@media (max-width: 600px) {
  .ph-footer-inner { grid-template-columns: 1fr !important; gap: 0 !important; padding: 28px var(--ph-gutter) 0; }
  .ph-footer-brand { text-align: center; padding-bottom: 24px; }
  .ph-footer-brand p { text-align: center; }
  .ph-footer-brand .ph-social-icons { justify-content: center; }
  .ph-footer-col { border-top: 1px solid rgba(255,255,255,.12); }
  .ph-footer-col:last-child { border-bottom: 1px solid rgba(255,255,255,.12); }
  .ph-footer-acc-btn {
    padding: 18px 0;
    margin-bottom: 0;
    cursor: pointer;
    border-bottom: none;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .5px;
  }
  .ph-footer-acc-btn span { color: #fff; }
  .ph-footer-chevron { display: block; color: rgba(255,255,255,.5); }
  .ph-footer-acc-body { max-height: 0; transition: max-height .3s ease; }
  .ph-footer-acc-body ul { padding: 4px 0 16px; }
  .ph-footer-payments { align-items: center; }
}

/* ── Boxed ── */
.ph-layout-boxed .ph-footer-inner,
.ph-layout-boxed .ph-footer-payments { max-width: var(--ph-max-width, 1280px); margin: 0 auto; }


/* ══════════════════════════════════
   MISSING FRONTEND STYLES
   ══════════════════════════════════ */

/* Banner carousel */
.ph-banner-carousel { width:100%; overflow:hidden; position:relative; }

/* Categories section */
.ph-categories { padding:20px 0; }

/* Community / Channels section */
.ph-community { padding:24px 0; }
.ph-community-inner { max-width:var(--ph-max-width,1280px); margin:0 auto; padding:0 var(--ph-gutter); }
.ph-community-heading { font-size:20px; font-weight:800; color:var(--ph-ink); margin:0 0 6px; }
.ph-community-sub { font-size:14px; color:var(--ph-muted); margin:0 0 20px; }
.ph-community-text { font-size:14px; color:var(--ph-muted); line-height:1.7; }
.ph-community-channels { display:flex; flex-direction:column; gap:10px; }
.ph-channel-card { display:flex; align-items:center; gap:14px; background:#fff; border:1.5px solid var(--ph-line); border-radius:14px; padding:14px 16px; text-decoration:none; color:var(--ph-ink); transition:box-shadow .2s,transform .2s; }
.ph-channel-card:hover { box-shadow:0 4px 16px rgba(37,99,235,.1); transform:translateY(-2px); }
.ph-channel-icon { width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:22px; }
.ph-channel-wa .ph-channel-icon { background:#dcfce7; }
.ph-channel-tg .ph-channel-icon { background:#dbeafe; }
.ph-channel-body { flex:1; min-width:0; }
.ph-channel-name { font-size:14px; font-weight:700; color:var(--ph-ink); display:block; }
.ph-channel-label { font-size:12px; color:var(--ph-muted); display:block; }
.ph-channel-count { font-size:12px; font-weight:600; color:var(--ph-accent); margin-top:2px; display:block; }
.ph-channel-arrow { color:var(--ph-muted); flex-shrink:0; }

/* Empty state */
.ph-empty { text-align:center; padding:40px 20px; color:var(--ph-muted); font-size:14px; }
.ph-empty svg { margin:0 auto 12px; display:block; }

/* Modal */
.ph-modal { position:fixed; inset:0; background:rgba(0,0,0,.5); z-index:9999; display:flex; align-items:center; justify-content:center; padding:16px; }
.ph-modal-box{background:#fff;border-radius:16px;max-width:560px;width:calc(100% - 32px);max-height:82vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.2);}
.ph-modal-box--wide { max-width:720px; }
.ph-modal-head { display:flex; align-items:center; justify-content:space-between; padding:16px 20px; border-bottom:1px solid var(--ph-line); }
.ph-modal-title { font-size:16px; font-weight:800; color:var(--ph-ink); margin:0; }
.ph-modal-close { background:none; border:none; cursor:pointer; color:var(--ph-muted); font-size:20px; line-height:1; padding:0; }
.ph-modal-body { padding:20px; }

/* Offer / Store modal grids */
.ph-store-modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.ph-offer-modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}

/* Offers & Stores sections */
.ph-offers,.ph-stores { padding:20px 0; }

/* Products section on home */
.ph-products { padding:20px 0; }

/* Videos section */
.ph-videos { padding:20px 0; }

/* View All button */
.ph-view-all-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;border-radius:20px;border:1.5px solid #2563eb;font-size:13px;font-weight:700;color:#2563eb;text-decoration:none;background:transparent;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap;flex-shrink:0;margin-left:auto;}
.ph-view-all-btn:hover{background:#2563eb;color:#fff;}

/* VA (View All) page */
.ph-va-page { padding:20px 16px 40px; max-width:1200px; margin:0 auto; overflow-x:hidden; }
.ph-va-topbar { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.ph-va-back { display:inline-flex; align-items:center; gap:5px; font-size:13px; font-weight:600; color:var(--ph-accent); text-decoration:none; }
.ph-va-title { font-size:22px; font-weight:900; color:var(--ph-ink); margin:0; }
.ph-va-subtitle { font-size:14px; color:var(--ph-muted); margin:6px 0 0; }
.ph-va-group-title { font-size:16px; font-weight:800; color:var(--ph-ink); margin:24px 0 12px; padding-bottom:8px; border-bottom:2px solid var(--ph-line); }
.ph-va-store-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:14px; }
.ph-va-store-card{background:#fff;border:1.5px solid var(--ph-line);border-radius:12px;padding:16px 12px;text-align:center;text-decoration:none;color:var(--ph-ink);transition:box-shadow .2s;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:90px;max-height:120px;}
.ph-va-store-card:hover{box-shadow:0 4px 16px rgba(37,99,235,.1);}
.ph-va-store-card img{max-width:100%;max-height:52px;width:auto;height:auto;object-fit:contain;display:block;}
.ph-va-store-card span{font-size:11px;font-weight:600;color:var(--ph-muted);margin-top:6px;display:block;}
.ph-va-offer-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; }
.ph-va-offer-card { background:#fff; border:1.5px solid var(--ph-line); overflow:hidden; text-decoration:none; color:var(--ph-ink); transition:box-shadow .2s; display:block; }
.ph-va-offer-card img { width:100%; height:100%; object-fit:cover; display:block; }
.ph-va-offer-card:hover { box-shadow:0 4px 16px rgba(37,99,235,.1); }

/* Cart count in header */
.ph-store-cart-count { position:absolute; top:-6px; right:-6px; background:var(--ph-accent); color:#fff; border-radius:50%; width:18px; height:18px; font-size:10px; font-weight:800; display:flex; align-items:center; justify-content:center; }
.ph-store-add-cart { cursor:pointer; }

/* Shortcode section wrapper */
.ph-section-shortcode { padding:0; }

/* Section head left */
.ph-section-head-left{flex:1;min-width:0;}

/* Theme footer wrap (inject on theme pages) */
.ph-theme-footer-wrap { margin-top:40px; }

/* Testimonials */
.ph-testimonials { padding:32px 0; }

/* ── Mobile responsive for home sections ── */
@media(max-width:600px){
  .ph-va-page { padding:14px 12px 80px; }
  .ph-va-store-grid { grid-template-columns:repeat(2,1fr); }
  .ph-va-offer-grid { grid-template-columns:1fr; }
  .ph-store-modal-grid { grid-template-columns: repeat(2,1fr); gap:8px; }
  .ph-offer-modal-grid { grid-template-columns: 1fr; }
  .ph-va-store-card { min-height:70px; max-height:90px; padding:10px 8px; }
  .ph-va-store-card img { max-height:38px; }
  .ph-community-channels { gap:8px; }
  .ph-channel-card { padding:12px; }
  .ph-modal-box { border-radius:12px; }
}

/* ── Partner Stores section on home ── */
.ph-store-grid-home{display:flex;flex-wrap:wrap;gap:12px;}
.ph-store-card{background:#fff;border:1.5px solid var(--ph-line);border-radius:12px;padding:16px;display:flex;align-items:center;justify-content:center;width:120px;height:80px;transition:box-shadow .2s,transform .2s;text-decoration:none;flex-shrink:0;}
.ph-store-card:hover{box-shadow:0 4px 16px rgba(37,99,235,.1);transform:translateY(-2px);}
.ph-store-card img{max-width:100%;max-height:50px;width:auto;height:auto;object-fit:contain;display:block;}
@media(max-width:600px){.ph-store-card{width:calc(50% - 6px);height:70px;}}


/* ══════════════════════════════════════════════
   SALE CALENDAR — Card-per-row design
   ══════════════════════════════════════════════ */

.ph-sale-cal { padding: 28px 0; }
.ph-sale-cal .ph-sc-wrap { width: 100%; }

/* Outer card wrapper */
.ph-sc-wrap {
  background: #fff;
  border-radius: 20px;
  overflow: visible;
  box-shadow: 0 4px 24px rgba(0,0,0,.09);
  border: 1px solid #e8eaed;
}
.ph-sc-wrap > .ph-sc-top {
  border-radius: 20px 20px 0 0;
}
.ph-sc-wrap > .ph-sc-thead {
  border-radius: 0;
}

/* ── Header ── */
.ph-sc-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px 16px 12px;
  background: linear-gradient(130deg, #0f766e 0%, #0891b2 100%);
  min-height: 80px;
}
.ph-sc-title-block {
  display: flex; align-items: center; gap: 16px;
}
.ph-sc-cal-emoji {
  display: inline-flex; flex-direction: column; align-items: center;
  width: 54px; background: #fff; border-radius: 12px;
  overflow: hidden; box-shadow: 0 3px 10px rgba(0,0,0,.22);
  flex-shrink: 0;
}
.ph-sc-cal-month {
  background: #e63946; color: #fff;
  font-size: 11px; font-weight: 900;
  text-transform: uppercase; letter-spacing: .5px;
  width: 100%; text-align: center;
  padding: 3px 0; display: block;
}
.ph-sc-cal-day {
  font-size: 26px; font-weight: 900; color: #111827;
  line-height: 1.1; padding: 3px 0 5px;
  display: block; text-align: center; width: 100%;
}
.ph-sc-heading {
  font-size: 26px; font-weight: 900; color: #fff;
  margin: 0; letter-spacing: -.3px;
}

/* Pager */
.ph-sc-pager { display: flex; align-items: center; gap: 10px; }
.ph-sc-pager-btn {
  width: 36px; height: 36px; border-radius: 10px;
  background: rgba(255,255,255,.18); color: #fff;
  display: flex; align-items: center; justify-content: center;
  text-decoration: none; font-size: 20px; font-weight: 700; line-height: 1;
  transition: background .15s; flex-shrink: 0;
}
.ph-sc-pager-btn:hover { background: rgba(255,255,255,.32); }
.ph-sc-pager-dis { opacity: .3; pointer-events: none; }
.ph-sc-pager-info {
  font-size: 13px; font-weight: 600;
  color: rgba(255,255,255,.8); min-width: 32px; text-align: center;
}

/* ── Column headers ── */
.ph-sc-thead {
  display: grid;
  grid-template-columns: 1fr 200px 140px;
  background: #f0fdf9;
  border-bottom: 2px solid #ccfbef;
  padding: 12px 16px;
  gap: 12px;
}
.ph-sc-th {
  font-size: 11px; font-weight: 800;
  letter-spacing: 1px; text-transform: uppercase;
  color: #0f766e;
}

/* ── Sale rows ── */
.ph-sc-row {
  display: grid;
  grid-template-columns: 1fr 200px 140px;
  padding: 14px 16px;
  border-bottom: 1px solid #f3f4f6;
  align-items: center;
  gap: 12px;
  transition: background .15s;
}
.ph-sc-row:last-child { border-bottom: none; }
.ph-sc-row:hover { background: #f9fafb; }

/* Brand cell */
.ph-sc-cell-brand {
  display: flex; align-items: center; gap: 16px; min-width: 0;
}
.ph-sc-logo {
  width: 72px; height: 48px; flex-shrink: 0;
  border: 1px solid #e5e7eb; border-radius: 10px;
  background: #fff; display: flex;
  align-items: center; justify-content: center;
  overflow: hidden; padding: 6px;
}
.ph-sc-logo img {
  max-width: 100%; max-height: 100%;
  object-fit: contain; display: block;
}
.ph-sc-logo-init {
  font-size: 14px; font-weight: 800;
  color: #6b7280; letter-spacing: .5px;
}
.ph-sc-info { flex: 1; min-width: 0; }
.ph-sc-sale-link {
  display: block; font-size: 15px; font-weight: 700;
  color: #111827; text-decoration: none;
  margin-bottom: 4px; line-height: 1.35;
}
a.ph-sc-sale-link:hover { color: #0f766e; }
.ph-sc-brand-nm {
  font-size: 12px; color: #9ca3af; display: block;
}

/* Date cell */
.ph-sc-cell-date { }
.ph-sc-date-str {
  font-size: 14px; font-weight: 600;
  color: #374151; white-space: nowrap;
}

/* Status badge */
.ph-sc-badge {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 14px; border-radius: 20px;
  font-size: 13px; font-weight: 700;
  white-space: nowrap;
}
.ph-sc-dot {
  width: 8px; height: 8px; border-radius: 50%;
  flex-shrink: 0; display: inline-block;
}

/* ── Tablet ── */
@media(min-width:601px) and (max-width:959px) {
  .ph-sc-thead { grid-template-columns: 1fr 160px 120px; padding: 10px 16px; gap: 8px; }
  .ph-sc-row   { grid-template-columns: 1fr 160px 120px; padding: 14px 16px; gap: 8px; }
  .ph-sc-top   { padding: 16px 12px; min-height: 76px; }
  .ph-sc-heading { font-size: 22px; }
  .ph-sc-cal-emoji { width: 48px; }
  .ph-sc-cal-day { font-size: 22px; }
  .ph-sc-logo { width: 58px; height: 40px; }
  .ph-sc-sale-link { font-size: 14px; }
  .ph-sc-date-str { font-size: 13px; }
}

/* ── Mobile ── */
@media(max-width:600px) {
  .ph-sc-wrap { border-radius: 16px; }
  .ph-sc-top  { padding: 12px 12px; min-height: 68px; gap: 10px; }
  .ph-sc-heading { font-size: 18px; }
  .ph-sc-cal-emoji { width: 42px; }
  .ph-sc-cal-month { font-size: 9px; }
  .ph-sc-cal-day { font-size: 19px; padding: 2px 0 4px; }
  /* Mobile: hide date col, merge status into brand row */
  .ph-sc-thead {
    grid-template-columns: 1fr 90px;
    padding: 8px 14px; gap: 6px;
  }
  .ph-sc-th-date { display: none; }
  .ph-sc-row {
    grid-template-columns: 1fr 90px;
    padding: 12px 14px; gap: 8px;
    align-items: start;
  }
  .ph-sc-cell-date { display: none; }
  .ph-sc-logo { width: 44px; height: 34px; padding: 4px; border-radius: 8px; }
  .ph-sc-cell-brand { gap: 10px; }
  .ph-sc-sale-link { font-size: 13px; }
  /* Show date below sale name on mobile */
  .ph-sc-brand-nm::after {
    content: attr(data-date);
    display: block;
    font-size: 11.5px;
    color: #6b7280;
    margin-top: 3px;
    font-weight: 600;
  }
  .ph-sc-badge { font-size: 11px; padding: 4px 10px; gap: 4px; }
  .ph-sc-dot { width: 6px; height: 6px; }
  .ph-sc-pager-btn { width: 30px; height: 30px; font-size: 16px; }
}/* ══════════════════════════════════
   HOME PAGE PRODUCT CARDS — matches shop card design
   ══════════════════════════════════ */
.ph-product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
@media(max-width:959px){ .ph-product-grid{ grid-template-columns:repeat(3,1fr); gap:14px; } }
@media(max-width:600px){ .ph-product-grid{ grid-template-columns:repeat(2,1fr); gap:10px; } }

.ph-product-card {
  background:#fff; border-radius:16px; border:none; overflow:hidden;
  display:flex; flex-direction:column;
  box-shadow:0 2px 8px rgba(0,0,0,.08),0 0 0 1px rgba(0,0,0,.04);
  transition:box-shadow .22s,transform .22s;
  min-width:0; height:100%; position:relative;
}
.ph-product-card:hover {
  box-shadow:0 10px 32px rgba(0,0,0,.14);
  transform:translateY(-3px);
}
.ph-product-img {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  flex-shrink: 0;
  background: #1a1a2e;
}
.ph-product-img img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}
.ph-product-card:hover .ph-product-img img { transform: scale(1.03); }

/* Discount ribbon on home page cards — flush top-left (no top-banner offset needed here) */
.ph-product-img .ph-card-badges{position:absolute;top:0;left:0;z-index:2;}
.ph-product-img .ph-badge-off{background:#ef4444;color:#fff;font-size:11px;font-weight:900;padding:5px 11px;border-radius:0 0 10px 0;display:block;box-shadow:0 2px 6px rgba(0,0,0,.15);}

@media(max-width:600px){ .ph-product-card{ border-radius:13px; } }

/* ===================== Announcement bar ===================== */
/* ===================== Announcement Bar — modern rotating strip ===================== */
.ph-announce-bar{
  color:#fff;font-size:12.5px;font-weight:600;letter-spacing:.1px;
  position:relative;overflow:hidden;
}
.ph-announce-dark{background:#0f172a;}
.ph-announce-gradient{background:linear-gradient(90deg,#1e3a8a,#2563eb,#4338ca);background-size:200% 100%;animation:ph-ann-shift 8s ease infinite;}
.ph-announce-light{background:#f8fafc;color:#1e293b;border-bottom:1px solid #e2e8f0;}
@keyframes ph-ann-shift{0%,100%{background-position:0% 50%;}50%{background-position:100% 50%;}}

.ph-announce-inner{
  width:100%;margin:0;padding:8px var(--ph-gutter);
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  min-height:34px;
}

/* Rotating message track — crossfade between messages */
.ph-announce-track{
  position:relative;flex:1;min-width:0;
  height:18px;display:flex;align-items:center;
}
.ph-announce-msg{
  position:absolute;left:0;right:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  opacity:0;transform:translateY(6px);
  transition:opacity .45s ease,transform .45s ease;
  pointer-events:none;
}
.ph-announce-msg-on{
  opacity:1;transform:translateY(0);
  pointer-events:auto;
  position:relative;
}

/* Progress dots — only shown when 2+ messages */
.ph-announce-dots{display:flex;align-items:center;gap:5px;flex-shrink:0;margin-left:4px;}
.ph-announce-dot{
  width:5px;height:5px;border-radius:50%;
  background:currentColor;opacity:.3;
  transition:opacity .3s,width .3s;
}
.ph-announce-dot-on{opacity:1;width:14px;border-radius:3px;}

.ph-announce-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}

.ph-announce-close{
  display:flex;align-items:center;justify-content:center;
  width:20px;height:20px;border-radius:50%;
  background:rgba(255,255,255,.12);color:inherit;
  border:none;cursor:pointer;flex-shrink:0;
  transition:background .15s;
  opacity:.8;
}
.ph-announce-light .ph-announce-close{background:rgba(15,23,42,.08);}
.ph-announce-close:hover{opacity:1;background:rgba(255,255,255,.22);}
.ph-announce-light .ph-announce-close:hover{background:rgba(15,23,42,.14);}

/* Dismissed state */
.ph-announce-bar.ph-announce-dismissed{
  max-height:0;padding:0;margin:0;opacity:0;
  overflow:hidden;
  transition:max-height .3s ease,opacity .2s ease;
}
.ph-social-icons{display:flex;align-items:center;gap:12px;flex:0 0 auto;}
.ph-social-icons a{color:inherit;opacity:.85;display:flex;transition:opacity .15s var(--ph-ease);}
.ph-social-icons a:hover{opacity:1;}
.ph-footer .ph-social-icons{margin-top:14px;color:#fff;}
.ph-sidebar-socials{padding:16px var(--ph-gutter);color:var(--ph-ink);}
.ph-sidebar-socials .ph-social-icons{color:var(--ph-ink);}

/* ===================== Header — flat, bold, no blur ===================== */

/* ── Header typography reset — immune to WordPress/plugin font overrides ── */
.ph-header,.ph-header *{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;}
.ph-desktop-nav a{font-size:13.5px!important;font-weight:700!important;}
.ph-sidebar-nav a{font-size:14px!important;font-weight:600!important;}
.ph-logo-text{font-size:21px!important;font-weight:900!important;}
.ph-login-icon{font-size:13px!important;font-weight:700!important;}
.ph-cart-btn,.ph-header-actions a,.ph-header-actions button{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;}
.ph-header{position:sticky;top:0;z-index:9000;background:#fff;border-bottom:2px solid var(--ph-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:14px;padding-top:env(safe-area-inset-top,0px);}
.ph-header-static{position:static;}
.ph-header-inner{width:100%;margin:0;display:flex;align-items:center;gap:22px;padding:12px var(--ph-gutter);min-height:60px;}
.ph-sidebar-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:38px;height:38px;flex:0 0 38px;border:2px solid var(--ph-ink);background:#fff;cursor:pointer;border-radius:8px;box-sizing:border-box;padding:0;}
.ph-sidebar-toggle span{display:block;width:18px;height:2px;background:var(--ph-ink);margin:0 auto;}
.ph-logo{display:flex;align-items:center;height:38px;line-height:0;flex:0 0 auto;}
.ph-logo img{height:36px !important;width:auto !important;max-width:160px !important;max-height:36px !important;object-fit:contain !important;display:block;margin:0;}
.ph-logo-text{font-weight:900;font-size:21px;color:var(--ph-ink);letter-spacing:-.4px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;}
.ph-desktop-nav{display:flex;align-items:center;gap:24px;flex:1 1 auto;}
.ph-desktop-nav a{position:relative;color:var(--ph-ink);text-decoration:none;font-size:13.5px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;padding:6px 0;line-height:1.4;transition:color .2s ease;}
.ph-desktop-nav a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--ph-accent);border-radius:2px;transition:width .25s cubic-bezier(.4,0,.2,1);}
.ph-desktop-nav a:hover{color:var(--ph-accent);}
.ph-desktop-nav a:hover::after{width:100%;}
.ph-desktop-nav a.is-active{color:var(--ph-accent);}
.ph-desktop-nav a.is-active::after{width:100%;}
.ph-header-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex:0 0 auto;}
.ph-header-actions svg,.ph-sidebar-toggle svg{display:block;flex-shrink:0;}

.ph-login-icon{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--ph-ink);text-decoration:none;font-size:13px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;position:relative;border:2px solid var(--ph-ink);border-radius:8px;box-sizing:border-box;height:38px;padding:0 14px;transition:background .15s var(--ph-ease),color .15s var(--ph-ease);}
.ph-login-icon svg{width:18px !important;height:18px !important;}
.ph-login-icon:hover{background:var(--ph-ink);color:#fff;}
.ph-account-menu{position:relative;display:flex;}
.ph-account-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:2px solid var(--ph-ink);border-radius:10px;min-width:170px;padding:6px;display:none;z-index:20;}
.ph-account-menu:hover .ph-account-dropdown,.ph-account-menu.open .ph-account-dropdown{display:block;}
.ph-account-dropdown a{display:block;padding:9px 12px;border-radius:6px;color:var(--ph-ink);text-decoration:none;font-size:13.5px;font-weight:600;}
.ph-account-dropdown a:hover{background:var(--ph-bg);}
.ph-cart-icon{position:relative;display:flex;align-items:center;justify-content:center;color:var(--ph-ink);border:2px solid var(--ph-ink);border-radius:8px;box-sizing:border-box;width:38px;height:38px;padding:0;flex:0 0 38px;}
.ph-cart-icon svg{width:19px !important;height:19px !important;}
.ph-cart-icon:hover{background:var(--ph-ink);color:#fff;}
.ph-cart-count{position:absolute;top:-8px;right:-8px;background:var(--ph-accent);color:#fff;font-size:10px;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-weight:800;box-shadow:0 0 0 2px #fff;}
.ph-header-social-icon{display:flex;align-items:center;justify-content:center;color:var(--ph-ink);border:2px solid var(--ph-ink);border-radius:8px;box-sizing:border-box;width:38px;height:38px;padding:0;flex:0 0 38px;text-decoration:none;transition:background .15s,color .15s,border-color .15s;}
.ph-header-social-icon svg{width:19px !important;height:19px !important;}
.ph-header-whatsapp:hover{background:#25d366;border-color:#25d366;color:#fff;}
.ph-header-telegram:hover{background:#26a5e4;border-color:#26a5e4;color:#fff;}

@media (max-width: 1024px){
	.ph-desktop-nav{display:none;}
	.ph-sidebar-toggle{display:flex;}
}
@media (max-width: 600px){
	.ph-header-inner{gap:8px;padding:10px 12px;}
	.ph-logo img{height:30px !important;max-height:30px !important;}
	.ph-logo-text{font-size:18px;}
	.ph-login-icon span{display:none;}
	.ph-login-icon{padding:8px;}
	.ph-announce-inner{padding:7px 12px;min-height:30px;}
	.ph-announce-msg{font-size:11.5px;}
	.ph-header-actions{gap:6px;}
	.ph-header-social-icon{width:34px;flex:0 0 34px;height:34px;}
	.ph-header-social-icon svg{width:16px !important;height:16px !important;}
	.ph-cart-btn{width:34px;height:34px;flex:0 0 34px;padding:0;}
}
/* Very narrow phones — hide the least-essential header icons (WhatsApp,
   Telegram) so hamburger + logo + account + cart always fit without
   overflowing. Both are still reachable from the sidebar menu. */
@media (max-width: 380px){
	.ph-header-inner{gap:6px;padding:8px 10px;}
	.ph-logo-text{font-size:16px;}
	.ph-header-whatsapp,.ph-header-telegram{display:none;}
}

/* ===================== Sidebar ===================== */
.ph-sidebar{position:fixed;top:0;left:-300px;width:280px;height:100%;background:#fff;z-index:10001;box-shadow:var(--ph-shadow-lg);transition:left .25s var(--ph-ease);overflow-y:auto;border-right:2px solid var(--ph-ink);}
.ph-sidebar.active{left:0;}
.ph-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:calc(16px + env(safe-area-inset-top,0px));border-bottom:2px solid var(--ph-ink);background:#fff;position:sticky;top:0;z-index:2;}
.ph-sidebar-head img{height:32px;}
.ph-sidebar-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--ph-ink);line-height:1;}
.ph-sidebar-nav{display:flex;flex-direction:column;padding:8px 0;}
.ph-sidebar-nav a{padding:13px 16px;color:var(--ph-ink);text-decoration:none;font-size:14px;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;border-bottom:1px solid var(--ph-line);}
.ph-sidebar-nav a:hover{background:var(--ph-bg);color:var(--ph-accent);}
.ph-sidebar-nav-sep{height:1px;background:var(--ph-line);margin:8px 16px;}
.ph-sidebar-ads{padding:16px;display:flex;flex-direction:column;gap:10px;}
.ph-sidebar-ads-heading{font-size:12px;font-weight:800;color:#fff;background:var(--ph-accent,#4f46e5);text-align:center;text-transform:uppercase;letter-spacing:.4px;margin:0;padding:8px 10px;border-radius:8px;}
.ph-sidebar-ad{position:relative;display:block;border-radius:10px;overflow:hidden;text-decoration:none;background:#f4f4f7;}
.ph-sidebar-ad img{width:100%;height:auto;display:block;}
.ph-sidebar-ad-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:50%;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;}
.ph-sidebar-ad-title{display:block;padding:8px 10px;font-size:12px;font-weight:700;color:var(--ph-ink);}
.ph-sidebar-video-modal{position:fixed;inset:0;background:rgba(10,10,20,.92);z-index:20000;align-items:center;justify-content:center;padding:16px;}
.ph-sidebar-video-modal-inner{width:100%;max-width:900px;position:relative;}
.ph-sidebar-video-modal-body{width:100%;aspect-ratio:16/9;}
.ph-sidebar-video-modal-body iframe{width:100%;height:100%;border:none;border-radius:10px;}
.ph-sidebar-video-modal-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:32px;cursor:pointer;line-height:1;}
.ph-sidebar-nav-secondary-list{border-top:1px solid var(--ph-line);margin-top:4px;padding-top:4px;}
.ph-sidebar-nav a.ph-sidebar-nav-secondary{font-size:12.5px!important;font-weight:500!important;color:var(--ph-muted,#6b7280);padding-top:10px;padding-bottom:10px;border-bottom:none!important;}
.ph-sidebar-overlay{position:fixed;inset:0;background:rgba(22,22,41,.5);z-index:10000;display:none;}
.ph-sidebar-overlay.active{display:block;}

/* ===================== Carousel core ===================== */
.ph-carousel{position:relative;cursor:grab;}
.ph-carousel:active{cursor:grabbing;}
.ph-carousel-viewport{overflow-x:hidden;}
.ph-carousel-track{display:flex;align-items:stretch;transition:transform .45s var(--ph-ease);touch-action:pan-y;}
.ph-car-dots{position:static;display:flex;align-items:center;gap:4px;padding:12px var(--ph-gutter) 0;min-height:4px;}
.ph-car-dots:empty{display:none;padding:0;}
.ph-car-progress-seg{flex:1 1 0;height:3px;background:var(--ph-line);border-radius:3px;overflow:hidden;cursor:pointer;}
.ph-car-progress-fill{display:block;height:100%;width:0%;background:var(--ph-accent);border-radius:3px;}
.ph-slide{flex:0 0 calc(100% / var(--ph-cards-desktop, 1));text-decoration:none;display:block;padding:0;box-sizing:border-box;}
.ph-carousel:not([data-cards-desktop="1"]) .ph-slide{padding:0 3px;}
/* Slide wrapper — aspect ratio set via inline style from admin settings */
.ph-slide-16-9,.ph-slide-img{position:relative;width:100%;overflow:hidden;border-radius:var(--ph-radius-sm);border:1px solid var(--ph-line);background:var(--ph-bg);}
.ph-slide-16-9{aspect-ratio:16/9;} /* default fallback only — overridden by admin setting */
.ph-slide-16-9 img,.ph-slide-img img{width:100% !important;height:100% !important;object-fit:cover !important;display:block;}
.ph-slide-placeholder{width:100%;height:100%;background:var(--ph-bg);}

/* ── Compact overlay on banner/offer carousel slides — title + a Read
   More button only, so text never crowds or overlaps the image. Full
   subtitle/description shows in the popup instead (below). ── */
.ph-slide-details{position:absolute;left:0;right:0;bottom:0;padding:12px 14px;background:linear-gradient(to top, rgba(0,0,0,.68) 0%, rgba(0,0,0,.32) 60%, rgba(0,0,0,0) 100%);color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;}
.ph-slide-title{font-size:15px;font-weight:800;line-height:1.25;text-shadow:0 1px 3px rgba(0,0,0,.4);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ph-slide-readmore{flex-shrink:0;background:rgba(255,255,255,.94);color:#111;border:none;font-size:11.5px;font-weight:700;padding:6px 12px;border-radius:20px;cursor:pointer;white-space:nowrap;}
.ph-slide-readmore:hover{background:#fff;}
.ph-slide-expiry{position:absolute;top:10px;right:10px;background:rgba(0,0,0,.65);color:#fff;font-size:11px;font-weight:700;padding:5px 10px;border-radius:20px;display:flex;align-items:center;gap:4px;backdrop-filter:blur(2px);}
.ph-slide-expiry .ph-section-countdown{background:none;color:#fff;padding:0;margin-top:0;border-radius:0;font-size:11px;font-weight:700;letter-spacing:normal;}
@media (max-width:600px){
  .ph-slide-title{font-size:13px;}
  .ph-slide-readmore{font-size:11px;padding:5px 10px;}
}

/* ── Read More details popup ── */
.ph-slide-modal-inner{position:relative;max-width:420px;padding:0;}
.ph-slide-modal-img{width:100%;max-height:280px;object-fit:cover;display:block;border-radius:16px 16px 0 0;}
.ph-slide-modal-body{padding:18px 20px 22px;}
.ph-slide-modal-title{font-size:18px;font-weight:800;color:var(--ph-ink);margin:0 0 4px;}
.ph-slide-modal-subtitle{font-size:14px;font-weight:600;color:var(--ph-muted);margin:0 0 10px;}
.ph-slide-modal-desc{font-size:13.5px;line-height:1.6;color:var(--ph-ink);margin:0 0 16px;}
.ph-slide-modal-cta{display:flex;align-items:center;justify-content:center;width:100%;padding:13px;background:var(--ph-accent);color:#fff;font-weight:700;font-size:14.5px;border-radius:10px;text-decoration:none;box-sizing:border-box;}
.ph-slide-modal .ph-modal-close{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.92);border-radius:50%;width:30px;height:30px;z-index:2;}

/* ===================== Today's Deals (PDM) — horizontal scroll row ===================== */
/* Native CSS horizontal scroll-snap — no JS, no shared classes with any
   other section, no dependency on a carousel-init pass or inherited CSS
   custom properties. The browser handles the horizontal layout and
   swipe/scroll behavior entirely on its own; there is nothing here that
   depends on any other section's code running correctly first. */
.ph-td-scroll{
  display:               flex;
  gap:                   14px;
  overflow-x:            auto;
  overflow-y:            hidden;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type:      x proximity;
  scroll-padding-left:   var(--ph-gutter, 16px);
  padding:               2px var(--ph-gutter, 16px) 14px;
  margin:                0 calc(var(--ph-gutter, 16px) * -1);
}
.ph-td-scroll::-webkit-scrollbar{height:6px;}
.ph-td-scroll::-webkit-scrollbar-thumb{background:#d8dce6;border-radius:10px;}
.ph-td-scroll::-webkit-scrollbar-track{background:transparent;}
.ph-td-card{
  flex:           0 0 auto;
  scroll-snap-align: start;
  width:          200px;
  display:        flex;
  flex-direction: column;
  background:     #fff;
  border:         1px solid #edf0f5;
  border-radius:  16px;
  overflow:       hidden;
  color:          var(--ph-ink);
  box-shadow:     0 1px 3px rgba(15,23,42,.04);
  transition:     box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.ph-td-card:hover{
  box-shadow:   0 14px 32px rgba(15,23,42,.10);
  transform:    translateY(-3px);
  border-color: #e2e6ee;
}
.ph-td-img-wrap{position:relative;display:block;width:100%;height:188px;background:linear-gradient(180deg,#f4f5fb 0%,#eef0f8 100%);overflow:hidden;}
.ph-td-img-wrap img{width:100%;height:100%;object-fit:contain;padding:14px;display:block;box-sizing:border-box;transition:transform .4s cubic-bezier(.34,1.56,.64,1);}
.ph-td-card:hover .ph-td-img-wrap img{transform:scale(1.08);}
.ph-td-badge{
  position:      absolute;
  top:           10px;
  left:          10px;
  background:    #e11d48;
  color:         #fff;
  font-size:     11px;
  font-weight:   800;
  letter-spacing:.2px;
  padding:       4px 10px;
  border-radius: 20px;
  box-shadow:    0 2px 6px rgba(225,29,72,.35);
}
.ph-td-body{padding:12px 13px 13px;display:flex;flex-direction:column;gap:4px;}
.ph-td-brand{display:flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;color:var(--ph-accent);filter:brightness(.75) saturate(1.1);text-transform:uppercase;letter-spacing:.5px;}
.ph-td-brand-logo{width:14px;height:14px;object-fit:contain;flex-shrink:0;filter:none;}
.ph-td-title{font-size:13.5px;font-weight:600;line-height:1.4;color:var(--ph-ink);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em;}
.ph-td-title:hover{color:var(--ph-accent);}
.ph-td-price-row{display:flex;align-items:baseline;gap:8px;margin-top:3px;}
.ph-td-price{font-size:16px;font-weight:800;color:var(--ph-ink);letter-spacing:-.2px;}
.ph-td-mrp{font-size:12px;color:#6b7280;text-decoration:line-through;}
.ph-td-btn-row{display:flex;align-items:stretch;gap:8px;margin-top:10px;}
.ph-td-buy-btn{
  flex:            1;
  display:         flex;
  align-items:     center;
  justify-content: center;
  padding:         11px 12px;
  background:      linear-gradient(135deg,#4f46e5 0%,#8b5cf6 100%);
  color:           #fff!important;
  text-align:      center;
  border-radius:   11px;
  font-weight:     700;
  font-size:       12.5px;
  letter-spacing:  .1px;
  text-decoration: none!important;
  box-shadow:      0 4px 12px rgba(79,70,229,.28);
  white-space:     nowrap;
  overflow:        hidden;
  text-overflow:   ellipsis;
  transition:      box-shadow .2s, transform .15s;
}
.ph-td-buy-btn:hover{box-shadow:0 6px 16px rgba(79,70,229,.4);transform:translateY(-1px);}
.ph-td-btn-row .ph-td-share-btn{flex-shrink:0;width:40px;background:#f6f7fb;border:1px solid #edf0f5;border-radius:11px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#4f46e5;padding:0;transition:background .2s;}
.ph-td-share-btn:hover{background:#eef0f8;}
@media (max-width:600px){
  .ph-td-card{width:158px;}
  .ph-td-img-wrap{height:145px;}
  .ph-td-img-wrap img{padding:10px;}
  .ph-td-title{font-size:12.5px;}
  .ph-td-price{font-size:14.5px;}
  .ph-td-buy-btn{font-size:11.5px;padding:9px 10px;}
}

/* ===================== Store logos ===================== */
/* Grid columns + row height controlled by inline <style> in class-ph-frontend.php
   via --ph-store-cards-desktop/tablet/mobile — this file keeps only shared visuals. */
.ph-store-row{ gap:10px; }
@media(min-width:600px){ .ph-store-row{ gap:12px; } }
.ph-store-logo{
  background:#fff;
  border:1px solid var(--ph-line);border-radius:var(--ph-radius-sm);
  display:flex;align-items:center;justify-content:center;
  transition:border-color .15s var(--ph-ease),transform .15s var(--ph-ease);
  text-decoration:none;
}
.ph-store-logo:hover{border-color:var(--ph-ink);transform:translateY(-2px);}
.ph-store-logo img{max-width:74% !important;max-height:54% !important;width:auto !important;height:auto !important;object-fit:contain !important;}
.ph-store-logo-wrap{display:flex;flex-direction:column;}
.ph-store-logo-wrap.has-deal .ph-store-logo{border-radius:var(--ph-radius-sm) var(--ph-radius-sm) 0 0;border-bottom:none;}
.ph-store-logo-readmore{
  display:         flex;
  align-items:     center;
  justify-content: center;
  gap:             4px;
  background:      linear-gradient(135deg,#4f46e5 0%,#8b5cf6 100%);
  border:          none;
  border-radius:   0 0 var(--ph-radius-sm) var(--ph-radius-sm);
  padding:         7px 8px;
  font-size:       10.5px;
  font-weight:     700;
  color:           #fff;
  cursor:          pointer;
  letter-spacing:  .1px;
}
.ph-store-logo-readmore:hover{background:linear-gradient(135deg,#4338ca 0%,#7c3aed 100%);}
.ph-store-logo-readmore span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ph-store-details-modal-inner{max-width:420px;padding:0;position:relative;overflow:hidden;}
.ph-store-details-modal-header{background:linear-gradient(135deg,#f4f4fb 0%,#eef0f8 100%);padding:28px 24px 22px;display:flex;align-items:center;justify-content:center;}
.ph-store-details-modal-img{max-width:70%;max-height:64px;width:auto;height:auto;object-fit:contain;display:block;}
.ph-store-details-modal-body{padding:20px 22px 24px;}
.ph-store-details-modal-title{font-size:18px;font-weight:800;color:var(--ph-ink);margin:0 0 14px;line-height:1.3;}
.ph-store-details-modal-list{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:10px;}
.ph-store-details-modal-list li{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;line-height:1.5;color:#374151;}
.ph-store-details-modal-list li svg{flex-shrink:0;margin-top:2px;color:#16a34a;}
.ph-store-details-modal-cta{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:13px;background:linear-gradient(135deg,#4f46e5 0%,#8b5cf6 100%);color:#fff!important;font-weight:700;font-size:14.5px;border-radius:10px;text-decoration:none!important;box-sizing:border-box;box-shadow:0 4px 14px rgba(79,70,229,.3);transition:box-shadow .2s,transform .15s;}
.ph-store-details-modal-cta:hover{box-shadow:0 6px 18px rgba(79,70,229,.42);transform:translateY(-1px);}
.ph-store-details-modal .ph-modal-close{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.85);border-radius:50%;width:30px;height:30px;z-index:2;backdrop-filter:blur(4px);}

/* Standalone "All Partner Stores" page — same design as the home page
   section above, just under the ph-va- prefix used on that page. */
.ph-va-store-card-wrap{display:flex;flex-direction:column;min-width:0;}
.ph-va-store-card-wrap.has-deal .ph-va-store-card{border-radius:12px 12px 0 0;border-bottom:none;}
.ph-va-store-readmore{
  display:         flex;
  align-items:     center;
  justify-content: center;
  gap:             4px;
  background:      linear-gradient(135deg,#4f46e5 0%,#8b5cf6 100%);
  border:          none;
  border-radius:   0 0 12px 12px;
  padding:         8px 10px;
  font-size:       11px;
  font-weight:     700;
  color:           #fff;
  cursor:          pointer;
  letter-spacing:  .1px;
  width:           100%;
  min-width:       0;
  box-sizing:      border-box;
}
.ph-va-store-readmore:hover{background:linear-gradient(135deg,#4338ca 0%,#7c3aed 100%);}
.ph-va-store-readmore span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}
.ph-va-store-modal-inner{max-width:420px;padding:0;position:relative;overflow:hidden;}
.ph-va-store-modal-header{background:linear-gradient(135deg,#f4f4fb 0%,#eef0f8 100%);padding:28px 24px 22px;display:flex;align-items:center;justify-content:center;}
.ph-va-store-modal-img{max-width:70%;max-height:64px;width:auto;height:auto;object-fit:contain;display:block;}
.ph-va-store-modal-body{padding:20px 22px 24px;}
.ph-va-store-modal-title{font-size:18px;font-weight:800;color:var(--ph-ink);margin:0 0 14px;line-height:1.3;}
.ph-va-store-modal-list{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:10px;}
.ph-va-store-modal-list li{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;line-height:1.5;color:#374151;}
.ph-va-store-modal-list li svg{flex-shrink:0;margin-top:2px;color:#16a34a;}
.ph-va-store-modal-cta{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:13px;background:linear-gradient(135deg,#4f46e5 0%,#8b5cf6 100%);color:#fff!important;font-weight:700;font-size:14.5px;border-radius:10px;text-decoration:none!important;box-sizing:border-box;box-shadow:0 4px 14px rgba(79,70,229,.3);transition:box-shadow .2s,transform .15s;}
.ph-va-store-modal-cta:hover{box-shadow:0 6px 18px rgba(79,70,229,.42);transform:translateY(-1px);}
.ph-va-store-modal .ph-modal-close{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.85);border-radius:50%;width:30px;height:30px;z-index:2;backdrop-filter:blur(4px);}

/* ===================== Categories ===================== */
.ph-cat-grid{display:flex;flex-wrap:wrap;gap:10px;}
.ph-cat-card{width:104px;flex:0 0 104px;background:#fff;border:1px solid var(--ph-line);border-radius:var(--ph-radius-sm);text-decoration:none;text-align:center;padding:14px 8px;color:var(--ph-ink);transition:border-color .15s var(--ph-ease),transform .15s var(--ph-ease);}
.ph-cat-card:hover{border-color:var(--ph-accent);transform:translateY(-2px);}
.ph-cat-card img{width:48px !important;height:48px !important;max-width:48px !important;max-height:48px !important;object-fit:cover !important;border-radius:50%;margin-bottom:8px;border:1px solid var(--ph-line);}
.ph-cat-card span{display:block;font-size:12px;font-weight:700;}

/* ===================== Products ===================== */
.ph-product-tabs{display:flex;gap:6px;overflow-x:auto;margin-bottom:18px;padding-bottom:4px;scrollbar-width:none;}
.ph-product-tabs::-webkit-scrollbar{display:none;}
.ph-tab{border:1.5px solid var(--ph-ink);background:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:12.5px;font-weight:700;white-space:nowrap;color:var(--ph-ink);}
.ph-tab:hover{background:var(--ph-bg);}
.ph-tab.active{background:var(--ph-accent);color:#fff;border-color:var(--ph-accent);}

@media(max-width:959px){}
@media(max-width:600px){}


.ph-product-link{text-decoration:none;color:var(--ph-ink);}


.ph-product-card h4{font-size:12.5px;margin:10px 0 5px;font-weight:600;min-height:32px;line-height:1.4;}
.ph-product-price{font-weight:800;color:var(--ph-ink);font-size:14px;margin-bottom:10px;}


.ph-buy-now-btn:active{transform:translateY(1px);}
.ph-buy-now-btn:disabled{background:#ccc;cursor:not-allowed;}
.ph-buy-now-btn.is-loading{opacity:.6;pointer-events:none;}
.ph-product-grid-wrap{position:relative;min-height:120px;transition:opacity .2s var(--ph-ease);}
.ph-product-grid-wrap.loading{opacity:.4;}

/* ===================== Testimonials ===================== */
/* ===================== Testimonials (Grid layout) ===================== */
/* ── Testimonials ───────────────────────────────────────────── */
/* Header */
.ph-t-header { text-align:center; margin-bottom:36px; }
.ph-t-label { display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--ph-accent); margin-bottom:10px; }
.ph-t-title { font-size:30px; font-weight:900; color:var(--ph-ink); margin:0 0 8px; line-height:1.2; }
.ph-t-subtitle { font-size:14px; color:var(--ph-muted); margin:0; }

/* Grid */
.ph-t-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(min(280px, 100%), 1fr));
  gap:22px;
  align-items:stretch;
}

/* Card */
.ph-t-card {
  position:relative;
  background:#fff;
  border-radius:20px;
  padding:28px 24px 22px;
  box-shadow:0 2px 12px rgba(0,0,0,.06);
  border:1.5px solid #f0f0f0;
  display:flex;
  flex-direction:column;
  box-sizing:border-box;
  transition:transform .22s ease, box-shadow .22s ease;
  overflow:hidden;
}
.ph-t-card::before {
  content:'';
  position:absolute;
  top:0; left:0; right:0;
  height:4px;
  background:linear-gradient(90deg, var(--ph-accent), var(--ph-accent2));
  border-radius:20px 20px 0 0;
}
.ph-t-card:hover {
  transform:translateY(-4px);
  box-shadow:0 8px 32px rgba(79,70,229,.12);
  border-color:#e0e7ff;
}

/* Quote icon */
.ph-t-quote-icon {
  color:#e0e7ff;
  margin-bottom:12px;
  line-height:1;
}

/* Stars */
.ph-t-stars {
  display:flex;
  gap:3px;
  margin-bottom:16px;
}

/* Review text */
.ph-t-text {
  color:#374151;
  font-size:15px;
  line-height:1.75;
  font-weight:400;
  font-style:italic;
  margin:0 0 24px;
  flex:1;
}
.ph-t-text-clamped{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:8px!important;}
.ph-t-readmore{background:none;border:none;padding:0;color:var(--ph-accent);font-weight:700;font-size:13px;cursor:pointer;margin:0 0 20px;}
.ph-t-review-modal-inner{max-width:460px;}
.ph-t-review-modal-body{padding:26px 24px 24px;}
.ph-t-review-modal-body .ph-t-stars{margin-bottom:14px;}
.ph-t-review-modal-text{font-size:15px;line-height:1.75;font-style:italic;color:#374151;margin:0 0 18px;white-space:pre-line;}
.ph-t-review-modal-role{display:block;font-size:12.5px;color:var(--ph-muted);margin-top:2px;}

/* Video Carousel -- caption + Read More popup */
.ph-video-caption{padding:8px 4px 0;display:flex;align-items:center;justify-content:space-between;gap:8px;}
.ph-video-title{font-size:12.5px;font-weight:700;color:var(--ph-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;}
.ph-video-readmore{background:none;border:none;padding:0;color:var(--ph-accent);font-weight:700;font-size:11.5px;cursor:pointer;flex-shrink:0;}
.ph-video-details-modal-inner{max-width:420px;padding:0;}
.ph-video-details-modal-img{width:100%;max-height:240px;object-fit:cover;display:block;border-radius:16px 16px 0 0;}
.ph-video-details-modal-body{padding:18px 20px 22px;}
.ph-video-details-modal-title{font-size:17px;font-weight:800;color:var(--ph-ink);margin:0 0 4px;}
.ph-video-details-modal-subtitle{font-size:13.5px;font-weight:600;color:var(--ph-muted);margin:0 0 10px;}
.ph-video-details-modal-desc{font-size:13.5px;line-height:1.6;color:var(--ph-ink);margin:0;white-space:pre-line;}

/* Footer */
.ph-t-foot {
  display:flex;
  align-items:center;
  gap:12px;
  padding-top:16px;
  border-top:1px solid #f3f4f6;
}

/* Avatar */
.ph-t-avatar {
  width:48px; height:48px; border-radius:50%; flex-shrink:0;
  overflow:hidden; display:flex; align-items:center; justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.12);
}
.ph-t-avatar img { width:100%; height:100%; object-fit:cover; display:block; }
.ph-t-avatar span { color:#fff; font-weight:800; font-size:18px; line-height:1; }

/* Name / role */
.ph-t-who strong { display:block; font-size:14px; color:var(--ph-ink); font-weight:800; line-height:1.3; }
.ph-t-role { font-size:12px; color:var(--ph-muted); display:block; margin-top:2px; }
.ph-t-verified {
  display:inline-flex; align-items:center; gap:4px;
  font-size:11px; font-weight:700; color:#059669;
  background:#d1fae5; padding:3px 9px 3px 7px; border-radius:20px;
  margin-top:4px;
}
.ph-t-verified svg { flex-shrink:0; }

/* Mobile: horizontal scroll */
@media(max-width:600px){
  .ph-t-header { text-align:left; }
  .ph-t-title { font-size:22px; }
  .ph-t-grid {
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    gap:14px;
    margin:0 calc(var(--ph-gutter) * -1);
    padding:4px var(--ph-gutter) 12px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .ph-t-grid::-webkit-scrollbar { display:none; }
  .ph-t-grid > .ph-t-card {
    flex:0 0 85vw;
    max-width:320px;
    scroll-snap-align:start;
  }
}




/* ===================== Video ===================== */
.ph-video-carousel .ph-video-slide{flex:0 0 calc(100% / var(--ph-cards-desktop, 3));padding:0 6px;box-sizing:border-box;}
.ph-video-thumb{position:relative;aspect-ratio:16/9;background:var(--ph-ink);border-radius:var(--ph-radius-sm);overflow:hidden;}
.ph-video-thumb img{width:100% !important;height:100% !important;object-fit:cover !important;opacity:.85;}
.ph-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:#fff;border:none;cursor:pointer;color:var(--ph-ink);display:flex;align-items:center;justify-content:center;box-shadow:var(--ph-shadow);}
.ph-video-slide:hover .ph-play-btn{transform:translate(-50%,-50%) scale(1.08);}
.ph-video-modal{display:none;position:fixed;inset:0;background:rgba(22,22,41,.92);z-index:99999;align-items:center;justify-content:center;}
.ph-video-modal.active{display:flex;}
.ph-video-modal-inner{width:90%;max-width:900px;position:relative;}
.ph-video-modal-body iframe,.ph-video-modal-body video{width:100%;aspect-ratio:16/9;border:none;border-radius:var(--ph-radius-sm);}
.ph-video-modal-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:32px;cursor:pointer;line-height:1;}


/* PWA install banner — rebuilt from scratch; this CSS was entirely
   missing (likely lost in an earlier cleanup pass), causing the banner
   to render as completely unstyled raw HTML. Fixed bottom banner,
   slides up when JS adds the .ph-pwa-show class. */
#ph-pwa-banner{position:fixed;left:0;right:0;bottom:0;z-index:9800;transform:translateY(100%);opacity:0;transition:transform .35s cubic-bezier(.2,.8,.3,1),opacity .35s;pointer-events:none;padding:0 12px calc(12px + env(safe-area-inset-bottom,0px));box-sizing:border-box;}
#ph-pwa-banner.ph-pwa-show{transform:translateY(0);opacity:1;pointer-events:auto;}
.ph-pwa-inner{max-width:560px;margin:0 auto;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 10px 32px rgba(15,23,42,.18);padding:14px;display:flex;align-items:center;gap:12px;}
.ph-pwa-icon{width:46px;height:46px;flex-shrink:0;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#4f46e5,#8b5cf6);display:flex;align-items:center;justify-content:center;}
.ph-pwa-icon img{width:100%;height:100%;object-fit:cover;display:block;}
.ph-pwa-icon svg{width:24px;height:24px;color:#fff;}
.ph-pwa-text{flex:1;min-width:0;}
.ph-pwa-name{font-size:13.5px;font-weight:800;color:var(--ph-ink,#111827);line-height:1.3;}
.ph-pwa-desc{font-size:12px;color:var(--ph-muted,#6b7280);line-height:1.35;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ph-pwa-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.ph-pwa-btn{background:linear-gradient(135deg,#4f46e5 0%,#8b5cf6 100%);color:#fff;border:none;padding:9px 16px;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap;box-shadow:0 4px 12px rgba(79,70,229,.28);}
.ph-pwa-btn:hover{box-shadow:0 6px 16px rgba(79,70,229,.4);}
.ph-pwa-dismiss{width:30px;height:30px;flex-shrink:0;border:none;background:#f3f4f6;color:#6b7280;border-radius:8px;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.ph-pwa-dismiss:hover{background:#e5e7eb;color:#374151;}
@media(min-width:640px){
	#ph-pwa-banner{padding-bottom:20px;}
}

/* ================================================================
 * Global mobile/WebView tap-highlight fix
 * Prevent Android/Chrome/WebView from painting the default blue/cyan
 * rectangle over clickable cards, links, buttons and controls.
 * Applied plugin-wide from the main frontend stylesheet.
 * ================================================================ */
html,
body,
body * {
  -webkit-tap-highlight-color: transparent !important;
}

/* Keep keyboard accessibility while preventing browser tap/focus paint. */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
[role="button"]:focus:not(:focus-visible),
input[type="button"]:focus:not(:focus-visible),
input[type="submit"]:focus:not(:focus-visible),
input[type="reset"]:focus:not(:focus-visible) {
  outline: none !important;
}


/* v5.107.90: keep frontend store/detail popups inside the visible viewport */
.ph-modal.ph-modal--open{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important;box-sizing:border-box!important;overflow:auto!important;z-index:2147483000!important;}
.ph-modal.ph-modal--open .ph-modal-box{margin:auto!important;max-height:calc(100dvh - 24px)!important;overscroll-behavior:contain;}
@supports not (height:100dvh){.ph-modal.ph-modal--open{height:100vh!important}.ph-modal.ph-modal--open .ph-modal-box{max-height:calc(100vh - 24px)!important}}

/* v5.107.96 Store popup: reliable internal scrolling on every viewport */
.ph-store-details-modal.ph-modal--open .ph-store-details-modal-inner,.ph-va-store-modal.ph-modal--open .ph-va-store-modal-inner{display:flex!important;flex-direction:column!important;max-height:calc(100dvh - 24px)!important;overflow:hidden!important;}
.ph-store-details-modal-body,.ph-va-store-modal-body{overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;min-height:0!important;}
.ph-modal .ph-modal-body{overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;min-height:0!important;}
.ph-store-modal-grid img,.ph-va-store-card img{object-fit:contain!important;background:#fff!important;}

/* v5.107.97 — App/Community align to Newsletter width on tablet + desktop */
@media (min-width:700px){
  .ph-community-inner{width:100%;max-width:var(--ph-max-width,1280px);margin-left:auto;margin-right:auto;box-sizing:border-box;}
  .ph-app-v2-shell{width:100%;max-width:var(--ph-max-width,1280px);margin-left:auto;margin-right:auto;}
}

/* v5.107.98 Store logo search + names */
.ph-store-search-wrap{width:100%;margin:0 0 10px;display:flex}.ph-store-search{width:100%;min-height:40px;border:1px solid #e5e7eb!important;border-radius:12px!important;padding:8px 13px!important;background:#fff!important;font-size:14px!important;box-sizing:border-box;outline:none}.ph-store-search:focus{border-color:#8b5cf6!important;box-shadow:0 0 0 3px rgba(139,92,246,.1)!important}.ph-store-name-label{display:block;width:100%;font-size:12px!important;font-weight:700!important;line-height:1.25!important;color:var(--ph-ink,#111827)!important;text-align:center;margin-top:6px!important;white-space:normal!important;overflow-wrap:anywhere}.ph-store-logo{height:auto!important;min-height:76px!important;padding:8px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;box-sizing:border-box}.ph-store-logo img{max-height:48px!important;max-width:100%!important;width:auto!important;height:auto!important;object-fit:contain!important}.ph-va-store-card{max-height:none!important}.ph-va-store-card img{object-fit:contain!important}
@media(max-width:599px){.ph-store-search{min-height:38px;font-size:13px!important}.ph-store-name-label{font-size:11px!important}.ph-store-logo{min-height:68px!important}.ph-store-logo img{max-height:40px!important}}

.ph-store-popup-name{font-size:13px;font-weight:800;letter-spacing:.02em;color:#6d28d9;margin:0 0 5px}.ph-store-name-label{display:none!important}


/* v5.108.02 — Store search adaptive width + SVG icon */
.ph-store-search-wrap{position:relative!important;width:100%!important;max-width:100%!important;margin:0 0 10px!important;display:flex!important;align-items:center!important;box-sizing:border-box!important}
.ph-store-search-icon{position:absolute!important;left:12px!important;top:50%!important;transform:translateY(-50%)!important;width:18px!important;height:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#6b7280!important;pointer-events:none!important;z-index:2!important}
.ph-store-search-icon svg{display:block!important;width:18px!important;height:18px!important}
.ph-store-search{padding-left:40px!important;padding-right:14px!important}
@media(min-width:600px) and (max-width:959px){.ph-store-search-wrap{width:min(100%,520px)!important;max-width:520px!important}}
@media(min-width:960px){.ph-store-search-wrap{width:min(100%,460px)!important;max-width:460px!important}.ph-va-page>.ph-store-search-wrap{margin-left:0!important;margin-right:auto!important}.ph-stores>.ph-store-search-wrap{margin-left:0!important;margin-right:auto!important}}
@media(max-width:599px){.ph-store-search-icon{left:11px!important;width:17px!important;height:17px!important}.ph-store-search-icon svg{width:17px!important;height:17px!important}.ph-store-search{padding-left:37px!important}}

/* v5.108.03 — Store search full-width + icon/text spacing fix */
.ph-store-search-wrap,
.ph-va-page > .ph-store-search-wrap,
.ph-stores > .ph-store-search-wrap{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 12px!important;
  box-sizing:border-box!important;
}
.ph-store-search-icon{
  position:absolute!important;
  left:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:18px!important;
  height:18px!important;
  display:grid!important;
  place-items:center!important;
  line-height:0!important;
  color:#6b7280!important;
  pointer-events:none!important;
  z-index:3!important;
}
.ph-store-search-icon svg{display:block!important;width:18px!important;height:18px!important;overflow:visible!important}
.ph-store-search{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:42px!important;
  padding:9px 14px 9px 46px!important;
  margin:0!important;
  box-sizing:border-box!important;
  line-height:22px!important;
  text-indent:0!important;
}
.ph-store-search::placeholder{opacity:.78!important}
@media(max-width:599px){
 .ph-store-search-wrap{margin-bottom:9px!important}
 .ph-store-search-icon{left:12px!important;width:17px!important;height:17px!important}
 .ph-store-search-icon svg{width:17px!important;height:17px!important}
 .ph-store-search{min-height:40px!important;padding:8px 12px 8px 41px!important;font-size:13px!important}
}


/* v5.108.04 — App Download + Join Community full-page width on tablet/desktop */
@media (min-width:700px){
  .ph-app-v2{width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;}
  .ph-app-v2-shell{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;border-left:0!important;border-right:0!important;border-radius:0!important;}
  .ph-community{width:100%!important;max-width:none!important;}
  .ph-community-inner{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:var(--ph-gutter,16px)!important;padding-right:var(--ph-gutter,16px)!important;}
}

/* v5.108.05 — definitive full-width store search + non-overlapping SVG */
.ph-store-search-wrap{position:relative!important;display:block!important;width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;overflow:visible!important}
.ph-store-search-wrap .ph-store-search-icon{position:absolute!important;left:16px!important;right:auto!important;top:50%!important;transform:translateY(-50%)!important;width:20px!important;height:20px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;z-index:5!important}
.ph-store-search-wrap .ph-store-search-icon svg{width:20px!important;height:20px!important;display:block!important;flex:none!important}
.ph-store-search-wrap input.ph-store-search[type="search"]{-webkit-appearance:none!important;appearance:none!important;display:block!important;width:100%!important;max-width:none!important;min-width:0!important;height:48px!important;min-height:48px!important;margin:0!important;padding:10px 16px 10px 52px!important;text-indent:0!important;line-height:26px!important;box-sizing:border-box!important;background:#fff!important;background-image:none!important}
.ph-store-search-wrap input.ph-store-search::-webkit-search-decoration,.ph-store-search-wrap input.ph-store-search::-webkit-search-results-button,.ph-store-search-wrap input.ph-store-search::-webkit-search-results-decoration{-webkit-appearance:none!important;display:none!important}
@media(max-width:599px){.ph-store-search-wrap .ph-store-search-icon{left:14px!important;width:18px!important;height:18px!important}.ph-store-search-wrap .ph-store-search-icon svg{width:18px!important;height:18px!important}.ph-store-search-wrap input.ph-store-search[type="search"]{height:42px!important;min-height:42px!important;padding:8px 13px 8px 46px!important}}

/* v5.108.06 — Join Community newsletter-style background card */
.ph-community{padding:0!important;box-sizing:border-box;}
.ph-community-inner{
  width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box;
  background:linear-gradient(120deg,#eef0ff 0%,#f5f0ff 100%);
  border-top:1px solid #e4e0fb;border-bottom:1px solid #e4e0fb;
  padding:18px var(--ph-gutter,16px)!important;
}
.ph-community-heading{margin-top:0!important;}
.ph-community-channels{margin-top:12px;}
@media (min-width:700px){
  .ph-community-inner{padding:20px 32px!important;border:1px solid #e4e0fb;border-radius:16px;}
  .ph-community{padding:0 var(--ph-gutter,16px)!important;}
}

/* v5.108.08 — consistent Newsletter / Community / App card width + rounded corners */
.ph-newsletter,
.ph-community,
.ph-app-v2{
  width:100%!important;
  box-sizing:border-box!important;
  padding-left:var(--ph-gutter,16px)!important;
  padding-right:var(--ph-gutter,16px)!important;
}
.ph-nl-band,
.ph-community-inner,
.ph-app-v2-shell{
  width:100%!important;
  max-width:var(--ph-max-width,1280px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
.ph-nl-band{
  border:1px solid #e4e0fb!important;
}
.ph-community-inner{
  border:1px solid #e4e0fb!important;
}
.ph-app-v2-shell{
  border:1px solid #e7eaf0!important;
}
@media (min-width:700px){
  .ph-newsletter,.ph-community,.ph-app-v2{
    padding-left:var(--ph-gutter,16px)!important;
    padding-right:var(--ph-gutter,16px)!important;
  }
  .ph-community-inner{
    max-width:var(--ph-max-width,1280px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .ph-app-v2-shell{
    max-width:var(--ph-max-width,1280px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    border-left:1px solid #e7eaf0!important;
    border-right:1px solid #e7eaf0!important;
    border-radius:16px!important;
  }
}
@media (max-width:699px){
  .ph-nl-band,.ph-community-inner,.ph-app-v2-shell{border-radius:14px!important;}
}

/* v5.108.09 — page width mode follows General Settings exactly.
   Full Width = edge-to-edge. Boxed = configured responsive max width. */
body:not(.ph-layout-boxed) .ph-main,
body:not(.ph-layout-boxed) .ph-main :where(.ph-categories,.ph-products,.ph-offers,.ph-stores,.ph-featured-section,.ph-today-deals,.ph-testimonials,.ph-videos,.ph-banner-carousel,.ph-carousel,.ph-video-carousel,.ph-newsletter,.ph-community,.ph-app-v2,.ph-va-page,.ph-product-grid-wrap,.ph-sc-wrap){
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
body.ph-layout-boxed .ph-main{
  width:100%!important;
  max-width:var(--ph-max-width,1280px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body.ph-layout-boxed .ph-main :where(.ph-categories,.ph-products,.ph-offers,.ph-stores,.ph-featured-section,.ph-today-deals,.ph-testimonials,.ph-videos,.ph-banner-carousel,.ph-carousel,.ph-video-carousel,.ph-newsletter,.ph-community,.ph-app-v2,.ph-va-page,.ph-product-grid-wrap,.ph-sc-wrap){
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
/* Card shells always fill their owning section; page mode decides the section width. */
:where(.ph-nl-band,.ph-community-inner,.ph-app-v2-shell){
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}

/* v5.108.10 — Newsletter / Community / App use the exact owning page width.
   .ph-main already applies the configured Full/Boxed width + responsive side gutter,
   so these sections must not add a second horizontal gutter or their own max-width. */
.ph-main > .ph-newsletter,
.ph-main > .ph-community,
.ph-main > .ph-app-v2,
.ph-newsletter,
.ph-community,
.ph-app-v2{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}
.ph-newsletter > .ph-nl-band,
.ph-community > .ph-community-inner,
.ph-app-v2 > .ph-app-v2-shell{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
.ph-nl-band-inner{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
@media (min-width:700px){
  .ph-newsletter,.ph-community,.ph-app-v2{
    padding-left:0!important;
    padding-right:0!important;
  }
}


/* v5.108.12 — reliable site-wide fixed header */
body.ph-sticky-header-enabled .ph-header:not(.ph-header-static){
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    top:var(--ph-fixed-header-top,0px) !important;
    width:100% !important;
    z-index:2147482000 !important;
    margin:0 !important;
    transform:none !important;
}
body.ph-sticky-header-enabled .ph-sticky-header-spacer{
    display:block !important;
    width:100%;
    height:var(--ph-fixed-header-height,0px);
    pointer-events:none;
}
@media (max-width:782px){
    body.admin-bar.ph-sticky-header-enabled .ph-header:not(.ph-header-static){
        top:var(--ph-fixed-header-top,0px) !important;
    }
}


/* v5.108.13 — frontend header sidebar: no logo at top */
.ph-mobile-drawer .ph-drawer-logo,
.ph-mobile-drawer .ph-sidebar-logo,
.ph-mobile-drawer .ph-logo,
.ph-header-drawer .ph-drawer-logo,
.ph-header-drawer .ph-sidebar-logo,
.ph-header-drawer .ph-logo,
.ph-sidebar .ph-sidebar-logo,
.ph-sidebar .ph-logo,
.ph-offcanvas .ph-sidebar-logo,
.ph-offcanvas .ph-logo{
    display:none !important;
}


/* v5.108.14 — auth forms: prevent browser autofill/contact icons overlapping text */
.ph-auth input[type="email"],
.ph-auth input[type="password"],
.ph-auth input[type="tel"],
.ph-auth input[type="text"],
.ph-login input[type="email"],
.ph-login input[type="password"],
.ph-login input[type="tel"],
.ph-login input[type="text"],
.ph-register input[type="email"],
.ph-register input[type="password"],
.ph-register input[type="tel"],
.ph-register input[type="text"],
.ph-account-auth input{
    box-sizing:border-box !important;
    width:100% !important;
    min-height:48px;
    padding:10px 48px 10px 14px !important;
    background-clip:padding-box;
}
.ph-auth input::-webkit-contacts-auto-fill-button,
.ph-auth input::-webkit-credentials-auto-fill-button,
.ph-login input::-webkit-contacts-auto-fill-button,
.ph-login input::-webkit-credentials-auto-fill-button,
.ph-register input::-webkit-contacts-auto-fill-button,
.ph-register input::-webkit-credentials-auto-fill-button,
.ph-account-auth input::-webkit-contacts-auto-fill-button,
.ph-account-auth input::-webkit-credentials-auto-fill-button{
    visibility:hidden !important;
    display:none !important;
    pointer-events:none !important;
    position:absolute !important;
    right:0 !important;
}
.ph-auth input::placeholder,
.ph-login input::placeholder,
.ph-register input::placeholder,
.ph-account-auth input::placeholder{
    opacity:.72;
    text-indent:0 !important;
}
.ph-auth-tabs,.ph-login-tabs,.ph-account-tabs{
    overflow:hidden;
}
@media (max-width:600px){
    .ph-auth input,.ph-login input,.ph-register input,.ph-account-auth input{
        min-height:46px;
        padding-left:13px !important;
        padding-right:44px !important;
    }
}


/* v5.108.15 — clean auth inputs + sidebar/main-header collision fix */
.ph-sidebar-head{
    justify-content:flex-end !important;
    min-height:48px;
    padding:8px 12px !important;
    padding-top:calc(8px + env(safe-area-inset-top,0px)) !important;
}
.ph-sidebar-head > img,
.ph-sidebar-head .ph-logo,
.ph-sidebar-head .ph-sidebar-logo{display:none !important;}
body.ph-sticky-header-enabled .ph-sidebar{
    top:calc(var(--ph-fixed-header-top,0px) + var(--ph-fixed-header-height,0px)) !important;
    height:calc(100dvh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
    max-height:calc(100dvh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
}
body.ph-sticky-header-enabled .ph-sidebar-overlay{
    top:calc(var(--ph-fixed-header-top,0px) + var(--ph-fixed-header-height,0px)) !important;
}
@supports not (height:100dvh){
 body.ph-sticky-header-enabled .ph-sidebar{
   height:calc(100vh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
   max-height:calc(100vh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
 }
}


/* v5.108.16 — mobile drawer starts directly below fixed header; remove empty top panel */
@media (max-width: 900px){
 body.ph-sticky-header-enabled .ph-sidebar{
   top:calc(var(--ph-fixed-header-top,0px) + var(--ph-fixed-header-height,0px)) !important;
   height:calc(100dvh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
   max-height:calc(100dvh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
   padding-top:0 !important;
 }
 body.ph-sticky-header-enabled .ph-sidebar-overlay{
   top:calc(var(--ph-fixed-header-top,0px) + var(--ph-fixed-header-height,0px)) !important;
   height:calc(100dvh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
 }
 .ph-sidebar-head{
   position:absolute !important;
   top:8px !important;
   right:8px !important;
   width:44px !important;
   height:44px !important;
   min-height:44px !important;
   padding:0 !important;
   margin:0 !important;
   border:0 !important;
   background:transparent !important;
   z-index:5 !important;
   display:flex !important;
   align-items:center !important;
   justify-content:center !important;
 }
 .ph-sidebar-head > :not(.ph-sidebar-close):not(.ph-close):not(button){display:none !important;}
 .ph-sidebar-nav,
 .ph-sidebar-menu{
   padding-top:0 !important;
   margin-top:0 !important;
 }
 .ph-sidebar > nav:first-of-type,
 .ph-sidebar > ul:first-of-type{
   margin-top:0 !important;
 }
}
@supports not (height:100dvh){
 @media (max-width:900px){
  body.ph-sticky-header-enabled .ph-sidebar,
  body.ph-sticky-header-enabled .ph-sidebar-overlay{
   height:calc(100vh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
   max-height:calc(100vh - var(--ph-fixed-header-top,0px) - var(--ph-fixed-header-height,0px)) !important;
  }
 }
}


/* v5.108.17 — drawer UX: no close button, blurred backdrop, active page */
@media (max-width:900px){
 .ph-sidebar-head,
 .ph-sidebar-close,
 .ph-sidebar .ph-close,
 .ph-sidebar button[aria-label*="Close"],
 .ph-sidebar button[title*="Close"]{
   display:none !important;
 }
 .ph-sidebar-overlay{
   background:rgba(15,23,42,.32) !important;
   -webkit-backdrop-filter:blur(7px) saturate(.85) !important;
   backdrop-filter:blur(7px) saturate(.85) !important;
 }
 .ph-sidebar a.ph-current-menu-item,
 .ph-sidebar a[aria-current="page"],
 .ph-sidebar .current-menu-item > a,
 .ph-sidebar .current_page_item > a,
 .ph-sidebar a.is-active{
   background:linear-gradient(90deg,rgba(79,70,229,.14),rgba(124,58,237,.08)) !important;
   color:#4f46e5 !important;
   font-weight:700 !important;
   border-left:4px solid #4f46e5 !important;
   padding-left:23px !important;
 }
}

/* v5.108.56 — Install App banner always inside visible page, directly above mobile nav */
@media(max-width:767px){
 #ph-pwa-banner{
  position:fixed!important;
  left:0!important;right:0!important;
  bottom:var(--mnbp-bar-height,64px)!important;
  z-index:2147482500!important;
  padding:6px 8px!important;
  padding-bottom:6px!important;
  box-sizing:border-box!important;
  transform:translateY(calc(100% + var(--mnbp-bar-height,64px)))!important;
 }
 #ph-pwa-banner.ph-pwa-show{transform:translateY(0)!important}
 #ph-pwa-banner .ph-pwa-inner{
  width:100%!important;max-width:560px!important;margin:0 auto!important;
  padding:8px 9px!important;border-radius:12px!important;gap:8px!important;
  box-shadow:0 -4px 20px rgba(15,23,42,.13)!important;
 }
 #ph-pwa-banner .ph-pwa-icon{width:38px!important;height:38px!important;border-radius:9px!important}
 #ph-pwa-banner .ph-pwa-name{font-size:12px!important}
 #ph-pwa-banner .ph-pwa-desc{font-size:10.5px!important}
 #ph-pwa-banner .ph-pwa-actions{gap:5px!important}
 #ph-pwa-banner .ph-pwa-btn{padding:7px 10px!important;border-radius:8px!important;font-size:11px!important}
 #ph-pwa-banner .ph-pwa-dismiss{width:27px!important;height:27px!important}
}

/* v5.109.01 — stable sticky header + My Account bottom footer */
body.ph-sticky-header-enabled .ph-header:not(.ph-header-static){animation:none!important;transition:none!important;will-change:auto!important}
body.ph-my-account-page{min-height:100vh!important;min-height:100dvh!important;display:flex!important;flex-direction:column!important}
body.ph-my-account-page>#ph-content{flex:1 0 auto!important;width:100%!important}
body.ph-my-account-page .ph-footer{margin-top:auto!important}

/* v5.109.03 — Store page uses the same stable site shell as every Pickikt page */
body.ph-body{min-height:100vh!important;min-height:100dvh!important;display:flex!important;flex-direction:column!important}
body.ph-body>#ph-content{flex:1 0 auto!important;width:100%!important}
body.ph-body>.ph-footer,body.ph-body>footer{margin-top:auto!important}
body.ph-body .ph-header:not(.ph-header-static){
 position:fixed!important;left:0!important;right:0!important;top:var(--ph-fixed-header-top,0px)!important;
 width:100%!important;z-index:2147482000!important;margin:0!important;transform:none!important;
 animation:none!important;transition:none!important
}
body.ph-body .ph-header:not(.ph-header-static)+.ph-sticky-header-spacer{
 display:block!important;width:100%!important;height:var(--ph-fixed-header-height,72px);flex:0 0 auto!important;pointer-events:none!important
}
@media(max-width:782px){
 body.ph-body .ph-header:not(.ph-header-static)+.ph-sticky-header-spacer{height:var(--ph-fixed-header-height,64px)}
}

/* v5.109.05 — Store Logo / Store Offers layout stability */
.ph-store-logos,
.ph-store-offers,
.ph-store-logo-section,
.ph-store-offer-section,
.store-logo-grid,
.store-offers-grid{
 contain:layout style;
}
.ph-store-logo-card,
.ph-store-offer-card,
.store-logo-card,
.store-offer-card{
 transform:none!important;
 translate:none!important;
 animation:none!important;
 transition-property:box-shadow,border-color,background-color!important;
}
.ph-store-logo-card img,
.store-logo-card img{
 display:block!important;
 width:100%!important;
 aspect-ratio:1/1!important;
 object-fit:contain!important;
 height:auto!important;
}
.ph-store-offer-card img,
.store-offer-card img{
 display:block!important;
 width:100%!important;
 aspect-ratio:16/9!important;
 object-fit:cover!important;
 height:auto!important;
}

/* v5.109.06 — global frontend refresh stability: sticky header stays in document flow */
body.ph-body .ph-header:not(.ph-header-static),
body.ph-sticky-header-enabled .ph-header:not(.ph-header-static){
 position:sticky!important;
 position:-webkit-sticky!important;
 top:var(--ph-fixed-header-top,0px)!important;
 left:auto!important;right:auto!important;
 width:100%!important;
 margin:0!important;
 transform:none!important;
 animation:none!important;
 transition:none!important;
 will-change:auto!important;
 z-index:2147482000!important;
}
body.ph-body .ph-sticky-header-spacer,
body.ph-sticky-header-enabled .ph-sticky-header-spacer{
 display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;
}
body.ph-body>#ph-content{
 margin-top:0!important;
 padding-top:0;
}


/* v5.109.44 — header stays sticky from first paint; no fixed/sticky mode jump */
.ph-header:not(.ph-header-static),
body.ph-sticky-header-enabled .ph-header:not(.ph-header-static){
	position:-webkit-sticky!important;
	position:sticky!important;
	top:var(--ph-fixed-header-top,0px)!important;
	left:auto!important;
	right:auto!important;
	width:100%!important;
	z-index:2147482000!important;
	margin:0!important;
	transform:none!important;
	animation:none!important;
	transition:none!important;
}
body.ph-sticky-header-enabled .ph-sticky-header-spacer{
	display:none!important;
	height:0!important;
}
@media (max-width:782px){
	body.admin-bar .ph-header:not(.ph-header-static),
	body.admin-bar.ph-sticky-header-enabled .ph-header:not(.ph-header-static){
		top:var(--ph-fixed-header-top,46px)!important;
	}
}


/* v5.109.47 — mobile header/sidebar stacking + top sticky header */
.ph-header:not(.ph-header-static),
body.ph-sticky-header-enabled .ph-header:not(.ph-header-static){
	position:-webkit-sticky!important;
	position:sticky!important;
	top:var(--ph-fixed-header-top,0px)!important;
	left:auto!important;
	right:auto!important;
	width:100%!important;
	z-index:2147482000!important;
	margin:0!important;
	transform:none!important;
	animation:none!important;
	transition:none!important;
}

/* The mobile side menu must cover the sticky header and bottom mobile nav. */
.ph-sidebar-overlay{
	position:fixed!important;
	inset:0!important;
	z-index:2147483500!important;
}
.ph-sidebar{
	position:fixed!important;
	top:0!important;
	bottom:0!important;
	left:-300px;
	height:100vh!important;
	height:100dvh!important;
	z-index:2147483600!important;
}
.ph-sidebar.active{
	left:0!important;
}
.ph-sidebar-head{
	position:sticky!important;
	top:0!important;
	z-index:2!important;
	background:#fff!important;
}

/* Keep the header pinned at the very top on phones/tablets too. */
@media (max-width:1024px){
	.ph-header:not(.ph-header-static),
	body.ph-sticky-header-enabled .ph-header:not(.ph-header-static){
		top:var(--ph-fixed-header-top,0px)!important;
	}
}
@media (max-width:782px){
	body.admin-bar .ph-header:not(.ph-header-static),
	body.admin-bar.ph-sticky-header-enabled .ph-header:not(.ph-header-static){
		top:var(--ph-fixed-header-top,46px)!important;
	}
	.ph-sidebar,
	.ph-sidebar-overlay{
		/* Mobile drawer sits above the WP/Pickikt header layers. */
		z-index:2147483600!important;
	}
	.ph-sidebar-overlay{
		z-index:2147483500!important;
	}
}


/* v5.109.48 — Pickikt header is mandatory sticky everywhere */
html body .ph-header,
html body .ph-header.ph-header-static,
html body.ph-body .ph-header,
html body.ph-sticky-header-enabled .ph-header{
	position:-webkit-sticky!important;
	position:sticky!important;
	top:var(--ph-fixed-header-top,0px)!important;
	left:auto!important;
	right:auto!important;
	width:100%!important;
	z-index:2147482000!important;
	margin:0!important;
	transform:none!important;
	animation:none!important;
	transition:none!important;
	will-change:auto!important;
}
html body .ph-sticky-header-spacer,
html body.ph-sticky-header-enabled .ph-sticky-header-spacer{
	display:none!important;
	height:0!important;
	min-height:0!important;
	margin:0!important;
	padding:0!important;
}
@media (max-width:782px){
	html body.admin-bar .ph-header,
	html body.admin-bar .ph-header.ph-header-static,
	html body.admin-bar.ph-sticky-header-enabled .ph-header{
		top:var(--ph-fixed-header-top,46px)!important;
	}
}


/* v5.109.49 — authoritative header + mobile sidebar layout
   Header is truly FIXED at the top everywhere. A real spacer is rendered
   immediately after it, so page content never jumps or hides underneath it.
   On mobile/tablet the side drawer stays INSIDE the page viewport: below the
   header and above the fixed bottom mobile navigation. */
html body .ph-header,
html body .ph-header.ph-header-static,
html body.ph-body .ph-header,
html body.ph-sticky-header-enabled .ph-header{
	position:fixed!important;
	top:var(--ph-fixed-header-top,0px)!important;
	left:0!important;
	right:0!important;
	width:100%!important;
	z-index:2147482000!important;
	margin:0!important;
	transform:none!important;
	animation:none!important;
	transition:none!important;
	will-change:auto!important;
}
html body .ph-sticky-header-spacer,
html body.ph-body .ph-sticky-header-spacer,
html body.ph-sticky-header-enabled .ph-sticky-header-spacer{
	display:block!important;
	width:100%!important;
	height:var(--ph-fixed-header-height,64px)!important;
	min-height:var(--ph-fixed-header-height,64px)!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	pointer-events:none!important;
	flex:0 0 var(--ph-fixed-header-height,64px)!important;
}
html body.ph-sidebar-open{
	overflow:hidden!important;
}

/* Mobile/tablet drawer is part of the page viewport, NOT over the header. */
@media (max-width:1024px){
	html body .ph-sidebar-overlay{
		position:fixed!important;
		left:0!important;
		right:0!important;
		top:var(--ph-sidebar-top,var(--ph-fixed-header-height,64px))!important;
		bottom:var(--ph-sidebar-bottom,0px)!important;
		height:auto!important;
		z-index:2147481900!important;
		background:rgba(22,22,41,.5)!important;
	}
	html body .ph-sidebar{
		position:fixed!important;
		top:var(--ph-sidebar-top,var(--ph-fixed-header-height,64px))!important;
		bottom:var(--ph-sidebar-bottom,0px)!important;
		height:auto!important;
		max-height:none!important;
		z-index:2147481950!important;
		overflow-y:auto!important;
		overscroll-behavior:contain!important;
		-webkit-overflow-scrolling:touch!important;
	}
	html body .ph-sidebar.active{left:0!important}
	html body .ph-sidebar-head{
		position:sticky!important;
		top:0!important;
		z-index:3!important;
		background:#fff!important;
	}
}

/* WP admin bar stays above the fixed Pickikt header. */
@media (min-width:783px){
	html body.admin-bar .ph-header{top:var(--ph-fixed-header-top,32px)!important}
}
@media (max-width:782px){
	html body.admin-bar .ph-header{top:var(--ph-fixed-header-top,46px)!important}
}


/* v5.109.50 — FINAL header behavior
   At page top the header remains in normal document flow: no fake blank gap.
   Once the page scrolls, JS adds .ph-header-is-fixed and the header is fixed
   to the viewport top. The spacer only has height while fixed. */
html body .ph-header,
html body .ph-header.ph-header-static,
html body.ph-body .ph-header,
html body.ph-sticky-header-enabled .ph-header{
	position:relative!important;
	top:auto!important;
	left:auto!important;
	right:auto!important;
	width:100%!important;
	z-index:2147482000!important;
	margin:0!important;
	transform:none!important;
	animation:none!important;
	transition:none!important;
	will-change:auto!important;
}
html body.ph-header-is-fixed .ph-header,
html body.ph-header-is-fixed.ph-body .ph-header,
html body.ph-header-is-fixed.ph-sticky-header-enabled .ph-header{
	position:fixed!important;
	top:var(--ph-fixed-header-top,0px)!important;
	left:0!important;
	right:0!important;
	width:100%!important;
	z-index:2147482000!important;
	box-shadow:0 3px 14px rgba(15,23,42,.10)!important;
}
html body .ph-sticky-header-spacer,
html body.ph-body .ph-sticky-header-spacer,
html body.ph-sticky-header-enabled .ph-sticky-header-spacer{
	display:block!important;
	height:0!important;
	min-height:0!important;
	flex:0 0 0!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	pointer-events:none!important;
}
html body.ph-header-is-fixed .ph-sticky-header-spacer{
	height:var(--ph-fixed-header-height,64px)!important;
	min-height:var(--ph-fixed-header-height,64px)!important;
	flex-basis:var(--ph-fixed-header-height,64px)!important;
}

/* Remove accumulated top spacing from the page shell. */
html body #ph-content,
html body.ph-body #ph-content{
	margin-top:0!important;
	padding-top:0!important;
}
html body #ph-content>.ph-page-content{
	margin-top:0!important;
	padding-top:0!important;
}
html body #ph-content>.ph-page-content>:first-child,
html body #ph-content>:first-child{
	margin-top:0!important;
}
html body #ph-content p:empty{
	display:none!important;
	margin:0!important;
	padding:0!important;
}

/* Deal Board / Daily Deals: no artificial blank band above the content. */
html body #dd-wrapper{
	margin-top:0!important;
	padding-top:12px!important;
}

/* Mobile drawer remains INSIDE the page viewport:
   below the visible header and above bottom mobile navigation. */
@media(max-width:1024px){
	html body .ph-sidebar-overlay{
		position:fixed!important;
		left:0!important;
		right:0!important;
		top:var(--ph-sidebar-top,var(--ph-fixed-header-height,64px))!important;
		bottom:var(--ph-sidebar-bottom,0px)!important;
		height:auto!important;
		z-index:2147481900!important;
	}
	html body .ph-sidebar{
		position:fixed!important;
		top:var(--ph-sidebar-top,var(--ph-fixed-header-height,64px))!important;
		bottom:var(--ph-sidebar-bottom,0px)!important;
		height:auto!important;
		max-height:none!important;
		z-index:2147481950!important;
		overflow-y:auto!important;
		-webkit-overflow-scrolling:touch!important;
	}
}

/* v5.109.57 — customer Orders payment screenshot */
.acc-payment-proof-image img{transition:transform .18s ease,box-shadow .18s ease}
.acc-payment-proof-image:hover img{transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,23,42,.10)}
@media(max-width:520px){
 .acc-payment-proof-image{display:block!important;width:100%!important}
 .acc-payment-proof-image img{width:100%!important;max-width:100%!important;max-height:360px!important}
}


/* v5.116 — Store logo card architecture refresh (card only) */
.ph-store-logo-wrap,.ph-va-store-card-wrap{position:relative;min-width:0;background:#fff;border:1px solid #e8ebf0;border-radius:16px;overflow:hidden;box-shadow:0 2px 8px rgba(15,23,42,.04);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ph-store-logo-wrap:hover,.ph-va-store-card-wrap:hover{transform:translateY(-3px);border-color:#d7dce5;box-shadow:0 10px 26px rgba(15,23,42,.09)}
.ph-store-logo-wrap.has-deal .ph-store-logo,.ph-va-store-card-wrap.has-deal .ph-va-store-card{border-radius:0!important;border:0!important}
.ph-store-logo,.ph-va-store-card{min-height:126px!important;max-height:none!important;height:auto!important;padding:14px 12px 11px!important;border:0!important;border-radius:0!important;background:#fff!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;box-sizing:border-box;text-decoration:none!important}
.ph-store-logo-stage,.ph-va-store-logo-stage{width:100%;height:70px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#f8fafc;border:1px solid #f0f2f5;box-sizing:border-box;padding:10px}
.ph-store-logo-stage img,.ph-va-store-logo-stage img,.ph-store-logo img,.ph-va-store-card img{max-width:88%!important;max-height:48px!important;width:auto!important;height:auto!important;object-fit:contain!important;background:transparent!important}
.ph-store-card-name,.ph-va-store-name{display:block;width:100%;margin:0;color:#111827;font-size:13px;font-weight:750;line-height:1.25;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ph-va-store-caption{display:block;width:100%;margin:0!important;color:#6b7280!important;font-size:10.5px!important;font-weight:600!important;line-height:1.2;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ph-store-logo-readmore,.ph-va-store-readmore{min-height:35px;padding:8px 10px!important;border:0!important;border-top:1px solid #eef0f3!important;border-radius:0!important;background:#fff!important;color:#4f46e5!important;font-size:11px!important;font-weight:750!important;box-shadow:none!important;transition:background .15s ease,color .15s ease!important}
.ph-store-logo-readmore:hover,.ph-va-store-readmore:hover{background:#f7f7ff!important;color:#4338ca!important}
.ph-store-logo-readmore svg,.ph-va-store-readmore svg{width:12px;height:12px}
@media(max-width:600px){.ph-store-logo-wrap,.ph-va-store-card-wrap{border-radius:13px}.ph-store-logo,.ph-va-store-card{min-height:108px!important;padding:10px 8px 8px!important;gap:6px!important}.ph-store-logo-stage,.ph-va-store-logo-stage{height:58px;border-radius:9px;padding:8px}.ph-store-logo-stage img,.ph-va-store-logo-stage img,.ph-store-logo img,.ph-va-store-card img{max-height:39px!important}.ph-store-card-name,.ph-va-store-name{font-size:11.5px}.ph-store-logo-readmore,.ph-va-store-readmore{min-height:32px;padding:7px 6px!important;font-size:10px!important}}

/* v5.117.0 — Popular Products carousel */
.ph-products .ph-product-grid-wrap{position:relative;overflow:hidden;}
.ph-products .ph-product-grid{display:flex!important;grid-template-columns:none!important;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 2px 10px;}
.ph-products .ph-product-grid::-webkit-scrollbar{display:none;}
.ph-products .ph-product-card{flex:0 0 calc((100% - 48px)/4);min-width:0;scroll-snap-align:start;}
.ph-products .ph-product-carousel-nav{display:flex;gap:8px;position:absolute;right:0;top:-56px;z-index:4;}
.ph-products .ph-product-carousel-btn{width:40px;height:40px;border:1px solid #d9e0ea;background:#fff;border-radius:50%;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 14px rgba(15,23,42,.08);font-size:22px;line-height:1;color:#0f172a;transition:.18s ease;}
.ph-products .ph-product-carousel-btn:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(15,23,42,.14);}
.ph-products .ph-product-carousel-btn:disabled{opacity:.35;cursor:default;transform:none;}
@media(max-width:900px){.ph-products .ph-product-card{flex-basis:calc((100% - 28px)/2.35);}.ph-products .ph-product-grid{gap:14px;}}
@media(max-width:600px){.ph-products .ph-product-card{flex-basis:84%;}.ph-products .ph-product-grid{gap:12px;padding-right:14%;}.ph-products .ph-product-carousel-nav{display:none;}}

/* v5.126.0 — collapse Store Offers card name space when Store Name = Hide */
.ph-va-store-card-wrap.no-store-name .ph-va-store-card{
  min-height:0!important;
  height:auto!important;
  padding:10px 8px!important;
  gap:0!important;
  justify-content:center!important;
}
.ph-va-store-card-wrap.no-store-name .ph-va-store-logo-stage{
  margin:0!important;
}
@media(max-width:600px){
  .ph-va-store-card-wrap.no-store-name .ph-va-store-card{
    min-height:0!important;
    padding:9px 8px!important;
    gap:0!important;
  }
}

/* v5.129.0 — authoritative mobile/tablet header drawer */
@media (max-width:1400px){
 html body .ph-sidebar{
   display:block!important;position:fixed!important;
   top:var(--ph-sidebar-top,var(--ph-fixed-header-height,64px))!important;
   bottom:calc(var(--ph-sidebar-bottom,0px) + var(--ph-visual-viewport-bottom,0px))!important;
   left:0!important;width:min(86vw,320px)!important;height:auto!important;
   max-height:none!important;background:#fff!important;
   transform:translate3d(-105%,0,0)!important;
   visibility:hidden!important;opacity:1!important;
   transition:transform .24s ease,visibility 0s linear .24s!important;
   z-index:2147483646!important;overflow-y:auto!important;
   -webkit-overflow-scrolling:touch!important;pointer-events:none!important;
 }
 html body .ph-sidebar.active,
 html body.ph-sidebar-open .ph-sidebar{
   transform:translate3d(0,0,0)!important;visibility:visible!important;
   transition:transform .24s ease!important;pointer-events:auto!important;
 }
 html body .ph-sidebar-overlay{
   display:block!important;position:fixed!important;
   top:var(--ph-sidebar-top,var(--ph-fixed-header-height,64px))!important;
   bottom:calc(var(--ph-sidebar-bottom,0px) + var(--ph-visual-viewport-bottom,0px))!important;
   left:0!important;right:0!important;background:rgba(15,23,42,.48)!important;
   opacity:0!important;visibility:hidden!important;pointer-events:none!important;
   transition:opacity .2s ease,visibility 0s linear .2s!important;z-index:2147483645!important;
 }
 html body .ph-sidebar-overlay.active,
 html body.ph-sidebar-open .ph-sidebar-overlay{
   opacity:1!important;visibility:visible!important;pointer-events:auto!important;
   transition:opacity .2s ease!important;
 }
 html body.ph-sidebar-open{overflow:hidden!important;touch-action:none!important;}
 .ph-sidebar-nav{display:flex!important;flex-direction:column!important;}
}

/* v5.130.0 — authoritative mobile/tablet header drawer visibility */
@media (max-width:1024px){
 html body .ph-sidebar{
   display:block!important;position:fixed!important;inset:0 auto 0 0!important;
   top:0!important;bottom:0!important;left:0!important;
   width:min(86vw,320px)!important;height:100dvh!important;max-height:100dvh!important;
   margin:0!important;background:#fff!important;z-index:2147483647!important;
   transform:translate3d(-105%,0,0)!important;visibility:hidden!important;
   opacity:1!important;pointer-events:none!important;overflow-y:auto!important;
   transition:transform .24s ease,visibility 0s linear .24s!important;
 }
 html body .ph-sidebar.active,html body.ph-sidebar-open .ph-sidebar{
   transform:translate3d(0,0,0)!important;visibility:visible!important;
   pointer-events:auto!important;transition:transform .24s ease!important;
 }
 html body .ph-sidebar-overlay{
   display:block!important;position:fixed!important;inset:0!important;
   background:rgba(15,23,42,.52)!important;z-index:2147483646!important;
   opacity:0!important;visibility:hidden!important;pointer-events:none!important;
 }
 html body .ph-sidebar-overlay.active,html body.ph-sidebar-open .ph-sidebar-overlay{
   opacity:1!important;visibility:visible!important;pointer-events:auto!important;
 }
 html body .ph-sidebar-toggle{position:relative!important;z-index:2147483647!important;pointer-events:auto!important;touch-action:manipulation!important}
}


/* v5.157.10 — Popular Products compact mobile architecture */
.ph-products .ph-product-save{font-size:11px;font-weight:750;color:#15803d;margin-top:3px}
.ph-products .ph-product-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}
.ph-products .ph-product-detail-btn,.ph-products .ph-product-share-btn{height:34px;border:1px solid #e2e8f0;border-radius:9px;background:#fff;color:#334155;font-size:11.5px;font-weight:750;display:flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;padding:0 8px}
@media(max-width:600px){
 .ph-products{padding-top:10px!important;padding-bottom:10px!important}
 .ph-products .ph-section-head{margin-bottom:8px!important}
 .ph-products .ph-section-head h2{font-size:22px!important;line-height:1.15!important;margin:0!important}
 .ph-products .ph-product-tabs{gap:6px!important;margin:0 0 10px!important;overflow-x:auto!important;flex-wrap:nowrap!important;scrollbar-width:none;padding-bottom:2px!important}
 .ph-products .ph-product-tabs::-webkit-scrollbar{display:none}
 .ph-products .ph-tab{flex:0 0 auto!important;min-height:34px!important;padding:7px 12px!important;border-radius:9px!important;font-size:12px!important}
 .ph-products .ph-product-grid{gap:9px!important;padding:1px 18% 8px 1px!important}
 .ph-products .ph-product-card{flex:0 0 64%!important;border-radius:12px!important}
 .ph-products .ph-product-img{aspect-ratio:1/1!important;background:#f8fafc!important}
 .ph-products .ph-product-img img{object-fit:cover!important}
 .ph-products .ph-product-img .ph-badge-off{font-size:10px!important;padding:4px 8px!important}
 .ph-products .ph-store-product-body{padding:9px!important}
 .ph-products .ph-store-product-title{font-size:13px!important;line-height:1.3!important;min-height:34px!important;margin:0 0 6px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
 .ph-products .ph-store-price{display:flex!important;align-items:baseline!important;gap:6px!important;flex-wrap:wrap!important;margin:0!important}
 .ph-products .ph-price-current{font-size:17px!important;font-weight:850!important}
 .ph-products .ph-price-mrp{font-size:11px!important}
 .ph-products .ph-product-save{font-size:10px!important;margin-top:2px!important}
 .ph-products .ph-product-quick-actions{gap:5px!important;margin-top:6px!important}
 .ph-products .ph-product-detail-btn,.ph-products .ph-product-share-btn{height:30px!important;font-size:10.5px!important;border-radius:8px!important}
 .ph-products .ph-card-actions{margin-top:6px!important}
 .ph-products .ph-card-atc-btn{min-height:34px!important;height:34px!important;padding:0 8px!important;border-radius:9px!important;font-size:11.5px!important}
}
@media(max-width:380px){.ph-products .ph-product-card{flex-basis:68%!important}}


/* v5.157.12 — Popular Products 3:4 image + one-row actions */
.ph-products .ph-product-detail-btn{display:none!important;}
.ph-products .ph-product-img{aspect-ratio:3/4!important;height:auto!important;min-height:0!important;background:#f8fafc!important;overflow:hidden!important;}
.ph-products .ph-product-img img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;padding:0!important;}
.ph-products .ph-product-card:hover .ph-product-img img{transform:none!important;}
.ph-products .ph-product-inline-actions{display:grid!important;grid-template-columns:minmax(78px,.72fr) minmax(0,1.28fr)!important;gap:7px!important;align-items:stretch!important;margin-top:8px!important;padding:0!important;}
.ph-products .ph-product-inline-actions .ph-product-share-btn,.ph-products .ph-product-inline-actions .ph-card-atc-btn{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;margin:0!important;box-sizing:border-box!important;}
@media(max-width:600px){
 .ph-products .ph-product-img{aspect-ratio:3/4!important;height:auto!important;min-height:0!important;}
 .ph-products .ph-product-inline-actions{display:grid!important;grid-template-columns:minmax(68px,.68fr) minmax(0,1.32fr)!important;gap:6px!important;margin-top:7px!important;}
 .ph-products .ph-product-inline-actions .ph-product-share-btn,.ph-products .ph-product-inline-actions .ph-card-atc-btn{height:34px!important;min-height:34px!important;border-radius:9px!important;font-size:11px!important;white-space:nowrap!important;}
}

/* v5.158.1 — FINAL mobile/tablet drawer viewport containment.
   Drawer begins below the visible Pickikt header and ends above bottom nav. */
@media (max-width:1024px){
 html body .ph-sidebar,
 html body.ph-sidebar-open .ph-sidebar,
 html body .ph-sidebar.active{
   top:var(--ph-sidebar-top,var(--ph-fixed-header-height,64px))!important;
   bottom:calc(var(--ph-sidebar-bottom,72px) + var(--ph-visual-viewport-bottom,0px))!important;
   left:0!important;
   height:auto!important;
   max-height:none!important;
   min-height:0!important;
   width:min(86vw,320px)!important;
   box-sizing:border-box!important;
 }
 html body .ph-sidebar-overlay,
 html body.ph-sidebar-open .ph-sidebar-overlay,
 html body .ph-sidebar-overlay.active{
   top:var(--ph-sidebar-top,var(--ph-fixed-header-height,64px))!important;
   bottom:calc(var(--ph-sidebar-bottom,72px) + var(--ph-visual-viewport-bottom,0px))!important;
   left:0!important;right:0!important;height:auto!important;
 }
}
