/*
Theme Name: SavingEra Inspired
Theme URI: 
Author: Your Name
Description: Custom coupon/deals theme inspired by SavingEra structure (no proprietary content copied).
Version: 0.1.0
License: GPL-2.0-or-later
Text Domain: savingera-inspired
*/

/* Basic Reset */
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,sans-serif; background:#fafafa; color:#222; }
a { color:#0a5bd7; text-decoration:none; }
a:hover { text-decoration:underline; }
img { max-width:100%; height:auto; display:block; }

/* Layout */
.container { width:100%; max-width:1180px; margin:0 auto; padding:0 1rem; }
.flex { display:flex; gap:1rem; }
.grid { display:grid; gap:1.25rem; }

/* Header */
.site-header { background:#fff; border-bottom:1px solid #e2e2e2; position:sticky; top:0; z-index:50; }
.branding { font-weight:600; font-size:1.25rem; padding:.75rem 0; }
.nav-toggle { display:none; }
.primary-nav { display:flex; list-style:none; margin:0; padding:0; }
.primary-nav li { margin:0 .75rem; }

/* Hero */
.hero { background:linear-gradient(135deg,#0076ff,#00b8d9); color:#fff; padding:3.5rem 0 3rem; text-align:center; }
.hero h1 { margin:0 0 .75rem; font-size:2.2rem; }
.hero p { font-size:1.1rem; max-width:640px; margin:0 auto 1.5rem; }

/* Deal Cards */
.deals-grid { display:grid; gap:1rem; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); }
.deal-card { background:#fff; border:1px solid #e6e6e6; border-radius:8px; padding:1rem; display:flex; flex-direction:column; position:relative; transition:.2s box-shadow; }
.deal-card:hover { box-shadow:0 4px 16px rgba(0,0,0,.08); }
.deal-card h3 { font-size:1rem; line-height:1.3; margin:.25rem 0 .5rem; }
.deal-meta { font-size:.75rem; color:#666; margin-top:auto; }
.badge { position:absolute; top:.75rem; left:.75rem; background:#ff595e; color:#fff; font-size:.65rem; padding:.25rem .5rem; border-radius:4px; letter-spacing:.5px; }
/* Single Deal */
.single-deal .deal-meta-line { display:flex; flex-wrap:wrap; gap:.75rem; font-size:.75rem; color:#555; }
.single-deal .coupon-reveal { background:#0076ff; color:#fff; border:none; padding:.6rem 1rem; font-weight:600; border-radius:6px; cursor:pointer; }
.single-deal .coupon-reveal:hover { background:#005fcc; }
.single-deal .coupon-code { margin-top:.75rem; font-size:1.25rem; font-weight:700; letter-spacing:1px; background:#111; color:#0fffba; padding:.75rem 1rem; border-radius:8px; display:inline-block; }
.single-deal .coupon-feedback { margin-top:.5rem; font-size:.7rem; color:#0076ff; }
.deal-coupon-box { background:#fff; border:1px dashed #0076ff; padding:1rem; border-radius:10px; }
.discount { font-size:.8rem; color:#333; }
.store-list, .category-columns { list-style:none; padding:0; }
.store-list li a, .category-columns a { text-decoration:none; }
.store-list li a:hover, .category-columns a:hover { text-decoration:underline; }

/* Sidebar */
.sidebar { background:#fff; border:1px solid #e6e6e6; border-radius:8px; padding:1rem; }
.widget-title { font-size:.9rem; font-weight:600; margin:0 0 .75rem; text-transform:uppercase; letter-spacing:.5px; }

/* Footer */
.site-footer { background:#111; color:#eee; padding:2.5rem 0; margin-top:3rem; }
.site-footer a { color:#9ecbff; }
.footer-cols { display:grid; gap:2rem; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); }
.copyright { margin-top:2rem; font-size:.8rem; text-align:center; opacity:.75; }

/* Utilities */
.text-center { text-align:center; }
.m-0 { margin:0 !important; }
.mb-1 { margin-bottom:.5rem !important; }
.mb-2 { margin-bottom:1rem !important; }
.mb-3 { margin-bottom:1.5rem !important; }
.mt-2 { margin-top:1rem !important; }
.py-2 { padding-top:1rem; padding-bottom:1rem; }
.pt-3 { padding-top:1.5rem; }
.pb-3 { padding-bottom:1.5rem; }

/* Responsive */
@media (max-width:840px){
  .primary-layout { flex-direction:column; }
  .nav-toggle { display:block; background:none; border:1px solid #0076ff; color:#0076ff; padding:.5rem .75rem; border-radius:6px; }
  .primary-nav { flex-direction:column; display:none; }
  .primary-nav.open { display:flex; }
}
