.woocommerce ul.products li.product {
position: relative;
}
.nst-badge {
position: absolute;
top: 12px;
left: 12px;
z-index: 10;
display: flex;
flex-direction: column;
align-items: flex-start;
pointer-events: none;
gap: 0;
}
.nst-badge-label {
display: inline-block;
background: var(--nst-color, #D7B46A);
color: #0B1020;
font-size: 10px;
font-weight: 800;
letter-spacing: 1px;
text-transform: uppercase;
padding: 5px 10px 4px;
border-radius: 6px 6px 0 0;
line-height: 1;
white-space: nowrap;
}
.nst-badge-timer {
display: inline-block;
background: rgba(11, 16, 32, 0.90);
color: var(--nst-color, #D7B46A);
font-size: 11px;
font-weight: 700;
letter-spacing: .2px;
padding: 4px 10px 5px;
border-radius: 0 6px 6px 6px;
line-height: 1;
font-variant-numeric: tabular-nums;
border: 1px solid rgba(255,255,255,.07);
border-top: none;
white-space: nowrap;
min-width: 60px;
text-align: center;
box-shadow: 0 4px 12px rgba(0,0,0,.3);
} .nst-badge--urgent .nst-badge-label {
animation: nst-pulse 1.2s ease-in-out infinite;
}
.nst-badge--urgent .nst-badge-timer {
color: #FF5A6A;
}
@keyframes nst-pulse {
0%, 100% { opacity: 1; }
50%       { opacity: .65; }
} .nst-product-timer {
display: inline-flex;
align-items: center;
gap: 8px;
background: rgba(215,180,106,.07);
border: 1px solid rgba(215,180,106,.22);
border-radius: 10px;
padding: 10px 16px;
margin: 10px 0 16px;
flex-wrap: wrap;
}
.nst-product-timer__label {
background: var(--nst-color, #D7B46A);
color: #0B1020;
font-size: 10px;
font-weight: 800;
letter-spacing: 1px;
text-transform: uppercase;
padding: 3px 9px;
border-radius: 4px;
line-height: 1.4;
}
.nst-product-timer__text {
font-size: 13px;
color: rgba(238,232,220,.65);
}
.nst-product-timer__count {
color: var(--nst-color, #D7B46A);
font-size: 14px;
font-weight: 700;
font-variant-numeric: tabular-nums;
letter-spacing: .3px;
} .nst-banner {
background: linear-gradient(135deg, rgba(215,180,106,.10) 0%, rgba(215,180,106,.04) 100%);
border: 1px solid rgba(215,180,106,.25);
border-radius: 12px;
padding: 14px 20px;
margin: 20px 0;
overflow: hidden;
}
.nst-banner__inner {
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
}
.nst-banner__tag {
font-size: 16px;
flex-shrink: 0;
animation: nst-bounce .8s ease-in-out infinite alternate;
}
@keyframes nst-bounce {
from { transform: translateY(0); }
to   { transform: translateY(-3px); }
}
.nst-banner__text {
display: flex;
align-items: center;
gap: 6px;
flex-wrap: wrap;
flex: 1;
font-size: 14px;
}
.nst-banner__name {
color: #EEE8DC;
font-weight: 600;
}
.nst-banner__sep {
color: rgba(238,232,220,.4);
font-size: 13px;
}
.nst-banner__label {
background: rgba(215,180,106,.15);
color: #D7B46A;
font-size: 11px;
font-weight: 700;
letter-spacing: .8px;
text-transform: uppercase;
padding: 2px 8px;
border-radius: 4px;
}
.nst-banner__count {
color: #D7B46A;
font-weight: 700;
font-size: 14px;
font-variant-numeric: tabular-nums;
min-width: 80px;
}
.nst-banner__link {
color: #D7B46A;
font-size: 13px;
font-weight: 600;
text-decoration: none;
border: 1px solid rgba(215,180,106,.35);
padding: 6px 14px;
border-radius: 8px;
transition: background .15s;
white-space: nowrap;
flex-shrink: 0;
}
.nst-banner__link:hover {
background: rgba(215,180,106,.12);
color: #D7B46A;
} .nst-banner--fade-in  { animation: nst-fadein .5s ease forwards; }
.nst-banner--fade-out { animation: nst-fadeout .4s ease forwards; }
@keyframes nst-fadein  { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:translateY(0); } }
@keyframes nst-fadeout { from { opacity:1; } to { opacity:0; } }