.sp-layout{
display:flex;
gap:24px;
align-items:stretch;
}

/* =========================
LEFT SIDEBAR
========================= */
.sp-left{
width:280px;
flex-shrink:0;
align-self:flex-start;
}

.sp-logo-box{

display:flex;
align-items:center;
justify-content:center;

background:#fff;
border-radius:18px;
padding:22px;
position:relative;
overflow:hidden;
box-shadow:0 2px 10px rgba(0,0,0,.04);
border:1px solid #eef2f7;
margin-bottom:18px;

min-height:120px;
}

.sp-logo-box img{

max-width:100%;
max-height:70px;

width:auto;
height:auto;

object-fit:contain;

display:block;
margin:auto;

}

/* visit overlay */
.sp-visit{
position:absolute;
inset:0;
background:rgba(15,23,42,.88);
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-weight:700;
text-decoration:none;
opacity:0;
transition:.25s;
backdrop-filter:blur(4px);
}

.sp-logo-box:hover .sp-visit{
opacity:1;
}

/* sidebar */

.sp-sidebar-box{
background:#fff;
border-radius:18px;
padding:18px;
margin-bottom:18px;
border:1px solid #eef2f7;
box-shadow:0 2px 10px rgba(0,0,0,.03);
}

.sp-sidebar-box h4{
margin:0 0 14px;
font-size:16px;
font-weight:800;
color:#111827;
}

/* search */
.sp-sidebar-search{
width:100%;
padding:12px 14px;
border:1px solid #dbe2ea;
border-radius:12px;
font-size:14px;
}

/* =========================
CATEGORY SCROLL
========================= */

.sp-category-scroll{
max-height: 280px;
overflow-y: auto;
padding-right: 4px;
display: flex;
flex-direction: column;
scrollbar-width: thin;
scrollbar-color: #cbd5e1 #f8fafc;
}

/* scrollbar */
.sp-category-scroll::-webkit-scrollbar{
width:6px;
}

.sp-category-scroll::-webkit-scrollbar-thumb{
background:#dbe2ea;
border-radius:999px;
}

/* item */
.sp-side-category{
display:flex;
justify-content:space-between;
align-items:center;
padding:11px 14px;
border-radius:14px;
transition:.2s;
cursor:pointer;
margin-bottom:10px;
font-size:14px;
font-weight:700;
background:#f8fafc;
border:1px solid #eef2f7;
}

/* hover */
.sp-side-category:hover{
background:#eff6ff;
border-color:#bfdbfe;
color:#2563eb;
}

/* active */
.sp-side-category.active{
background:#2563eb;
color:#fff;
border-color:#2563eb;
box-shadow:
0 6px 18px rgba(37,99,235,.18);
}

/* =========================
SIDEBAR
========================= */

.sp-sidebar{
position:relative;
}

/* =========================
FLOATING SIDEBAR
========================= */
.sp-floating-sidebar{
position:fixed;
top:26%;
left:calc(50% - 620px);
width:280px;
z-index:999;
display:none;
animation:fadeFloat .25s ease;
}

/* floating card */
.sp-floating-box{
background:#fff;
border-radius:18px;
padding:18px;
margin-bottom:18px;
border:1px solid #eef2f7;
box-shadow:
0 10px 30px rgba(0,0,0,.08);
}

.sp-floating-box h4 {
    margin-top: 0;
}

/* animation */
@keyframes fadeFloat{
from{
opacity:0;
transform:translateY(8px);
}
to{
opacity:1;
transform:translateY(0);
}
}

/* responsive */
@media(max-width:1250px){

.sp-floating-sidebar{
left:20px;
}

}

/* mobile */
@media(max-width:980px){

.sp-floating-sidebar{
display:none !important;
}

}

/* about */
.sp-about-text{
font-size:14px;
line-height:1.8;
color:#475569;
}

.sp-read-more{
margin-top:10px;
display:inline-block;
font-size:13px;
font-weight:700;
color:#2563eb;
cursor:pointer;
}

/* stats */
.sp-stat{
display:flex;
justify-content:space-between;
padding:10px 0;
border-bottom:1px solid #eef2f7;
font-size:14px;
}

.sp-stat:last-child{
border-bottom:none;
}

/* =========================
RIGHT
========================= */

.sp-right{
flex:1;
min-width:0;
}

/* =========================
HEADER
========================= */

.sp-store-header{
background:#fff;
border-radius:20px;
padding:24px;
margin-bottom:22px;
border:1px solid #eef2f7;
box-shadow:0 2px 10px rgba(0,0,0,.03);
display:flex;
justify-content:space-between;
gap:20px;
}

.sp-desktop-header{
width:100%;
}

/* top row */
.sp-desktop-top{
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
margin-bottom:14px;
}

/* left side */
.sp-desktop-title-rating{
display:flex;
align-items:center;
gap:18px;
flex-wrap:wrap;
min-width:0;
}

/* push share right */
.sp-desktop-share{
margin-left:auto;
}

.sp-store-title-row{
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:20px;
}

.sp-store-title{
margin:0;
font-size:30px;
font-weight:700;
color:#111827;
}

/* ratings */
.sp-rating{
display:flex;
align-items:center;
gap:10px;
}

/* =========================
INTERACTIVE STARS
========================= */

.sp-stars{
display:flex;
gap:3px;
align-items:center;
}

.sp-star{
font-size:22px;
cursor:pointer;
color:#d1d5db;
transition:.18s ease;
position:relative;
}

/* active */
.sp-star.active{
color:#f59e0b;
}

/* glow */
.sp-star.active{
text-shadow:
0 0 10px rgba(245,158,11,.35);
}

.sp-rating-text{
font-size:14px;
font-weight:700;
color:#475569;
}

/* =========================
PREMIUM SINGLE RATING STAR
========================= */

.sp-single-rating-star{
width:32px;
height:32px;

border-radius:14px;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;

background:
linear-gradient(
135deg,
#f59e0b,
#facc15
);

color:#fff;

font-size:18px;
font-weight:900;

box-shadow:
0 10px 24px rgba(245,158,11,.25);

transition:.25s ease;

flex-shrink:0;
}

/* hover */
.sp-rating:hover .sp-single-rating-star{
transform:
translateY(-2px)
rotate(-8deg)
scale(1.04);

box-shadow:
0 14px 30px rgba(245,158,11,.32);
}

/* =========================
VALIDATED TEXT
========================= */

.sp-store-validated{
font-size:14px;
line-height:1.7;
color:#64748b;
font-weight:500;
}

.sp-store-validated strong{
color:#111827;
font-weight:700;
}

/* =========================
FILTERS
========================= */

.sp-filters-wrap{
display:flex;
justify-content:space-between;
align-items:center;
margin-top:18px;
gap:15px;
flex-wrap:wrap;
}

.sp-filters{
display:flex;
gap:10px;
flex-wrap:wrap;
}

.sp-filter-btn{
padding:10px 16px;
border-radius:999px;
background:#f1f5f9;
font-size:14px;
font-weight:700;
cursor:pointer;
transition:.2s;
border:none;
}

.sp-filter-btn:hover,
.sp-filter-btn.active{
background:#2563eb;
color:#fff;
}

/* user toggle */
.sp-user-toggle{
display:flex;
background:#f1f5f9;
padding:4px;
border-radius:999px;
}

.sp-user-btn{
padding:8px 14px;
border:none;
background:transparent;
border-radius:999px;
cursor:pointer;
font-size:13px;
font-weight:700;
transition:.2s;
}

.sp-user-btn.active{
background:#2563eb;
color:#fff;
}

/* =========================
SHARE
========================= */

.sp-share{
width:46px;
height:46px;
border-radius:50%;
background:#eff6ff;
display:flex;
align-items:center;
justify-content:center;
cursor:pointer;
transition:.2s;
flex-shrink:0;
}

.sp-share:hover{
background:#2563eb;
transform:translateY(-2px);
}

.sp-share svg{
width:20px;
height:20px;
fill:#2563eb;
transition:.2s;
}

.sp-share:hover svg{
fill:#fff;
}

/* =========================
BOTTOM TABS
========================= */

.sp-tabs-box{
background:#fff;
border-radius:20px;
padding:24px;
margin-top:24px;
border:1px solid #eef2f7;
}

.sp-tabs{
display:flex;
gap:10px;
margin-bottom:18px;
flex-wrap:wrap;
}

.sp-tab{
padding:10px 16px;
border-radius:12px;
background:#f1f5f9;
cursor:pointer;
font-size:14px;
font-weight:700;
transition:.2s;
}

.sp-tab.active{
background:#2563eb;
color:#fff;
}

.sp-tab-content{
line-height:1.9;
font-size:15px;
color:#475569;
}

/* =========================
SEO BOX
========================= */

.sp-seo-box{
margin-top:30px;
background:#fff;
border-radius:20px;
border:1px solid #eef2f7;
overflow:hidden;
box-shadow:0 4px 18px rgba(0,0,0,.03);
}

/* =========================
TABS
========================= */

.sp-seo-tabs{
display:flex;
align-items:center;
border-bottom:1px solid #eef2f7;
background:#fff;
overflow-x:auto;
}

/* tab */
.sp-seo-tab{
position:relative;
width: 100%;
padding:18px 24px;
background:none;
border:none;
cursor:pointer;
font-size:15px;
font-weight:700;
color:#64748b;
transition:.2s;
white-space:nowrap;
}

/* hover */
.sp-seo-tab:hover{
color:#111827;
}

/* active */
.sp-seo-tab.active{
color:#2563eb;
}

/* bottom line */
.sp-seo-tab.active:after{
content:'';
position:absolute;
left:0;
bottom:0;
width:100%;
height:3px;
background:#2563eb;
border-radius:999px 999px 0 0;
}

/* =========================
CONTENT
========================= */

.sp-seo-content{
padding:30px;
}

/* panels */
.sp-seo-panel{
display:none;
animation:seoFade .25s ease;
}

/* active panel */
.sp-seo-panel.active{
display:block;
}

/* typography */
.sp-seo-panel h2,
.sp-seo-panel h3{
margin:0 0 16px;
font-size:24px;
line-height:1.4;
color:#111827;
text-align: left;
}

.sp-seo-panel p{
margin-bottom:16px;
line-height:1.9;
font-size:15px;
color:#475569;
}

.sp-seo-panel ul,
.sp-seo-panel ol{
padding-left:24px;
margin:16px 0;
}

.sp-seo-panel li{
margin-bottom:10px;
line-height:1.8;
}

/* animation */
@keyframes seoFade{
from{
opacity:0;
transform:translateY(6px);
}
to{
opacity:1;
transform:translateY(0);
}
}

/* =========================
DESKTOP / MOBILE VISIBILITY
========================= */

/* mobile components hidden on desktop */
.sp-mobile-header,
.sp-mobile-sidebar-overlay{
display:none;
}

/* =========================
MOBILE
========================= */

@media(max-width:768px){
    
/* mobile visible */
.sp-mobile-header,
.sp-mobile-sidebar-overlay{
display:block;
}

/* desktop hidden */
.sp-desktop-header{
display:none;
}

.sp-seo-tab{
padding:16px 18px;
font-size:14px;
}

.sp-seo-content{
padding:20px;
}

.sp-seo-panel h2,
.sp-seo-panel h3{
font-size:20px;
}

/* =========================
MOBILE STORE REDESIGN
========================= */
/* hide desktop sidebar */
.sp-left{
display:none;
}

/* compact header */
.sp-store-header{
padding:16px;
border-radius:18px;
gap:16px;
}

/* logo moves into header */
.sp-mobile-store-logo{
width:72px;
height:90px;
border-radius:16px;
background:#fff;
border:1px solid #eef2f7;
display:flex;
align-items:center;
justify-content:center;
padding:10px;
box-shadow:0 2px 10px rgba(0,0,0,.04);
grid-row:span 2;
position:relative;
overflow:hidden;
}

/* logo image */
.sp-mobile-store-logo img{
max-width:100%;
max-height:100%;
object-fit:contain;
}

/* mobile visit overlay */
.sp-mobile-visit{
position:absolute;
inset:0;
background:rgba(15,23,42,.88);
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-size:13px;
font-weight:700;
text-decoration:none;
opacity:0;
transition:.25s;
}

/* tap/hover */
.sp-mobile-store-logo:hover .sp-mobile-visit,
.sp-mobile-store-logo:active .sp-mobile-visit{
opacity:1;
}

/* content area */
.sp-mobile-header-content{
flex:1;
min-width:0;
}

/* row */
.sp-mobile-title-top{
display:flex;
align-items:center;
justify-content:space-between;
gap:10px;
}

/* title */
.sp-store-title{
font-size:14px;
line-height:1.3;
margin:0;
}

/* validated line */
.sp-store-validated{
margin-top:8px;
font-size:13px;
line-height:1.6;
}

/* filters row */
.sp-filters-wrap{
flex-direction:row;
align-items:center;
justify-content:space-between;
margin-top:14px;
gap:10px;
}

/* mobile menu */
.sp-mobile-menu-btn{
width:42px;
height:42px;
border:none;
border-radius:12px;
background:#2563eb;
color:#fff;
font-size:20px;
font-weight:700;
cursor:pointer;
flex-shrink:0;
}

/* filters */
.sp-filters{
flex:1;
overflow:auto;
flex-wrap:nowrap;
padding-bottom:2px;
}

/* buttons */
.sp-filter-btn{
white-space:nowrap;
padding:10px 14px;
font-size:13px;
}

/* hide desktop user toggle */
.sp-desktop-header .sp-user-toggle{
display:none;
}

/* rating + share */
.sp-rating-share-row{
display:flex;
align-items:center;
gap:12px;
margin-top:8px;
}

/* star */
.sp-single-star{
font-size:20px;
color:#f59e0b;
line-height:1;
}

/* trigger */
.sp-mobile-rating-trigger{
display:flex;
align-items:center;
gap:8px;
cursor:pointer;
}

/* text */
.sp-mobile-rating-text{
font-size:13px;
font-weight:700;
color:#475569;
}

/* share smaller */
.sp-share{
width:38px;
height:38px;
}

/* validated text */
.sp-store-validated{
margin-top:10px;
font-size:13px;
line-height:1.7;
}

/* mobile overlay */
.sp-mobile-sidebar-overlay{
position:fixed;
inset:0;
background:rgba(15,23,42,.45);
z-index:99999;
opacity:0;
visibility:hidden;
transition:.25s;
}

/* active */
.sp-mobile-sidebar-overlay.active{
opacity:1;
visibility:visible;
}

/* inner */
.sp-mobile-sidebar-inner{
width:88%;
max-width:340px;
height:100%;
background:#fff;
overflow:auto;
transform:translateX(-100%);
transition:.3s ease;
padding:18px;
}

/* slide */
.sp-mobile-sidebar-overlay.active
.sp-mobile-sidebar-inner{
transform:translateX(0);
}

/* top */
.sp-mobile-sidebar-top{
display:flex;
align-items:center;
justify-content:space-between;
margin-bottom:20px;
}

/* close */
.sp-mobile-sidebar-top button{
width:38px;
height:38px;
border:none;
border-radius:10px;
background:#f1f5f9;
font-size:18px;
cursor:pointer;
}

/* sidebar content */
.sp-mobile-sidebar-content{
padding-bottom:40px;
}

/* remove duplicate margin */
.sp-mobile-sidebar-content .sp-sidebar-box:last-child{
margin-bottom:0;
}

.sp-mobile-filter-row{
display:flex;
align-items:center;
gap:10px;
margin-top:16px;
}

.sp-mobile-filter-row .sp-filters{
flex:1;
overflow:auto;
flex-wrap:nowrap;
}

/* mobile top */
.sp-mobile-header-top{
display:flex;
align-items:flex-start;
gap:14px;
}

/* right side */
.sp-mobile-header-content{
display:flex;
flex-direction:column;
justify-content:flex-start;
}

/* title + actions */
.sp-mobile-title-row{
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:10px;
}

/* title */
.sp-mobile-title-row .sp-store-title{
font-size:16px;
line-height:1.4;
margin:0;
}

/* right actions */
.sp-rating-share-row{
display:flex;
align-items:center;
gap:10px;
flex-shrink:0;
margin-top:0;
}

/* validated */
.sp-mobile-header .sp-store-validated{
margin-top:6px;
font-size:13px;
line-height:1.6;
}

/* filter row */
.sp-mobile-filter-row{
display:flex;
align-items:center;
gap:10px;
margin-top:16px;
}

/* filters */
.sp-mobile-filter-row .sp-filters{
flex:1;
display:flex;
overflow:auto;
flex-wrap:nowrap;
}

/* menu */
.sp-mobile-menu-btn{
flex-shrink:0;
}

/* mobile sidebar user toggle */
.sp-mobile-sidebar-content .sp-user-toggle{
display:flex;
flex-wrap:wrap;
gap:8px;
background:none;
padding:0;
border-radius:0;
}

/* buttons */
.sp-mobile-sidebar-content .sp-user-btn{
background:#f1f5f9;
border-radius:12px;
padding:10px 14px;
font-size:13px;
}

/* active */
.sp-mobile-sidebar-content .sp-user-btn.active{
background:#2563eb;
color:#fff;
}

}

/* =========================
RESPONSIVE
========================= */

@media(max-width:980px){

.sp-layout{
flex-direction:column;
}

.sp-left{
width:100%;
}

.sp-sidebar{
position:static;
}

/*
.sp-store-header{
flex-direction:column;
}
*/

.sp-filters-wrap{
flex-direction:column;
align-items:flex-start;
}

}

/* =========================
RATING MODAL
========================= */

.sp-rating-modal{
position:fixed;
inset:0;

background:rgba(15,23,42,.55);

display:flex;
align-items:center;
justify-content:center;

padding:20px;

z-index:999999;

opacity:0;
visibility:hidden;

transition:.25s ease;

backdrop-filter:blur(6px);
}

/* active */
.sp-rating-modal.active{
opacity:1;
visibility:visible;
}

/* box */
.sp-rating-modal-box{
width:100%;
max-width:420px;

background:#fff;

border-radius:30px;

padding:34px 28px;

position:relative;

animation:spModalUp .25s ease;

box-shadow:
0 25px 60px rgba(0,0,0,.18);
}

/* anim */
@keyframes spModalUp{

from{
opacity:0;
transform:translateY(12px) scale(.96);
}

to{
opacity:1;
transform:none;
}

}

/* close */
.sp-rating-close{
position:absolute;

top:16px;
right:16px;

width:40px;
height:40px;

border:none;
border-radius:12px;

background:#f1f5f9;

font-size:18px;

cursor:pointer;

transition:.2s;
}

.sp-rating-close:hover{
background:#e2e8f0;
}

/* head */
.sp-rating-head{
text-align:center;
margin-bottom:28px;
}

/* icon */
.sp-rating-icon{
width:74px;
height:74px;

margin:0 auto 18px;

border-radius:24px;

display:flex;
align-items:center;
justify-content:center;

font-size:36px;
font-weight:900;

color:#fff;

background:
linear-gradient(
135deg,
#f59e0b,
#facc15
);

box-shadow:
0 15px 35px rgba(245,158,11,.28);
}

/* title */
.sp-rating-head h3{
font-size:28px;
font-weight:900;
line-height:1.2;
margin-bottom:12px;
color:#0f172a;
}

/* text */
.sp-rating-head p{
font-size:15px;
line-height:1.8;
color:#64748b;
margin:0;
}

/* stars */
.sp-rating-stars{
display:flex;
justify-content:center;
gap:10px;
margin-bottom:24px;
}

/* star */
.sp-rating-stars span{
font-size:42px;
cursor:pointer;

color:#cbd5e1;

transition:.2s ease;
}

/* hover */
.sp-rating-stars span:hover{
transform:scale(1.12);
color:#f59e0b;
}

/* current */
.sp-rating-current{
text-align:center;
font-size:14px;
color:#64748b;
line-height:1.7;
}

/* =========================
RATING TOAST
========================= */

.sp-rating-toast{
position:fixed;

left:50%;
bottom:24px;

transform:
translateX(-50%)
translateY(20px);

background:#0f172a;

color:#fff;

padding:14px 18px;

border-radius:14px;

font-size:14px;
font-weight:700;

z-index:9999999;

opacity:0;

transition:.3s ease;

box-shadow:
0 15px 35px rgba(0,0,0,.18);
}

/* show */
.sp-rating-toast.show{
opacity:1;

transform:
translateX(-50%)
translateY(0);
}

/* mobile */
@media(max-width:768px){

.sp-rating-modal-box{
padding:30px 22px;
border-radius:26px;
}

.sp-rating-head h3{
font-size:24px;
}

.sp-rating-stars span{
font-size:36px;
}

}

/* =========================
STORE SEO TOP
========================= */
.sp-seo-top{
background:#fff;

border-radius:32px;

padding:34px;

box-shadow:
0 15px 45px rgba(15,23,42,.05);

border:1px solid #eef2f7;
}

.sp-seo-title {
    font-size: 28px;
    line-height: 1.2;
    margin: 0 0 10px;
    text-align: left;
}
.sp-store-seo-top{
display:grid;
grid-template-columns:1.15fr .9fr;
gap:34px;

align-items:center;

margin-bottom:34px;
}

/* left */
.sp-store-seo-content{
display:flex;
flex-direction:column;
align-items:flex-start;
}

/* badge */
.sp-store-seo-badge{
display:inline-flex;
align-items:center;

padding:10px 16px;

border-radius:999px;

background:#eff6ff;
color:#2563eb;

font-size:11px;
font-weight:900;

letter-spacing:.4px;

margin-bottom:18px;
}

/* intro */
.sp-store-seo-intro{
font-size:15px;
line-height:1.9;

color:#64748b;

margin-top:16px;
margin-bottom:26px;
}

/* stats */
.sp-store-seo-stats{
display:flex;
flex-wrap:wrap;
gap:14px;
}

.sp-store-seo-stat{
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;

min-width:110px;

padding:14px 18px;

border-radius:18px;

background:#f8fafc;

border:1px solid #eef2f7;
}

.sp-store-seo-stat strong{
font-size:22px;
font-weight:900;

color:#0f172a;

margin-bottom:4px;
}

.sp-store-seo-stat{
font-size:12px;
font-weight:700;

color:#64748b;
}

/* image */
.sp-store-seo-image{

position:relative;

border-radius:30px;

overflow:hidden;

min-height:300px;

display:flex;
align-items:center;
justify-content:center;

background:
linear-gradient(
180deg,
#f8fafc,
#eef2ff
);

box-shadow:
0 18px 45px rgba(15,23,42,.08);

}

/* blurred background */
.sp-store-seo-image::before{

content:'';

position:absolute;

inset:-20px;

background-image:
var(--bg-image);

background-size:cover;
background-position:center;

filter:blur(40px);

transform:scale(1.08);

opacity:.45;

}

/* soft top fade */
.sp-store-seo-image::after{

content:'';

position:absolute;

inset:0;

background:
linear-gradient(

180deg,

rgba(255,255,255,.50) 0%,

rgba(255,255,255,.10) 30%,

rgba(255,255,255,.10) 70%,

rgba(255,255,255,.55) 100%

);

z-index:1;

}

/* image */
.sp-store-seo-image img{

position:relative;
z-index:2;

width:100%;
height:100%;

max-height:500px;

object-fit:contain;

display:block;

}

/* =========================
MOBILE
========================= */

@media(max-width:768px){

.sp-store-seo-top{
grid-template-columns:1fr;
gap:24px;

margin-bottom:26px;
}

.sp-store-seo-intro{
font-size:13px;
line-height:1.8;

margin-bottom:20px;
}

.sp-store-seo-image{
min-height:220px;

border-radius:24px;
}

.sp-store-seo-stats{
gap:10px;
}

.sp-store-seo-stat{
min-width:92px;

padding:12px 14px;

border-radius:16px;
}

.sp-store-seo-stat strong{
font-size:18px;
}

}

/* =========================
NO COUPONS
========================= */

.sp-similar-title{

font-size:22px;
font-weight:700;

color:#0f172a;

margin:35px 0 22px;

display:flex;
align-items:center;
justify-content:center;

gap:10px;

text-align:center;

}

.sp-similar-title:before{

content:'🏪';

font-size:20px;

}

.sp-no-coupons{

background:#fff;

border:1px solid #e2e8f0;

border-radius:28px;

padding:60px 40px;

text-align:center;

box-shadow:
0 10px 30px rgba(0,0,0,.04);

margin:20px 0;

}

.sp-no-coupons-icon{

font-size:64px;

margin-bottom:18px;

}

.sp-no-coupons h3{

font-size:28px;
font-weight:800;

margin-bottom:14px;

color:#0f172a;

}

.sp-no-coupons p{

max-width:700px;

margin:0 auto 24px;

font-size:16px;
line-height:1.8;

color:#64748b;

}

.sp-no-coupons-btn{

display:inline-flex;
align-items:center;
justify-content:center;

height:48px;

padding:0 24px;

border-radius:14px;

background:#2563eb;

color:#fff;

font-weight:700;

text-decoration:none;

transition:.25s;

}

.sp-no-coupons-btn:hover{

transform:translateY(-2px);

background:#1d4ed8;

}

/* =========================
SIDEBAR STORES
========================= */

.sp-sidebar-stores{

display:flex;
flex-direction:column;

gap:10px;

max-height:320px;

overflow-y:auto;

padding-right:4px;

}

/* custom scrollbar */

.sp-sidebar-stores::-webkit-scrollbar{

width:6px;

}

.sp-sidebar-stores::-webkit-scrollbar-track{

background:#f1f5f9;

border-radius:999px;

}

.sp-sidebar-stores::-webkit-scrollbar-thumb{

background:#cbd5e1;

border-radius:999px;

}

.sp-sidebar-stores::-webkit-scrollbar-thumb:hover{

background:#94a3b8;

}

.sp-sidebar-store-link{

display:flex;
align-items:center;
justify-content:space-between;

padding:12px 14px;

border-radius:12px;

background:#f8fafc;

border:1px solid #e2e8f0;

text-decoration:none;

font-size:14px;
font-weight:600;

color:#0f172a;

transition:.25s;

}

.sp-sidebar-store-link:hover{

background:#eff6ff;

border-color:#2563eb;

color:#2563eb;

transform:translateX(3px);

}

.sp-sidebar-store-link span{

font-size:16px;
font-weight:700;

color:#94a3b8;

}

/* =========================
EXPIRED COUPONS
========================= */

.sp-expired-section{

margin-top:60px;

padding-top:40px;

border-top:2px dashed #e2e8f0;

}

.sp-expired-head{

text-align:center;

margin-bottom:30px;

}

.sp-expired-head h2{

font-size:28px;
font-weight:800;

color:#0f172a;

margin-bottom:10px;

}

.sp-expired-head p{

max-width:700px;

margin:auto;

font-size:15px;
line-height:1.8;

color:#64748b;

}