/*
Theme Name: Viva Exclusive Profiles
Theme URI: https://vivavortex.xyz/
Author: Viva Vortex
Description: Responsive profile directory with editable photos, names, ages, countries, cities, flags, and global WhatsApp link.
Version: 1.2.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: viva-exclusive
*/
:root{--ve-green:#08ad62;--ve-blue:#1688ee;--ve-bg:#f3f8ff;--ve-text:#172033;--ve-muted:#697789;--ve-card:#fff;--ve-border:#e2eaf3}*{box-sizing:border-box}body{margin:0;background:var(--ve-bg);font-family:Arial,Helvetica,sans-serif;color:var(--ve-text)}a{color:inherit}.ve-wrap{max-width:1440px;margin:auto;padding:0 18px 32px}.ve-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:68px;border-bottom:1px solid var(--ve-border);background:#fff;padding:12px max(18px,calc((100vw - 1404px)/2));}.ve-brand{font-size:24px;font-weight:800;display:flex;align-items:center;gap:10px}.ve-mark{display:inline-flex;background:#ed2361;color:#fff;width:38px;height:38px;border-radius:50%;align-items:center;justify-content:center}.ve-status{color:#07994e;font-weight:700}.ve-pills{display:flex;gap:9px;overflow-x:auto;padding:14px 0;scrollbar-width:thin}.ve-pill{white-space:nowrap;border:1px solid var(--ve-border);background:#fff;border-radius:24px;padding:10px 16px;font-size:13px;color:#34445a}.ve-pill.active{background:var(--ve-blue);color:white}.ve-heading{text-align:center;padding:8px 0 20px}.ve-heading h1{font-size:clamp(24px,3vw,34px);margin:5px 0 8px}.ve-heading p{color:var(--ve-muted);margin:0}.ve-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.ve-card{min-width:0;overflow:hidden;background:var(--ve-card);border:1px solid var(--ve-border);border-radius:10px;box-shadow:0 2px 8px #213b5b0b}.ve-photo{height:clamp(150px,18vw,245px);position:relative;background:#e7edf4;overflow:hidden}.ve-photo img{display:block;width:100%;height:100%;object-fit:cover}.ve-online{position:absolute;top:10px;left:10px;background:#00a95c;color:#fff;border-radius:16px;padding:5px 10px;font-size:11px;font-weight:700}.ve-details{padding:10px 12px 12px}.ve-name{font-weight:700;font-size:14px;margin-bottom:3px}.ve-age{font-size:13px;color:var(--ve-muted);margin-bottom:6px}.ve-location{font-size:12px;color:var(--ve-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:12px}.ve-cta{display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;background:var(--ve-green);color:#fff;font-weight:700;border-radius:22px;padding:10px 8px;font-size:12px;line-height:1.2}.ve-cta:hover{background:#078f52;color:#fff}.ve-wa{font-size:16px}.ve-footer{text-align:center;color:var(--ve-muted);font-size:12px;padding:24px 0 0}.ve-empty{padding:20px;background:#fff;border-radius:10px}@media(max-width:1100px){.ve-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ve-photo{height:220px}}@media(max-width:650px){.ve-wrap{padding:0 10px 24px}.ve-top{min-height:56px;padding:10px 12px}.ve-brand{font-size:20px}.ve-status{font-size:12px}.ve-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ve-photo{height:clamp(135px,46vw,220px)}.ve-details{padding:8px}.ve-name{font-size:13px}.ve-location{font-size:11px}.ve-cta{font-size:11px;padding:9px 4px}.ve-heading{padding:6px 0 16px}.ve-pills{padding:10px 0}.ve-pill{padding:9px 13px}}@media(min-width:1400px){.ve-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* Compact click-to-open language and country filters */
.ve-filter-row{display:flex;align-items:center;gap:10px;padding:12px 0 4px;position:relative;z-index:5}.ve-filter{position:relative}.ve-filter>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;white-space:nowrap;background:#fff;border:1px solid var(--ve-border);border-radius:24px;padding:9px 14px;font-size:13px;color:#34445a;box-shadow:0 1px 3px #18324d08}.ve-filter>summary::-webkit-details-marker{display:none}.ve-filter[open]>summary{border-color:#b7d9fa;background:#f7fbff}.ve-filter-icon{font-size:15px}.ve-chevron{color:#728196;margin-left:2px}.ve-filter-menu{position:absolute;top:calc(100% + 7px);left:0;min-width:190px;max-height:300px;overflow:auto;display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid var(--ve-border);border-radius:12px;padding:7px;box-shadow:0 10px 28px #142b4620}.ve-filter-choice{display:block;text-align:left;white-space:nowrap;background:#fff;border:0;border-radius:8px;padding:10px 12px;font-size:13px;color:#34445a;cursor:pointer}.ve-filter-choice:hover,.ve-filter-choice.is-selected{background:#eaf4ff;color:#0879db}.ve-card[hidden]{display:none!important}.ve-cta-unconfigured{cursor:default}.ve-cta-unconfigured:hover{background:var(--ve-green);color:#fff}@media(max-width:650px){.ve-filter-row{gap:8px;padding:9px 0 2px}.ve-filter>summary{padding:8px 12px;font-size:12px}.ve-filter-menu{min-width:170px;max-width:calc(100vw - 24px)}}
/* Final layout: brand followed directly by profile cards; taller mobile portraits */
.ve-top{justify-content:flex-start}.ve-brand{text-decoration:none;color:inherit}.ve-brand:hover{color:inherit}.ve-status{display:none}.ve-heading,.ve-filter-row{display:none!important}
@media(max-width:650px){.ve-photo{height:clamp(210px,68vw,300px)}.ve-details{padding:8px 7px 10px}.ve-cta{font-size:11px;gap:5px}.ve-name{font-size:13px}}
/* Update: clean footer-free page, centered mobile title, WhatsApp mark and mixed presence */
.ve-footer{display:none!important}
.ve-online.ve-offline{background:#7b8794;color:#fff}
.ve-wa{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 18px}
.ve-wa svg{width:100%;height:100%;fill:currentColor;display:block}
@media(max-width:650px){.ve-top{justify-content:center;min-height:76px;padding:12px 10px}.ve-brand{font-size:28px;gap:12px;justify-content:center}.ve-mark{width:44px;height:44px;font-size:23px}.ve-photo{height:clamp(240px,74vw,330px)}.ve-details{padding:10px 8px 12px}.ve-name{font-size:15px}.ve-age{font-size:14px}.ve-location{font-size:12px}.ve-cta{font-size:12px;padding:11px 4px;gap:7px}}

/* Update v4: WhatsApp bright green, full card links to configured title URL */
:root{--ve-green:#25D366}
.ve-cta,.ve-cta-unconfigured{background:#25D366!important;color:#fff!important}
.ve-cta:hover{background:#1fbd5b!important}
.ve-card{cursor:pointer}
.ve-card:focus-visible{outline:3px solid #25D366;outline-offset:2px}
