/*
 Theme Name:   Astra Child
 Theme URI:    https://dealshope.com/
 Description:  Astra child theme for DealsHope. Holds all custom code, templates and styles so they survive Astra updates.
 Author:       DealsHope
 Template:     astra
 Version:      1.0.1
 Text Domain:  astra-child
*/


/* ==========================================================================
   DealShope deal UI
   ========================================================================== */
:root{
	--ds-ink:#1b1b1b;
	--ds-secondary:#585858;
	--ds-muted:#8c8c8c;
	--ds-line:#ededed;
	--ds-line-strong:#dcdcdc;
	--ds-surface:#ffffff;
	--ds-surface-alt:#f7f7f5;
	--ds-accent:#14795e;
	--ds-serif:Georgia,'Iowan Old Style','Palatino Linotype',serif;
}

/* ---- Feed grid ---- */
.deal-feed{
	display:grid;
	grid-template-columns:1fr;
	max-width:1160px;
	margin:0 auto;
	padding:8px 16px 48px;
}
.deal-card{
	display:flex;
	flex-direction:row;
	gap:14px;
	padding:16px 0;
	border-bottom:1px solid var(--ds-line);
}
.deal-card__media{
	flex:0 0 92px;
	width:92px;height:92px;
	border-radius:12px;overflow:hidden;
	background:var(--ds-surface-alt);
	border:1px solid var(--ds-line);
	display:block;
}
.deal-card__media img{width:100%;height:100%;object-fit:cover;display:block;}
.deal-card__media-empty{display:block;width:100%;height:100%;}
.deal-card__body{flex:1;min-width:0;}
.deal-card__merchant{margin:0 0 3px;font-size:12px;color:var(--ds-muted);}
.deal-card__title{margin:0 0 7px;font-size:15px;font-weight:500;line-height:1.3;}
.deal-card__title a{color:var(--ds-ink);text-decoration:none;}
.deal-card__title a:hover{color:var(--ds-accent);}
.deal-card__price{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;flex-wrap:wrap;}
.deal-card__price-now{font-size:16px;font-weight:600;color:var(--ds-ink);}
.deal-card__price-mrp{font-size:12.5px;color:var(--ds-muted);text-decoration:line-through;}
.deal-card__price-off{font-size:12px;color:var(--ds-secondary);}
.deal-card__verdict{display:flex;align-items:center;gap:7px;margin:0;font-size:12.5px;min-width:0;}
.deal-card__verdict-mark{width:7px;height:7px;border-radius:50%;flex:0 0 auto;}
.deal-card__verdict-label{font-weight:600;flex:0 0 auto;}
.deal-card__verdict-summary{color:var(--ds-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--ds-serif);font-style:italic;}

/* ---- Verdict colour states (shared by card + single) ---- */
.verdict-worth .deal-card__verdict-mark,.ds-verdict.verdict-worth .ds-verdict__mark{background:var(--ds-accent);}
.verdict-worth .deal-card__verdict-label,.ds-verdict.verdict-worth .ds-verdict__label{color:var(--ds-accent);}
.verdict-wait .deal-card__verdict-mark,.ds-verdict.verdict-wait .ds-verdict__mark{border:1.5px solid var(--ds-secondary);background:transparent;}
.verdict-wait .deal-card__verdict-label,.ds-verdict.verdict-wait .ds-verdict__label{color:var(--ds-secondary);}
.verdict-skip .deal-card__verdict-mark,.ds-verdict.verdict-skip .ds-verdict__mark{width:9px;height:2px;border-radius:1px;background:var(--ds-muted);}
.verdict-skip .deal-card__verdict-label,.ds-verdict.verdict-skip .ds-verdict__label{color:var(--ds-muted);}

/* ---- Tablet: 2 columns, cards become vertical tiles ---- */
@media (min-width:600px){
	.deal-feed{grid-template-columns:1fr 1fr;gap:16px;}
	.deal-card{flex-direction:column;gap:0;padding:0;border:1px solid var(--ds-line);border-radius:14px;overflow:hidden;}
	.deal-card__media{flex:none;width:100%;height:150px;border:none;border-bottom:1px solid var(--ds-line);border-radius:0;}
	.deal-card__body{padding:13px;}
}
/* ---- Desktop: 3 columns ---- */
@media (min-width:960px){
	.deal-feed{grid-template-columns:1fr 1fr 1fr;}
}

/* ---- Single deal page ---- */
.ds-single{background:var(--ds-surface);}
.ds-single__inner{max-width:1080px;margin:0 auto;padding:20px 16px 56px;}
.ds-breadcrumb{margin-bottom:16px;font-size:12.5px;}
.ds-breadcrumb a{color:var(--ds-muted);text-decoration:none;}
.ds-breadcrumb a:hover{color:var(--ds-accent);}
.ds-single__grid{display:grid;grid-template-columns:1fr;gap:22px;}
.ds-single__media{border-radius:16px;overflow:hidden;background:var(--ds-surface-alt);border:1px solid var(--ds-line);aspect-ratio:4/3;}
.ds-single__media img{width:100%;height:100%;object-fit:cover;display:block;}
.ds-merchant{margin:0 0 6px;font-size:13px;color:var(--ds-muted);}
.ds-title{margin:0 0 14px;font-size:23px;font-weight:600;line-height:1.25;color:var(--ds-ink);}
.ds-price{display:flex;align-items:baseline;gap:10px;margin-bottom:16px;flex-wrap:wrap;}
.ds-price__now{font-size:27px;font-weight:600;color:var(--ds-ink);}
.ds-price__mrp{font-size:15px;color:var(--ds-muted);text-decoration:line-through;}
.ds-price__off{font-size:13.5px;color:var(--ds-secondary);}
.ds-verdict{display:flex;align-items:center;gap:9px;margin:0 0 18px;flex-wrap:wrap;font-size:14px;}
.ds-verdict__mark{width:8px;height:8px;border-radius:50%;flex:0 0 auto;}
.ds-verdict__label{font-weight:600;}
.ds-verdict__summary{color:var(--ds-secondary);font-family:var(--ds-serif);font-style:italic;}
.ds-cta{display:inline-flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;padding:14px 22px;background:var(--ds-ink);color:#fff;text-decoration:none;border-radius:12px;font-size:15px;font-weight:600;transition:opacity .15s ease;}
.ds-cta:hover,.ds-cta:focus{opacity:.86;color:#fff;}
.ds-disclosure{margin:10px 0 0;font-size:12px;color:var(--ds-muted);text-align:center;}
.ds-why{margin-top:28px;padding-top:22px;border-top:1px solid var(--ds-line);}
.ds-why__label{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--ds-secondary);}
.ds-why__note{font-family:var(--ds-serif);font-size:16px;line-height:1.65;color:var(--ds-ink);}
.ds-why__note p{margin:0 0 12px;}
.ds-meta{display:flex;gap:26px;margin-top:18px;}
.ds-meta__item span{display:block;font-size:11.5px;color:var(--ds-muted);margin-bottom:2px;}
.ds-meta__item strong{font-size:13.5px;font-weight:500;color:var(--ds-secondary);}

/* ---- Desktop: two-column deal page with sticky panel ---- */
@media (min-width:860px){
	.ds-single__grid{grid-template-columns:1.1fr 1fr;gap:36px;align-items:start;}
	.ds-single__panel{position:sticky;top:24px;}
	.ds-cta{width:auto;min-width:260px;}
}
