@font-face{font-family:"Inter Tight";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/inter-tight-regular.ttf") format("truetype")}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/inter-tight-semibold.ttf") format("truetype")}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/inter-tight-bold.ttf") format("truetype")}

:is(.pp-cart,.pp-product,.pp-account,.pp-admin){
    --pp-core:#0F172A;
    --pp-accent:#2563EB;
    --pp-bg:#F1F5F9;
    --pp-border:#DEE7F7;
    color:var(--pp-core);font-size:14px;font-weight:400;line-height:1.6;text-align:left;
}
:is(.pp-cart,.pp-product,.pp-account,.pp-admin),
:is(.pp-cart,.pp-product,.pp-account,.pp-admin) *{
    box-sizing:border-box;font-family:"Inter Tight",sans-serif!important;
}
:is(.pp-cart,.pp-product,.pp-account,.pp-admin) :is(p,small,label,input,select,textarea,button,td,li,code,.button){
    font-size:14px!important;font-weight:400!important;line-height:1.6;
}
:is(.pp-cart,.pp-product,.pp-account,.pp-admin) :is(p,small,label,td,th,li,code){color:var(--pp-core)}
:is(.pp-cart,.pp-product,.pp-account,.pp-admin) :is(strong,b){font-weight:700}
:is(.pp-cart,.pp-product,.pp-account,.pp-admin) a{color:var(--pp-accent);text-decoration:underline}
.pp-cart,.pp-product,.pp-balance{
    background:var(--pp-bg);border:1px solid var(--pp-border);border-radius:10px;padding:18px;
}
.pp-cart,.pp-product{margin:0!important}
.pp-balance{margin:16px 0}
.pp-heading,:is(.pp-account,.pp-admin) :is(h1,h2,h3){
    color:var(--pp-core)!important;font-weight:700!important;line-height:1.3;letter-spacing:normal;text-transform:none;
}
.pp-heading{font-size:16px;margin-bottom:6px}
:is(.pp-account,.pp-admin) h1{font-size:24px!important}
:is(.pp-account,.pp-admin) h2{font-size:20px!important}
:is(.pp-account,.pp-admin) h3{font-size:16px!important}
.pp-cart p{margin:6px 0 12px}
.pp-product{display:flex;align-items:flex-start;gap:14px}
.pp-product-copy,.pp-header-copy{min-width:0;flex:1}
.pp-product .pp-product-label{display:block;color:var(--pp-core)!important;font-size:18px!important;font-weight:700!important;line-height:1.35;letter-spacing:-.01em}
.pp-reward-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 40px;border-radius:10px;background:var(--pp-accent)}
.pp-reward-icon::before{content:"";display:block;width:24px;height:24px;background:url("reward.svg") center/contain no-repeat}
.pp-rewards-header{display:flex;align-items:flex-start;gap:12px}
.pp-rewards-header .pp-heading{font-size:18px!important;margin:0 0 4px}
.pp-rewards-header .pp-earning{margin:0}
.pp-elementor-mini{width:100%;max-width:100%;min-width:0;grid-column:1/-1;flex-shrink:0;clear:both}
.pp-elementor-mini .pp-heading{font-size:16px!important}
.pp-elementor-mini .pp-reward-icon{width:36px;height:36px;flex-basis:36px}
.pp-elementor-mini[hidden]{display:none!important}
.pp-cart small,.pp-product small{display:block;margin-top:8px}
.pp-controls{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:12px 0}
.pp-controls label{display:block}
.pp-controls input{
    display:block!important;width:140px!important;min-height:44px;border:1px solid var(--pp-border)!important;
    border-radius:10px;padding:8px!important;background:var(--pp-bg)!important;color:var(--pp-core)!important;
}
.pp-controls .button,.pp-admin .button-primary{
    min-height:44px;background:var(--pp-accent)!important;color:#FFFFFF!important;padding:10px 16px!important;
    border-radius:10px;border:1px solid var(--pp-accent);cursor:pointer;text-shadow:none;box-shadow:none;
}
.pp-remove{border:0!important;background:transparent!important;color:var(--pp-accent)!important;text-decoration:underline;padding:4px 0!important;cursor:pointer}
.pp-feedback:empty{display:none}
.pp-cart[data-redeem="no"] .pp-redemption{display:none}
.pp-cart.pp-compact{padding:12px}
.pp-balance strong{display:block;font-size:28px;line-height:1.2}
.pp-balance span{font-size:14px;font-weight:400}
.pp-table-wrap{overflow-x:auto}
.pp-account table,.pp-admin .widefat{
    width:100%;font-size:14px;background:var(--pp-bg);border:1px solid var(--pp-border);border-radius:10px;border-spacing:0;overflow:hidden;
}
.pp-account th,.pp-account td{padding:10px;text-align:left;border-color:var(--pp-border)}
.pp-account th,.pp-admin th{color:var(--pp-core);font-size:14px;font-weight:700}
.pp-admin .striped>tbody>:nth-child(odd){background:var(--pp-bg)}
.pp-admin :is(input:not([type="checkbox"]),select,textarea,.notice){
    background:var(--pp-bg);color:var(--pp-core);border:1px solid var(--pp-border);border-radius:10px;
}
.pp-admin input[type="checkbox"]{accent-color:var(--pp-accent)}
.pp-admin .pp-settings-summary{max-width:760px;background:var(--pp-bg);border:1px solid var(--pp-border);border-radius:10px;padding:18px;margin:20px 0}
.pp-admin .pp-settings-summary h2{margin-top:0}
.pp-admin #pp-rate-preview p:first-child{font-weight:700!important;color:var(--pp-accent)}
.pp-admin .pp-customer-picker{max-width:620px}
.pp-admin #pp-customer-search{display:block;width:100%;min-height:44px;padding:8px 12px;margin-top:8px}
.pp-admin #pp-customer-results{list-style:none;padding:0;margin:0}
.pp-admin #pp-customer-results li{margin:6px 0}
.pp-admin .pp-customer-option{display:block;width:100%;padding:10px 12px;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:var(--pp-bg);color:var(--pp-core);border:1px solid var(--pp-border);border-radius:10px}
.pp-admin .pp-customer-option:hover{border-color:var(--pp-accent)}
.pp-admin #pp-customer-selected{font-weight:700!important;overflow-wrap:anywhere}
.pp-admin .button-secondary,.pp-admin .button:not(.button-primary){color:var(--pp-accent);background:var(--pp-bg);border-color:var(--pp-border);border-radius:10px}
.pp-account nav a{display:inline-block;margin-right:18px}
.pp-cart button:disabled{opacity:.6;cursor:wait}
:is(.pp-cart,.pp-product,.pp-account,.pp-admin) :is(input,select,textarea,button,a):focus-visible{outline:2px solid var(--pp-accent);outline-offset:3px}
@media(max-width:480px){
    .pp-cart,.pp-product{padding:14px}
    .pp-controls{align-items:stretch}
    .pp-controls label,.pp-controls input{width:100%!important}
    .pp-controls .button{width:100%}
    .pp-product{gap:12px}
    .pp-product .pp-product-label{font-size:17px!important}
}

/* Compact Elementor header link: no card background, border or outer spacing. */
a.pp-header-balance{display:inline-flex;align-items:center;gap:6px;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:#0F172A!important;text-decoration:none!important;white-space:nowrap;vertical-align:middle}
a.pp-header-balance,a.pp-header-balance *{font-family:"Inter Tight",sans-serif!important;font-size:14px!important;font-weight:400!important;line-height:1.4}
a.pp-header-balance::before{content:"";display:block;width:18px;height:18px;flex:0 0 18px;background:#2563EB;-webkit-mask:url("reward.svg") center/contain no-repeat;mask:url("reward.svg") center/contain no-repeat}
a.pp-header-balance:hover{color:#2563EB!important}
a.pp-header-balance:focus-visible{outline:2px solid #2563EB;outline-offset:4px;border-radius:3px}

/* Match the Peptex free-shipping card's typography and palette. */
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/inter-tight-medium.ttf") format("truetype")}
body :is(.pp-cart,.pp-product,.pp-balance){
    --pp-core:#FFFFFF;--pp-bg:#18233A;--pp-border:rgba(37,99,235,.65);
    background:linear-gradient(135deg,#0F172A 0%,#18233A 100%);
    border:1px solid rgba(37,99,235,.65);border-radius:12px;padding:18px;
    color:#FFFFFF;box-shadow:0 8px 24px rgba(15,23,42,.12);
}
body .pp-cart p,body .pp-product .pp-product-label,body .pp-cart label{
    color:#FFFFFF!important;font-size:14px!important;font-weight:500!important;line-height:1.45;letter-spacing:normal;
}
body .pp-cart p{margin:0 0 14px}
body .pp-cart .pp-earning{margin:0}
body .pp-cart .pp-rewards-header{margin-bottom:14px}
body .pp-cart .pp-heading,body .pp-product-copy::before{
    display:block;margin:0 0 13px;padding:0;
    background:transparent;border:0;border-radius:0;
    color:#FFFFFF!important;font-size:11px!important;font-weight:700!important;line-height:1.2;
    letter-spacing:.08em;text-transform:uppercase;
}
body .pp-product-copy::before{content:"Peptex Points"}
body :is(.pp-cart,.pp-product) .pp-reward-icon{width:32px;height:32px;flex-basis:32px}
body :is(.pp-cart,.pp-product) .pp-reward-icon::before{width:20px;height:20px}
body .pp-cart strong,body .pp-cart .amount,body .pp-cart .amount *,body .pp-balance strong{
    color:#60A5FA!important;font-weight:700!important;
}
body .pp-cart a,body .pp-cart .pp-remove{color:#60A5FA!important}
body .pp-cart small,body .pp-cart small *,body .pp-product small,body .pp-product small *,body .pp-balance span{
    color:rgba(255,255,255,.70)!important;font-size:11px!important;font-weight:400!important;line-height:1.4;
}
body .pp-cart small,body .pp-product small{margin-top:10px}
body .pp-cart .pp-controls input{
    background:#293758!important;color:#FFFFFF!important;border-color:rgba(96,165,250,.35)!important;
    font-size:14px!important;font-weight:500!important;line-height:1.45;
}
body .pp-cart .pp-controls .button{font-size:14px!important;font-weight:500!important;line-height:1.45}
body .pp-cart .pp-feedback{margin-top:10px}
body .pp-balance strong{font-size:14px;line-height:1.45}
@media(max-width:480px){body :is(.pp-cart,.pp-product,.pp-balance){padding:15px;border-radius:10px}}
body .pp-cart small .amount,body .pp-cart small .amount *{color:rgba(255,255,255,.70)!important;font-size:11px!important;font-weight:400!important}

/* One left-aligned text column, matching the shipping card's type scale. */
body .pp-cart .pp-rewards-header{display:block;text-align:left}
body .pp-product{display:block;text-align:left}
body .pp-cart .pp-header-copy{margin:0;padding:0;text-align:left}
body .pp-cart .pp-header-copy .pp-earning{font-size:14px!important;font-weight:500!important;line-height:1.45;text-align:left}
body .pp-cart .pp-redemption .pp-terms,body .pp-cart .pp-redemption .pp-terms *{font-size:11px!important;font-weight:400!important;line-height:1.4;color:rgba(255,255,255,.70)!important}
body .pp-cart[data-redeem="no"] .pp-rewards-header{margin-bottom:0}
