/* Niche directory template system. Controlled from Super Admin > Design Templates. */
.niche-directory .cs-topbar{background:var(--niche-dark,#0f172a)}
.niche-directory .cs-main-header{background:linear-gradient(135deg,var(--niche-secondary,#111827),var(--niche-primary,#f97316))}
.niche-directory .cs-nav{border-top:3px solid var(--niche-accent,#facc15)}
.niche-directory .cs-header-search button,
.niche-directory .btn-primary,
.niche-directory button[type="submit"],
.niche-directory .cs-browse-btn{background:var(--niche-primary,#f97316);border-color:var(--niche-primary,#f97316)}
.niche-directory .cs-list-link,
.niche-directory a:not(.btn):hover{color:var(--niche-primary,#f97316)}
.niche-directory .kpi b,
.niche-directory .price,
.niche-directory .rating{color:var(--niche-primary,#f97316)}
.niche-directory .card,
.niche-directory .listing-card,
.niche-directory .business-card{border-top:4px solid var(--niche-primary,#f97316)}
.niche-directory .admin-side{background:linear-gradient(180deg,var(--niche-dark,#0f172a),var(--niche-secondary,#111827))}
.niche-directory .admin-side a.active{background:var(--niche-primary,#f97316);color:#fff}
.cs-logo img{max-height:72px;width:auto;object-fit:contain;background:#fff;border-radius:12px;padding:6px;box-shadow:0 8px 28px rgba(0,0,0,.12)}
.theme-electricians .cs-logo img,.theme-lawyers .cs-logo img,.theme-insurance .cs-logo img{background:#fff}
.theme-cleaners .cs-main-header{background:linear-gradient(135deg,#042f2e,#14b8a6)}
.theme-driving .cs-main-header{background:linear-gradient(135deg,#450a0a,#dc2626)}
.theme-sports .cs-main-header{background:linear-gradient(135deg,#1a2e05,#65a30d)}
.theme-food .cs-main-header{background:linear-gradient(135deg,#431407,#ea580c)}
.theme-home-improvement .cs-main-header{background:linear-gradient(135deg,#292524,#92400e)}
.theme-lawyers .cs-main-header{background:linear-gradient(135deg,#1e1b4b,#7c3aed)}
.theme-accountants .cs-main-header{background:linear-gradient(135deg,#172554,#2563eb)}
.theme-mortgages .cs-main-header{background:linear-gradient(135deg,#052e16,#16a34a)}
.theme-plumbers .cs-main-header{background:linear-gradient(135deg,#082f49,#0ea5e9)}
.theme-electricians .cs-main-header{background:linear-gradient(135deg,#171717,#facc15)}
.theme-electricians .cs-header-search button,.theme-electricians .cs-browse-btn{color:#111827}
.theme-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:20px}
.theme-preview-card{background:#fff;border:1px solid rgba(15,23,42,.12);border-radius:18px;padding:16px;color:#111827;box-shadow:0 8px 24px rgba(15,23,42,.08)}
.theme-preview-card.active{outline:4px solid var(--niche-primary,#f97316)}
.theme-preview-logo{height:64px;display:flex;align-items:center;margin-bottom:12px}.theme-preview-logo img{max-height:58px;max-width:180px;object-fit:contain}.theme-swatches{display:flex;gap:6px;margin:10px 0}.theme-swatches span{width:28px;height:28px;border-radius:999px;border:1px solid rgba(0,0,0,.15)}
.admin-form-panel{background:#fff;color:#111827;border-radius:18px;padding:20px;margin:16px 0;box-shadow:0 8px 28px rgba(15,23,42,.08)}
.admin-form-panel label{display:block;font-weight:700;margin:14px 0 6px}.admin-form-panel input,.admin-form-panel select{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:12px}.admin-form-panel .help{color:#64748b;font-size:.92rem;margin-top:6px}

/* Dog Walker vertical template */
.theme-dog-walkers .cs-main-header,
.theme-dog-walkers .hero,
.theme-dog-walkers .listing-hero { background: linear-gradient(135deg, #052e16 0%, #14532d 52%, #2e7d32 100%); }
.theme-dog-walkers .btn-primary,
.theme-dog-walkers .cs-header-search button,
.theme-dog-walkers .chip:hover { background: var(--niche-primary); border-color: var(--niche-primary); }
.theme-dog-walkers .badge-premium,
.theme-dog-walkers .badge-sponsored { background:#ffb300; color:#1f2937; }
.dog-service-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:14px; margin-top:18px; }
.dog-service-card { background:#fff; border:1px solid rgba(20,83,45,.14); border-radius:18px; padding:18px; box-shadow:0 12px 30px rgba(5,46,22,.08); }
.dog-service-card strong { display:block; color:#14532d; margin-bottom:6px; }
.dog-trust-strip { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:10px; margin:18px 0; }
.dog-trust-strip span { background:#ecfdf5; border:1px solid #bbf7d0; color:#14532d; border-radius:999px; padding:10px 14px; font-weight:700; text-align:center; }
.dog-quote-panel { border:2px solid #bbf7d0; background:linear-gradient(180deg,#ffffff,#f0fdf4); }
