/* Optional theme-specific adjustments, loaded last.
For changes that survive future theme zip replacements, use:
wp-content/uploads/perfect/custom.css
That file is loaded AFTER this file and is never overwritten by this package.
*/

/* Product showcase: calm brand header with heading copy beside the controls. */
.perfect-home .perfect-section-head-refined{
  box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;
  gap:16px 28px;min-height:112px;padding:22px clamp(18px,3vw,34px);
  background:linear-gradient(110deg,#fbf9fc 0%,#faf7fb 55%,#f7f1f8 100%);
  border:1px solid #eee4ef;border-radius:20px;margin-bottom:18px;
}
.perfect-home .perfect-section-heading-copy{min-width:0;max-width:70%;padding-inline-start:16px;border-inline-start:3px solid #8e4a7e;text-align:start}
.perfect-home .perfect-section-heading-copy h2{margin:0;color:#4a2546;font-size:clamp(22px,2.35vw,32px);font-weight:800;line-height:1.35}
.perfect-home .perfect-section-heading-copy .perfect-section-description{margin:5px 0 0;color:#786d7e;font-size:clamp(12px,1.05vw,15px);line-height:1.65}
.perfect-home .perfect-section-head-refined .perfect-section-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin:0;flex-shrink:0}
.perfect-home .perfect-section-head-refined .perfect-section-actions>a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;border:1px solid #e6d7e7;border-radius:999px;background:#fff;color:#63315d;text-decoration:none;font-weight:700;font-size:13px}
.perfect-home .perfect-section-head-refined .perfect-controls{display:flex;align-items:center;gap:7px;margin:0}
.perfect-home .perfect-section-head-refined .perfect-controls button{display:inline-grid;place-items:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border:1px solid #e6d7e7;border-radius:50%;background:#fff;color:#63315d}
.perfect-home .perfect-section-head-refined .perfect-section-actions>a:hover,.perfect-home .perfect-section-head-refined .perfect-controls button:hover{border-color:#8e4a7e;background:#f8eff8}
.perfect-home .perfect-product h3{font-weight:700;color:var(--p-ink);line-height:1.55}
.perfect-home .perfect-product .perfect-wa{align-items:center;justify-content:center;gap:9px;min-height:46px;border:1px solid #a8619f;border-radius:12px;background:#fdf9fd;color:#64305f;font-size:13px;font-weight:700;text-decoration:none;transition:background-color .2s,border-color .2s}
.perfect-home .perfect-product .perfect-wa:hover{background:#f4e9f4;border-color:#8e4a7e}
.perfect-home .perfect-product .perfect-wa svg{width:20px;height:20px;flex:none;color:#22aa59}
html[data-theme="dark"] .perfect-home .perfect-section-head-refined{background:linear-gradient(110deg,#261f2a,#322537);border-color:#59415b}
html[data-theme="dark"] .perfect-home .perfect-section-heading-copy h2{color:#f8edf7}
html[data-theme="dark"] .perfect-home .perfect-section-heading-copy .perfect-section-description{color:#d6c6d7}
html[data-theme="dark"] .perfect-home .perfect-section-head-refined .perfect-section-actions>a,html[data-theme="dark"] .perfect-home .perfect-section-head-refined .perfect-controls button{background:#35283a;border-color:#59415b;color:#f8edf7}
html[data-theme="dark"] .perfect-home .perfect-product .perfect-wa{background:#35283a;color:#f8edf7}
@media(max-width:600px){
  .perfect-home .perfect-section-head-refined{min-height:92px;gap:10px;padding:15px 13px;border-radius:15px;margin-bottom:13px}
  .perfect-home .perfect-section-heading-copy{max-width:62%;padding-inline-start:9px;border-inline-start-width:2px}
  .perfect-home .perfect-section-heading-copy h2{font-size:clamp(17px,5vw,22px)}
  .perfect-home .perfect-section-heading-copy .perfect-section-description{font-size:11px;margin-top:3px;line-height:1.5}
  .perfect-home .perfect-section-head-refined .perfect-section-actions{max-width:38%;gap:5px}
  .perfect-home .perfect-section-head-refined .perfect-section-actions>a{min-height:34px;padding:6px 11px;font-size:11px}
  .perfect-home .perfect-section-head-refined .perfect-controls button{width:31px;height:31px;min-width:31px;min-height:31px}
  .perfect-home .perfect-product .perfect-wa{min-height:40px;font-size:11px;border-radius:9px}
}

/* Showcase product cards. The surrounding tint stays gentle and full width. */
.perfect-home .perfect-products{position:relative;isolation:isolate;padding-block:22px 26px;background:#fbf9fc}
.perfect-home .perfect-products::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:#fbf9fc;box-shadow:0 0 0 100vmax #fbf9fc;clip-path:inset(0 -100vmax)}
.perfect-home .perfect-products .perfect-track{align-items:stretch}
.perfect-home .perfect-products .perfect-product{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #f0e9f2;border-radius:17px;box-shadow:0 8px 26px #6732620b;overflow:hidden}
.perfect-home .perfect-products .perfect-product-main{display:flex;flex-direction:column;text-decoration:none}
.perfect-home .perfect-products .perfect-product-main h3{height:auto;min-height:2.8em;margin:12px 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:700;color:#4a2546}
.perfect-product-subtitle{margin:0 0 5px;color:#737784;font-size:12px;line-height:1.55;min-height:1.55em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.perfect-product-rating{display:flex;align-items:center;gap:6px;margin:4px 0 11px;direction:ltr;justify-content:flex-end;color:#646775;font-size:12px;line-height:1.5}
.perfect-product-rating .perfect-rating-stars{color:#f2aa26;font-size:17px;letter-spacing:1px;white-space:nowrap}
.perfect-product-rating .perfect-rating-count{color:#7b7e8b}
.perfect-home .perfect-products .perfect-product-bottom{margin-top:auto}
.perfect-home .perfect-products .perfect-wa{display:flex;flex-direction:row-reverse;justify-content:center;gap:9px;min-height:46px;width:100%;border:1.5px solid #a94ea6;border-radius:12px;background:#fffbff;color:#5f285b;font-size:13px;font-weight:700;line-height:1.3;text-decoration:none}
.perfect-home .perfect-products .perfect-wa svg{color:#29bb58;fill:none;width:23px;height:23px}
.perfect-favorite{position:absolute;z-index:2;top:14px;inset-inline-start:14px;display:grid;place-items:center;width:37px;height:37px;border:0;border-radius:50%;background:#f8edf9;color:#5d2e58;cursor:pointer}
.perfect-favorite svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}
.perfect-favorite[aria-pressed="true"]{color:#8e4a7e;background:#f3e3f1}
.perfect-favorite[aria-pressed="true"] svg{fill:currentColor}
html[data-theme="dark"] .perfect-home .perfect-products,html[data-theme="dark"] .perfect-home .perfect-products::before{background:#211c25;box-shadow:0 0 0 100vmax #211c25}
html[data-theme="dark"] .perfect-home .perfect-products .perfect-product{background:#302733;border-color:#57415a}
html[data-theme="dark"] .perfect-home .perfect-products .perfect-product-main h3{color:#f5eaf5}
html[data-theme="dark"] .perfect-product-subtitle{color:#c7baca}
@media(max-width:600px){.perfect-home .perfect-products{padding-block:15px 20px}.perfect-home .perfect-products .perfect-product{padding:8px}.perfect-product-subtitle,.perfect-product-rating{font-size:10px}.perfect-product-rating .perfect-rating-stars{font-size:13px;letter-spacing:0}.perfect-favorite{top:12px;inset-inline-start:12px;width:30px;height:30px}.perfect-favorite svg{width:18px;height:18px}.perfect-home .perfect-products .perfect-wa{font-size:11px;min-height:40px;gap:5px}}

/* Floating WhatsApp category selector. */
.perfect-message-widget{position:fixed;z-index:9998;left:22px;bottom:calc(22px + env(safe-area-inset-bottom));font-family:inherit;direction:rtl}
.perfect-message-toggle{display:flex;align-items:center;justify-content:center;gap:9px;min-height:56px;padding:10px 19px;border:1px solid #b778a9;border-radius:999px;background:#8e4a7e;color:#fff;font-size:15px;font-weight:800;box-shadow:0 6px 20px #8e4a7e66,0 0 0 5px #8e4a7e18;animation:perfect-message-glow 3.2s ease-in-out infinite;cursor:pointer}
.perfect-message-toggle svg{width:25px;height:25px;flex:none}
.perfect-message-toggle:hover,.perfect-message-toggle[aria-expanded="true"]{background:#793b70;box-shadow:0 8px 28px #8e4a7e88,0 0 0 7px #8e4a7e20}
@keyframes perfect-message-glow{0%,100%{box-shadow:0 6px 20px #8e4a7e66,0 0 0 4px #8e4a7e15}50%{box-shadow:0 8px 29px #8e4a7e88,0 0 0 10px #8e4a7e0d}}
.perfect-message-panel{box-sizing:border-box;width:min(315px,calc(100vw - 28px));margin-bottom:13px;padding:17px;border:1px solid #ecdfea;border-radius:19px;background:#fff;color:#493149;box-shadow:0 16px 50px #29152d2b;text-align:start}
.perfect-message-title{font-size:17px;font-weight:800;line-height:1.45;color:#55284f}
.perfect-message-panel p{font-size:12px;color:#817388;margin:4px 0 13px;line-height:1.6}
.perfect-message-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.perfect-message-panel li{margin:0;padding:0}
.perfect-message-panel a{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:9px 12px;border:1px solid #efe5ef;border-radius:10px;background:#fcf9fc;color:#51264d;text-decoration:none;font-size:13px;font-weight:700}
.perfect-message-panel a:hover,.perfect-message-panel a:focus-visible{border-color:#b774a9;background:#f8eff7}
.perfect-message-panel a span{color:#8e4a7e}
html[data-theme="dark"] .perfect-message-panel{background:#2c2330;color:#f3eaf3;border-color:#624463}
html[data-theme="dark"] .perfect-message-title{color:#f6eaf4}
html[data-theme="dark"] .perfect-message-panel p{color:#c9b9cb}
html[data-theme="dark"] .perfect-message-panel a{background:#3a2d3e;color:#f4e9f3;border-color:#604763}
@media(max-width:600px){.perfect-message-widget{left:14px;bottom:calc(15px + env(safe-area-inset-bottom))}.perfect-message-toggle{min-height:52px;padding:9px 15px;font-size:13px}.perfect-message-toggle svg{width:22px;height:22px}}
@media(prefers-reduced-motion:reduce){.perfect-message-toggle{animation:none}}

.perfect-dashboard .perfect-footer-logo-field{margin:14px 0;padding:17px;border:1px solid #dbc9df;border-radius:12px}
.perfect-dashboard .perfect-footer-logo-field legend{font-weight:700;color:#603359;padding-inline:7px}
.perfect-dashboard .perfect-footer-logo-field p{font-size:13px;line-height:1.7;color:#756b78}
.perfect-dashboard .perfect-footer-logo-preview{min-height:65px;display:flex;align-items:center;margin:12px 0}
.perfect-dashboard .perfect-footer-logo-preview img{display:block;width:auto;max-width:170px;max-height:110px;object-fit:contain;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 0 0/16px 16px;border-radius:8px;padding:6px}
.perfect-dashboard .perfect-footer-logo-remove{display:flex;align-items:center;gap:7px;font-size:13px}
