/*
Theme Name: Open Prop Market
Theme URI: https://openpropmarket.com
Author: Webxreach
Author URI: https://webxreach.com
Description: Property marketplace theme for owners, brokers, builders and buyers — residential & commercial listings, projects, enquiries, login/signup and account dashboard.
Version: 1.6.2
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: open-prop-market
Tags: real-estate, custom-post-type, custom-logo, featured-images, theme-options
*/

/* Core styles live in assets/css/common.css */
.nav.open{display:flex!important;flex-direction:column;position:absolute;top:66px;left:0;right:0;background:#fff;padding:16px;border-bottom:1px solid var(--border);gap:12px;z-index:60}
.save.saved{color:var(--orange)}
.opm-notice{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:13px}
.opm-notice.success{background:#e8f7ef;color:#0b6b3a;border:1px solid #b7e4c7}
.opm-notice.error{background:#fdecea;color:#9b1c1c;border:1px solid #f5c2c0}
.role-large{cursor:pointer;display:block}
.role-large input{margin-bottom:8px}
.auth-card .form-grid{margin-bottom:8px}
.wp-block-image img{height:auto}
.alignwide,.alignfull{max-width:100%}

/* 16:9 media */
.card-image,.mini-card .card-image,.category img,.project-card img,.article-card img,.city img,.gallery-main,.article-cover,.about-image img{
  aspect-ratio:16/9;height:auto!important;overflow:hidden
}
.card-image img,.mini-card .card-image img,.project-card img,.article-card img,.gallery-main img,.category img,.city img,.about-image img,.article-cover img{
  width:100%;height:100%;object-fit:cover
}
.gallery-strip img{aspect-ratio:16/9;height:auto!important}

/* Currency on price — aligned symbol + amount */
.price,.mini-price,.detail-price,.project-price{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.price-with-currency{display:inline-flex;align-items:center;gap:0.28em;line-height:1;vertical-align:middle}
.currency-icon,.price-amount{display:inline-block;font:inherit;font-weight:700;color:inherit;line-height:1;vertical-align:middle}
.currency-icon{background:none;padding:0;min-width:0;height:auto;border-radius:0;transform:translateY(0.02em)}
.price .currency-icon,.price .price-amount{font-size:22px;font-family:"Josefin Sans",sans-serif}

/* Autofill */
.opm-autofill{position:absolute;left:0;right:0;top:100%;z-index:40;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);margin:4px 0 0;list-style:none;padding:6px 0;display:none;max-height:220px;overflow:auto}
.opm-autofill.open{display:block}
.opm-autofill li{padding:9px 12px;font-size:13px;color:var(--text);cursor:pointer}
.opm-autofill li:hover{background:#f7f9fc;color:var(--navy)}

/* Social icons */
.social a{width:36px;height:36px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:.2s}
.social a:hover{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.45)}
.social .icon{width:16px;height:16px;display:block}

/* Quick type icons */
.quick .icon{display:block;margin:0 auto 7px;width:26px;height:26px;stroke:currentColor}

/* Auth extras */
.opm-auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:12px}
.opm-auth-divider::before,.opm-auth-divider::after{content:"";flex:1;height:1px;background:var(--border)}
.opm-google-btn{display:flex;justify-content:center;margin-bottom:8px;min-height:44px}
.membership-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.membership-card{border:1px solid var(--border);border-radius:14px;padding:24px;background:#fff;text-align:center}
.membership-card.featured{border-color:var(--orange);box-shadow:var(--shadow)}
.membership-card h3{color:var(--navy);font-size:22px;margin-bottom:6px}
.membership-card .plan-price{font:700 36px "Josefin Sans",sans-serif;color:var(--navy);margin:12px 0}
.membership-card .plan-price span{font-size:14px;color:var(--muted);font-weight:500}
@media(max-width:800px){.membership-grid{grid-template-columns:1fr}}

/* Account nav icons */
.account-nav a{display:flex;align-items:center;gap:10px}
.account-nav .icon{width:18px;height:18px;flex:0 0 auto;color:var(--navy)}

/* Listing actions */
.opm-listing-actions{display:flex;gap:8px;flex-wrap:wrap;white-space:nowrap}
.btn-sm{padding:7px 12px;font-size:12px}
.btn-danger{background:#c0392b;color:#fff}
.btn-danger:hover{background:#a93226;transform:translateY(-1px)}
.opm-status{font:700 11px "Josefin Sans",sans-serif;padding:4px 8px;border-radius:6px;background:#eef5fc;color:var(--navy)}
.opm-status-pending{background:#fff2e8;color:var(--orange)}
.opm-status-draft{background:#f4f6f8;color:var(--muted)}

/* Email verification */
.opm-phone-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.opm-verified-badge{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font:700 12px "Josefin Sans",sans-serif;color:#0b6b3a}
@media(max-width:560px){.opm-phone-row{grid-template-columns:1fr}}

/* Hero search icons — no boxes */
.search-row .field > .icon,
.search-row .field .opm-beds-area-icon .icon,
.search-box .field > .icon{
  flex:0 0 auto;width:22px;height:22px;border:0!important;outline:0;box-shadow:none;
  background:transparent;padding:0;margin:0;color:var(--navy);opacity:.9;display:block
}
.search-row .field,.search-box .field{align-items:center}
.search-row .field .field-copy,.search-box .field .field-copy{flex:1;min-width:0}
.search-box .search-row .field{border-color:transparent}

/* Themed native selects (closed state) */
select.select,.select,select.opm-themed-select,#countrySelect{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%230B3B73' d='M1.4 1.4 6 6l4.6-4.6L12 2.8 6 8.8 0 2.8z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px;
  padding-right:34px!important;border:1px solid var(--border);border-radius:8px;color:var(--navy);
  font:600 13px "Josefin Sans",sans-serif;cursor:pointer
}
select.select:focus,.select:focus,select.opm-themed-select:focus,#countrySelect:focus{
  border-color:var(--orange);box-shadow:0 0 0 3px rgba(245,130,32,.14);outline:0
}
.field .select,.field select{background-position:right 0 center;padding-right:18px!important;border:0!important;box-shadow:none!important;height:auto;font:600 13px "Josefin Sans",sans-serif;color:var(--navy)}
.country select{padding-right:22px!important;background-position:right 2px center;max-width:140px}

/* Custom themed dropdown panel */
.opm-dd{position:relative;display:inline-block;width:100%;vertical-align:top}
.opm-dd-native{position:absolute!important;left:0;top:0;width:100%!important;height:100%!important;opacity:0!important;pointer-events:none!important;margin:0!important;padding:0!important;border:0!important;z-index:-1}
.opm-dd-trigger{
  width:100%;height:48px;border:1px solid var(--border);border-radius:8px;padding:0 36px 0 13px;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%230B3B73' d='M1.4 1.4 6 6l4.6-4.6L12 2.8 6 8.8 0 2.8z'/%3E%3C/svg%3E") no-repeat right 12px center;
  color:var(--navy);font:600 13px "Josefin Sans",sans-serif;text-align:left;cursor:pointer;display:flex;align-items:center
}
.opm-dd.open .opm-dd-trigger,.opm-dd-trigger:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(245,130,32,.14);outline:0}
.opm-dd-menu{
  position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:80;max-height:280px;overflow:auto;
  background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px rgba(11,59,115,.14);
  padding:6px 0;display:none;list-style:none;margin:0
}
.opm-dd.open .opm-dd-menu{display:block}
.opm-dd-option{padding:10px 14px;font:500 13px Inter,sans-serif;color:var(--text);cursor:pointer}
.opm-dd-option:hover,.opm-dd-option.is-active{background:#fff2e8;color:var(--navy)}
.opm-dd-option.is-selected{background:#0B3B73;color:#fff;font-weight:600}
.opm-dd-option.is-disabled{opacity:.45;cursor:default;pointer-events:none;text-align:center;letter-spacing:2px}
.field .opm-dd-trigger{height:auto;min-height:0;border:0;padding:0 18px 0 0;box-shadow:none;background-color:transparent;background-position:right 0 center;font:600 13px "Josefin Sans",sans-serif}
.field .opm-dd{width:100%}
.country .opm-dd{width:auto;min-width:100px}
.country .opm-dd-trigger{height:34px;padding:0 22px 0 0;border:0;background-color:transparent;font:600 12px "Josefin Sans",sans-serif}
.country .opm-dd-menu{min-width:220px;right:0;left:auto}

/* Themed file uploads */
.opm-file{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;
  border:1px dashed #c5d0dc;border-radius:10px;background:#f7f9fc;cursor:pointer;transition:.2s
}
.opm-file:hover{border-color:var(--orange);background:#fff7f0}
.opm-file-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0,0,0,0)}
.opm-file{position:relative}
.opm-file-btn{
  display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:8px;
  background:var(--navy);color:#fff;font:700 12px "Josefin Sans",sans-serif;border:0;white-space:nowrap
}
.opm-file:hover .opm-file-btn{background:#082f5e}
.opm-file-name{font:500 13px Inter,sans-serif;color:var(--muted);flex:1;min-width:140px}
.opm-file.has-files .opm-file-name{color:var(--navy);font-weight:600}

/* RTL (when browser / Google Translate applies direction) */
html[dir="rtl"] .header-inner,html[dir="rtl"] .search-row{direction:rtl}
html[dir="rtl"] .opm-dd-trigger,html[dir="rtl"] select.select{background-position:left 12px center;padding-left:34px!important;padding-right:13px!important}

/* Ads — compact, never compete with listing cards */
.opm-ad{margin:18px auto;padding:0 12px;max-width:1180px;text-align:center;clear:both}
.opm-ad-label{font:600 10px Inter,sans-serif;color:#98a2b3;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}
.opm-ad-inner{display:inline-block;max-width:100%;line-height:0;overflow:hidden;border-radius:10px;background:transparent}
.opm-ad-inner ins,.opm-ad-inner iframe{max-width:100%!important}
.opm-ad-img{max-width:100%;height:auto;display:block;margin:0 auto;object-fit:contain}
.opm-ad--banner{margin:14px auto}.opm-ad--banner .opm-ad-img{max-height:90px}
.opm-ad--leaderboard .opm-ad-img{max-height:100px}
.opm-ad--incontent{margin:16px 0;padding:0}.opm-ad--incontent .opm-ad-img{max-height:120px}
.opm-ad--sidebar{margin:14px 0 0;padding:0;max-width:100%}.opm-ad--sidebar .opm-ad-inner{display:block;width:100%}
.opm-ad--sidebar .opm-ad-img{max-height:250px;width:100%;object-fit:cover;border-radius:8px}
.opm-ad--footer_top{margin:0 auto;padding:16px 12px;border-top:1px solid var(--border);background:#f7f9fc}
.opm-ad--footer_top .opm-ad-img{max-height:90px}
.opm-ad--home_after_hero{margin:0 auto;padding:16px 12px 0}
.filter-panel .opm-ad{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}
@media(max-width:700px){
  .opm-ad--banner .opm-ad-img,.opm-ad--leaderboard .opm-ad-img,.opm-ad--footer_top .opm-ad-img{max-height:70px}
  .opm-ad--sidebar .opm-ad-img{max-height:180px}
}
