/* ===== IRANYekanX Font ===== */
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-UltraLight.ttf') format('truetype'); font-weight:100; font-style:normal; }
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-Light.ttf') format('truetype'); font-weight:300; font-style:normal; }
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; }
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-Medium.ttf') format('truetype'); font-weight:500; font-style:normal; }
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-DemiBold.ttf') format('truetype'); font-weight:600; font-style:normal; }
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-Bold.ttf') format('truetype'); font-weight:700; font-style:normal; }
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-ExtraBold.ttf') format('truetype'); font-weight:800; font-style:normal; }
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-Black.ttf') format('truetype'); font-weight:900; font-style:normal; }
@font-face { font-family:'IRANYekanX'; src:url('../fonts/IRANYekanX-Heavy.ttf') format('truetype'); font-weight:950; font-style:normal; }

/* ===== Morabba (مربع) — فقط برای عنوان Hero ===== */
@font-face { font-family:'Morabba'; src:url('../fonts/MorabbaVF.woff2') format('woff2'), url('../fonts/MorabbaVF.woff') format('woff'); font-weight:100 900; font-style:normal; font-display:swap; }

/* ===== Variables ===== */
:root {
  --red:#D0181E; --red-d:#A81217; --red-l:#FBEAEA;
  --dark:#2C2C2C; --dark2:#3D3D3D; --dark3:#5A5A5A; --dark4:#888;
  /* v2: header white, footer light gray */
  --header-bg:#FFFFFF;
  --header-border:#E8E8E8;
  --footer-bg:#F0F0EE;
  --footer-text:#5A5A5A;
  --border:#E5E5E5; --bg:#F8F7F5; --bg2:#EFEFED; --white:#fff;
  --green:#1D9E75; --gold:#B8860B;
  --nav-h:70px;
  --radius:12px; --radius-sm:8px;
  --shadow:0 2px 16px rgba(0,0,0,.07);
  --shadow-md:0 8px 32px rgba(0,0,0,.12);
  /* panel sidebar stays dark */
  --sidebar-bg:#2C2C2C;
  /* فونت — یک سایز بزرگ‌تر از قبل */
  --fs-base:17px;
  --fs-sm:15px;
  --fs-xs:13.5px;
  --fs-lg:19px;
  --fs-xl:22px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'IRANYekanX',sans-serif;
  direction:rtl;
  background:var(--bg);
  color:var(--dark2);
  line-height:1.75;
  font-size:var(--fs-base);
}

/* ===== NAVBAR (white) ===== */
.navbar{position:sticky;top:0;z-index:1000;background:#fff;height:60px;box-shadow:0 1px 0 #e8e8e8,0 2px 8px rgba(0,0,0,.06)}
.nav-inner{max-width:1200px;margin:0 auto;padding:0 24px;height:60px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.nav-brand{font-size:17px;font-weight:900;color:#1a1a2e;letter-spacing:.04em}
.nav-brand span{color:#D0181E}
.nav-sub{font-size:10px;color:#999;font-weight:400;display:block;margin-top:-2px}
.nav-links{display:flex;align-items:center;gap:10px;flex:1;justify-content:center}
.nav-link{padding:7px 10px;border-radius:7px;font-size:13px;font-weight:400;color:#1d1d1f;text-decoration:none;letter-spacing:.2px;transition:color .15s,background .15s;white-space:nowrap}
.nav-link:hover,.nav-link.active{color:#D0181E}
.nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.nav-btn{background:#D0181E;color:#fff!important;border:none;padding:7px 16px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;gap:5px;transition:background .15s}
.nav-btn:hover{background:#b01218}
.nav-ghost{padding:6px 14px;border-radius:8px;font-size:12px;font-weight:600;color:#444;text-decoration:none;border:1px solid #ddd;white-space:nowrap;transition:all .15s}
.nav-ghost:hover{background:#fff0f0;color:#D0181E}

/* ===== CONTAINER ===== */
.container{max-width:1320px;margin:0 auto;padding:0 28px}

/* ===== HERO ===== */
.hero{background:#2C2C2C;padding:80px 0 92px;position:relative;overflow:hidden;text-align:center}
.hero::before{content:'';position:absolute;top:-40%;left:-10%;width:60%;height:200%;background:radial-gradient(ellipse,rgba(208,24,30,.12) 0%,transparent 70%);pointer-events:none}
.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(208,24,30,.15);color:#FF6B6E;border:1px solid rgba(208,24,30,.3);padding:6px 18px;border-radius:20px;font-size:var(--fs-xs);font-weight:600;margin-bottom:24px;letter-spacing:.04em}
.hero-title{font-size:clamp(30px,5vw,54px);font-weight:800;color:#fff;line-height:1.25;margin-bottom:16px}
.hero-title em{color:var(--red);font-style:normal}
.hero-sub{font-size:var(--fs-lg);color:rgba(255,255,255,.55);margin-bottom:48px;max-width:500px;margin-right:auto;margin-left:auto}
.hero-stats{display:flex;justify-content:center;gap:48px;margin-top:32px;padding-top:0;border-top:none}
.hs-n{font-size:32px;font-weight:800;color:#fff}
.hs-l{font-size:var(--fs-xs);color:rgba(255,255,255,.45);margin-top:4px}

/* ===== SEARCH BOX ===== */
.search-box{background:#fff;border-radius:16px;padding:26px 30px;box-shadow:var(--shadow-md);max-width:960px;margin:0 auto}
.search-main{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:14px;align-items:end}
.sf-group{display:flex;flex-direction:column;gap:6px}
.sf-label{font-size:13px;font-weight:400;color:#1d1d1f;letter-spacing:.2px}
.sf-select,.sf-input{border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:11px 14px;font-size:13px;font-weight:400;letter-spacing:.2px;color:#1d1d1f;background:var(--bg);font-family:inherit;transition:border-color .2s;outline:none;text-align:right;text-align-last:right}
.sf-select:focus,.sf-input:focus{border-color:var(--red);background:#fff}
/* چیدمان مرتب زیرمجموعه‌های نوع ملک: دستهٔ اصلی پررنگ، زیرمجموعه‌ها تورفته و هم‌تراز */
.sf-select optgroup{font-weight:700;color:#1d1d1f;font-size:13px;font-style:normal}
.sf-select option{font-weight:400;color:#1d1d1f;font-size:13px;padding:5px 12px}
.btn-search{background:var(--red);color:#fff;border:none;border-radius:var(--radius-sm);padding:12px 24px;font-size:var(--fs-sm);font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;font-family:inherit;white-space:nowrap;transition:background .18s}
.btn-search:hover{background:var(--red-d)}
.adv-trigger{display:flex;align-items:center;gap:6px;background:none;border:1.5px solid var(--red);border-radius:20px;cursor:pointer;color:var(--red);font-size:var(--fs-sm);font-weight:700;font-family:inherit;padding:7px 18px;margin:14px auto 0;transition:all .15s}
.adv-trigger:hover{background:var(--red-l)}
.adv-panel{display:none;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}
.adv-panel.open{display:block}
.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px}
.adv-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}
.code-row{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--bg);border-radius:var(--radius-sm);margin-bottom:16px}
.code-label{font-size:var(--fs-xs);font-weight:700;color:var(--dark3);white-space:nowrap}
.fc{font-size:var(--fs-xs);padding:6px 14px;border-radius:20px;border:1.5px solid var(--border);cursor:pointer;color:var(--dark3);transition:all .15s;user-select:none;display:inline-block;margin:3px}
.fc:hover,.fc.on{border-color:var(--red);background:var(--red-l);color:var(--red)}
.feat-chips{display:flex;flex-wrap:wrap}

/* ===== متراژ محدوده ===== */
.range-chips{display:flex;gap:8px;flex-wrap:wrap}
.range-chip{font-size:var(--fs-xs);padding:7px 16px;border-radius:20px;border:1.5px solid var(--border);cursor:pointer;color:var(--dark3);transition:all .15s;user-select:none;font-weight:500}
.range-chip:hover,.range-chip.on{border-color:var(--red);background:var(--red-l);color:var(--red);font-weight:700}

/* ===== SECTION ===== */
.section{padding:64px 0}
.section-dark{background:var(--dark)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px}
.section-title{font-size:24px;font-weight:800;color:var(--dark2)}
.section-title.white{color:#fff}
.section-title i{color:var(--red);margin-left:8px}
.section-sub{font-size:var(--fs-sm);color:var(--dark4);margin-top:6px}
.section-sub.white{color:rgba(255,255,255,.5)}

/* ===== PROPERTY CARD ===== */
.props-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:22px}
.prop-card{background:#fff;border-radius:var(--radius);border:1px solid #EBEBEB;overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}
.prop-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}
.prop-img{height:218px;background:var(--dark);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.prop-img-placeholder{color:rgba(255,255,255,.12);font-size:64px}
.prop-badges{position:absolute;top:12px;right:12px;display:flex;gap:6px;flex-wrap:wrap}
.badge{font-size:var(--fs-xs);padding:4px 12px;border-radius:20px;font-weight:700}
.badge-sale{background:var(--red);color:#fff}
.badge-rent{background:var(--green);color:#fff}
.badge-vip{background:var(--gold);color:#fff;font-weight:800;box-shadow:0 1px 5px rgba(0,0,0,.28);letter-spacing:.03em}
.badge-feat{background:var(--dark2);color:#fff;font-weight:600}
.prop-code-badge{position:absolute;bottom:10px;left:10px;background:rgba(0,0,0,.65);color:#fff;font-size:11px;padding:3px 10px;border-radius:6px;font-weight:600;letter-spacing:.04em}
.prop-body{padding:18px;flex:1;display:flex;flex-direction:column}
.prop-title{font-size:var(--fs-sm);font-weight:700;color:var(--dark2);margin-bottom:8px;line-height:1.5}
.prop-price{font-size:13px;font-weight:400;letter-spacing:.2px;color:var(--red);margin-bottom:10px}
.prop-specs{display:flex;gap:14px;font-size:var(--fs-xs);color:var(--dark4);margin-bottom:10px;flex-wrap:wrap}
.prop-spec{display:flex;align-items:center;gap:5px}
.prop-loc{font-size:11px;font-weight:300;color:var(--dark4);display:flex;align-items:center;gap:5px;margin-top:auto;padding-top:8px;letter-spacing:.01em;white-space:nowrap;overflow:hidden}
.prop-foot{padding:12px 18px;border-top:1px solid #F0F0F0;background:var(--bg);display:flex;justify-content:space-between;align-items:center}
.prop-code{font-family:'IRANYekanX',monospace;font-size:11px;color:var(--dark4);font-weight:600}
.prop-time{font-size:11px;color:var(--dark4)}

/* ===== BTN ===== */
.btn{display:inline-flex;align-items:center;gap:7px;padding:11px 24px;border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:700;font-family:inherit;cursor:pointer;text-decoration:none;border:none;transition:all .2s}
.btn-primary{background:var(--red);color:#fff}
.btn-primary:hover{background:var(--red-d);transform:translateY(-1px)}
.btn-dark{background:var(--dark2);color:#fff}
.btn-dark:hover{background:var(--dark)}
.btn-outline{background:transparent;color:var(--dark2);border:1.5px solid var(--border)}
.btn-outline:hover{border-color:var(--dark3);background:var(--bg2)}
.btn-outline-red{background:transparent;color:var(--red);border:1.5px solid var(--red)}
.btn-outline-red:hover{background:var(--red-l)}
.btn-sm{padding:7px 16px;font-size:var(--fs-xs);border-radius:6px}
.btn-lg{padding:15px 36px;font-size:var(--fs-lg);border-radius:10px}
.btn-block{width:100%;justify-content:center}

/* ===== CARDS ===== */
.info-card{background:#fff;border-radius:var(--radius);border:1px solid var(--border);padding:26px}
.info-card-title{font-size:var(--fs-base);font-weight:700;color:var(--dark2);margin-bottom:18px;display:flex;align-items:center;gap:8px}
.info-card-title i{color:var(--red)}

/* ===== FORM ===== */
.form-group{margin-bottom:18px}
.form-label{display:block;font-size:var(--fs-sm);font-weight:600;color:var(--dark2);margin-bottom:7px}
.req{color:var(--red)}
.form-control{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;font-size:var(--fs-sm);color:var(--dark2);font-family:inherit;background:#fff;transition:border-color .2s}
.form-control:focus{outline:none;border-color:var(--red)}
.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}

/* ===== PILL ===== */
.pill{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);padding:4px 12px;border-radius:20px;font-weight:600}
.pill-red{background:var(--red-l);color:var(--red)}
.pill-green{background:#E8F7EF;color:#1D7A55}
.pill-amber{background:#FEF3DE;color:#7A4800}
.pill-gray{background:var(--bg2);color:var(--dark3);border:1px solid var(--border)}
.pill-purple{background:#EEEDFE;color:#0066CC}
.pill-gold{background:#FFF8E1;color:#B8860B;border:1px solid #F5C542}

/* ===== ALERT ===== */
.alert{padding:14px 18px;border-radius:var(--radius-sm);font-size:var(--fs-sm);margin-bottom:18px;display:flex;align-items:flex-start;gap:9px}
.alert-success{background:#EAF5E3;color:#2D6A1F;border:1px solid #A8D99C}
.alert-danger{background:var(--red-l);color:var(--red);border:1px solid #F5B8B8}
.alert-info{background:#E5F0FB;color:#1A5FA8;border:1px solid #ABCEF7}
.alert-warning{background:#FEF3DE;color:#7A4800;border:1px solid #FAD07A}

/* ===== FOOTER (light gray) ===== */
.footer{background:var(--footer-bg);color:var(--footer-text);padding:56px 0 28px;margin-top:72px;border-top:1px solid var(--border)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:40px;margin-bottom:40px}
.footer-brand-name{font-size:22px;font-weight:800;color:var(--dark2);margin-bottom:14px;letter-spacing:.04em}
.footer-brand-name span{color:var(--red)}
.footer-desc{font-size:var(--fs-sm);line-height:1.9;color:var(--dark4)}
.footer-title{font-size:var(--fs-xs);font-weight:700;color:var(--dark3);margin-bottom:16px;text-transform:uppercase;letter-spacing:.08em}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-links a{font-size:var(--fs-sm);color:var(--dark4);text-decoration:none;transition:color .15s}
.footer-links a:hover{color:var(--red)}
.footer-contact-item{display:flex;align-items:center;gap:10px;font-size:var(--fs-sm);color:var(--dark4);margin-bottom:10px}
.footer-contact-item i{color:var(--red);font-size:17px;flex-shrink:0}
.social-row{display:flex;gap:10px;margin-top:20px}
.soc{width:38px;height:38px;border-radius:10px;background:var(--bg2);display:flex;align-items:center;justify-content:center;color:var(--dark4);font-size:18px;text-decoration:none;transition:all .18s;border:1px solid var(--border)}
.soc:hover{background:var(--red);color:#fff;border-color:var(--red)}
.footer-bottom{border-top:1px solid var(--border);padding-top:22px;display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--dark4)}

/* ===== PANEL (sidebar stays dark) ===== */
.panel-layout{display:flex;min-height:100vh}
.panel-sidebar{width:240px;background:var(--sidebar-bg);flex-shrink:0;display:flex;flex-direction:column}
.ps-brand{padding:22px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.ps-brand-name{font-size:15px;font-weight:800;color:#fff;letter-spacing:.04em}
.ps-brand-name span{color:var(--red)}
.ps-brand-role{font-size:var(--fs-xs);color:rgba(255,255,255,.4);margin-top:4px}
.ps-nav{padding:14px 0;flex:1}
.ps-section{font-size:10px;font-weight:700;color:rgba(255,255,255,.28);padding:10px 18px 5px;text-transform:uppercase;letter-spacing:.1em}
.ps-link{display:flex;align-items:center;gap:11px;padding:12px 18px;font-size:var(--fs-sm);color:rgba(255,255,255,.58);text-decoration:none;transition:all .16s;border-right:3px solid transparent;font-weight:500}
.ps-link:hover{background:rgba(255,255,255,.06);color:rgba(255,255,255,.9)}
.ps-link.active{background:rgba(208,24,30,.18);color:#fff;border-right-color:var(--red)}
.ps-link i{font-size:18px;width:22px;text-align:center}
.bc{background:var(--red);color:#fff;font-size:10px;padding:2px 7px;border-radius:10px;margin-right:auto}
.panel-main{flex:1;background:var(--bg);overflow-x:hidden}
.panel-topbar{background:#fff;border-bottom:1px solid var(--border);padding:0 28px;height:62px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}
.panel-title{font-size:var(--fs-lg);font-weight:700;color:var(--dark2)}
.panel-actions{display:flex;align-items:center;gap:12px}
.user-pill{display:flex;align-items:center;gap:9px}
.user-av{width:36px;height:36px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;color:#fff}
.user-name{font-size:var(--fs-sm);font-weight:600;color:var(--dark2)}
.panel-content{padding:28px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}
.stat-card{background:#fff;border-radius:var(--radius);border:1px solid var(--border);padding:22px}
.stat-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.stat-n{font-size:30px;font-weight:800;color:var(--dark2)}
.stat-n.red{color:var(--red)}
.stat-l{font-size:var(--fs-sm);color:var(--dark4);margin-top:3px}
.table-wrap{background:#fff;border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}
.data-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}
.data-table th{background:var(--bg);color:var(--dark3);font-weight:700;font-size:var(--fs-xs);padding:12px 14px;border-bottom:2px solid var(--border);text-align:right;white-space:nowrap}
.data-table td{padding:12px 14px;border-bottom:1px solid #F0F0F0;color:var(--dark2);vertical-align:middle}
.data-table tbody tr:hover td{background:var(--bg)}
.table-actions{display:flex;gap:6px}
.ta-btn{width:32px;height:32px;border-radius:7px;border:1.5px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;cursor:pointer;color:var(--dark3);transition:all .15s;text-decoration:none}
.ta-btn:hover{background:var(--bg2)}
.ta-btn.g:hover{background:#E8F7EF;color:#1D7A55;border-color:#1D7A55}
.ta-btn.r:hover{background:var(--red-l);color:var(--red);border-color:var(--red)}
.ta-btn.b:hover{background:#E5F0FB;color:#1A5FA8;border-color:#1A5FA8}

/* ===== LOGIN (stays dark) ===== */
.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}
.login-left{background:var(--dark);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;position:relative;overflow:hidden}
.login-left::before{content:'';position:absolute;top:-20%;right:-20%;width:70%;height:70%;background:radial-gradient(circle,rgba(208,24,30,.15) 0%,transparent 70%)}
.login-right{display:flex;align-items:center;justify-content:center;padding:48px;background:var(--bg)}
.login-card{width:100%;max-width:440px}
.tab-row{display:flex;border:1.5px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:24px}
.tab-btn{flex:1;padding:11px;border:none;font-family:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:all .15s}
.tab-btn.on{background:var(--dark);color:#fff}
.tab-btn:not(.on){background:#fff;color:var(--dark3)}

/* ===== OTP LOGIN ===== */
.otp-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--dark4);font-size:var(--fs-xs)}
.otp-divider::before,.otp-divider::after{content:'';flex:1;height:1px;background:var(--border)}
.otp-box{border:1.5px dashed var(--border);border-radius:var(--radius-sm);padding:16px;background:var(--bg)}
.otp-box-title{font-size:var(--fs-sm);font-weight:700;color:var(--dark2);margin-bottom:12px;display:flex;align-items:center;gap:7px}

/* ===== PROPERTY DETAIL ===== */
.gallery-main{height:460px;border-radius:var(--radius);overflow:hidden;position:relative;background:var(--dark);display:flex;align-items:center;justify-content:center}
.gallery-placeholder{font-size:80px;color:rgba(255,255,255,.1)}
.gallery-thumbs{display:flex;gap:10px;margin-top:12px}
.gallery-thumb{width:90px;height:68px;border-radius:9px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .15s;flex-shrink:0;background:var(--dark);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.3);font-size:20px}
.gallery-thumb.active{border-color:var(--red)}
.detail-layout{display:grid;grid-template-columns:1fr 380px;gap:28px;margin-top:28px}
.detail-title{font-size:26px;font-weight:800;color:var(--dark2);margin-bottom:10px}
.detail-price{font-size:20px;font-weight:700;letter-spacing:.2px;color:var(--red);margin-bottom:8px}
.detail-code{display:inline-flex;align-items:center;gap:7px;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:6px 14px;font-size:var(--fs-sm);font-weight:700;color:var(--dark3);margin-bottom:18px}
.detail-code i{color:var(--red)}
.d-specs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.d-spec{display:flex;align-items:center;gap:7px;font-size:var(--fs-sm);color:var(--dark3);background:var(--bg);padding:10px 16px;border-radius:9px;border:1px solid var(--border)}
.tabs-bar{border-bottom:2px solid var(--border);display:flex;gap:0;margin-bottom:22px}
.tab-b{padding:12px 24px;font-size:var(--fs-sm);font-weight:700;color:var(--dark4);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .18s;background:none;border-top:none;border-left:none;border-right:none;font-family:inherit}
.tab-b.active{color:var(--red);border-bottom-color:var(--red)}
.tab-panel{display:none}
.tab-panel.active{display:block}

/* ===== VIDEO EMBED ===== */
.video-wrap{background:var(--dark);border-radius:var(--radius);overflow:hidden;position:relative;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;cursor:pointer}
.video-thumb{width:100%;height:100%;object-fit:cover;display:block}
.video-play-btn{position:absolute;width:64px;height:64px;border-radius:50%;background:rgba(208,24,30,.9);display:flex;align-items:center;justify-content:center;color:#fff;font-size:28px;transition:transform .2s}
.video-wrap:hover .video-play-btn{transform:scale(1.1)}
.video-placeholder{display:flex;flex-direction:column;align-items:center;gap:10px;color:rgba(255,255,255,.4)}

/* ===== CONTACT STICKY ===== */
.contact-sticky{position:sticky;top:calc(var(--nav-h) + 18px);background:var(--dark);border-radius:var(--radius);overflow:hidden}
.cs-head{padding:22px;border-bottom:1px solid rgba(255,255,255,.08)}
.cs-av{width:52px;height:52px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:700;color:#fff;flex-shrink:0}
.cs-name{font-size:var(--fs-base);font-weight:700;color:#fff}
.cs-role{font-size:var(--fs-xs);color:rgba(255,255,255,.5)}
.cs-body{padding:22px;display:flex;flex-direction:column;gap:11px}
.btn-call{background:var(--red);border-radius:var(--radius-sm);padding:14px;color:#fff;font-size:var(--fs-sm);font-weight:700;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border:none;cursor:pointer;width:100%;font-family:inherit}
.btn-wa{background:#25D366;border-radius:var(--radius-sm);padding:14px;color:#fff;font-size:var(--fs-sm);font-weight:700;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border:none;cursor:pointer;width:100%;font-family:inherit}
.cs-form{background:rgba(255,255,255,.06);border-radius:var(--radius-sm);padding:18px}
.cs-form-title{font-size:var(--fs-sm);font-weight:600;color:rgba(255,255,255,.8);margin-bottom:12px}
.cs-input{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:7px;padding:10px 13px;color:#fff;font-size:var(--fs-sm);font-family:inherit;margin-bottom:9px}
.cs-input:focus{outline:none;border-color:rgba(208,24,30,.6)}

/* ===== CRM ===== */
.crm-stage{display:flex;gap:6px;margin-bottom:18px;overflow-x:auto;padding-bottom:4px}
.crm-stage-btn{flex-shrink:0;padding:7px 16px;border-radius:20px;font-size:var(--fs-xs);font-weight:700;border:1.5px solid var(--border);background:#fff;cursor:pointer;font-family:inherit;transition:all .15s;color:var(--dark3)}
.crm-stage-btn.on{background:var(--red);color:#fff;border-color:var(--red)}
.crm-card{background:#fff;border-radius:10px;border:1px solid var(--border);padding:14px;margin-bottom:10px;transition:box-shadow .2s}
.crm-card:hover{box-shadow:var(--shadow)}
.crm-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.crm-name{font-size:var(--fs-sm);font-weight:700;color:var(--dark2)}
.crm-info{font-size:var(--fs-xs);color:var(--dark4);margin-bottom:8px}
.crm-actions{display:flex;gap:6px;margin-top:10px}

/* ===== PSYCHOLOGY QUIZ ===== */
.quiz-progress{height:6px;background:var(--border);border-radius:3px;margin-bottom:24px;overflow:hidden}
.quiz-progress-bar{height:100%;background:var(--red);border-radius:3px;transition:width .4s}
.quiz-q{font-size:var(--fs-base);font-weight:700;color:var(--dark2);margin-bottom:16px;line-height:1.6}
.quiz-opts{display:flex;flex-direction:column;gap:10px}
.quiz-opt{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1.5px solid var(--border);border-radius:10px;cursor:pointer;transition:all .18s}
.quiz-opt:hover{border-color:var(--red);background:var(--red-l)}
.quiz-opt.selected{border-color:var(--red);background:var(--red-l)}
.quiz-opt input{margin-top:2px;accent-color:var(--red)}

/* ===== VIP PANEL ===== */
.vip-card{background:linear-gradient(135deg,#1a1a1a,#2C2C2C);border-radius:var(--radius);padding:28px;color:#fff;position:relative;overflow:hidden;border:1px solid rgba(184,134,11,.3)}
.vip-card::before{content:'';position:absolute;top:-30%;right:-10%;width:60%;height:160%;background:radial-gradient(circle,rgba(184,134,11,.15) 0%,transparent 70%)}
.vip-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(184,134,11,.2);border:1px solid rgba(184,134,11,.4);padding:6px 16px;border-radius:20px;font-size:var(--fs-xs);font-weight:700;color:#F5C542;margin-bottom:16px}
.legal-tip{background:#fff;border-radius:10px;border:1px solid var(--border);padding:16px;margin-bottom:12px;border-right:4px solid var(--red)}
.legal-tip-title{font-size:var(--fs-sm);font-weight:700;color:var(--dark2);margin-bottom:6px;display:flex;align-items:center;gap:7px}
.legal-tip-text{font-size:var(--fs-xs);color:var(--dark3);line-height:1.8}

/* ===== BIRTHDAY POPUP ===== */
.birthday-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9999;display:flex;align-items:center;justify-content:center}
.birthday-box{background:#fff;border-radius:20px;padding:48px 40px;text-align:center;max-width:420px;width:90%;box-shadow:0 24px 64px rgba(0,0,0,.2);position:relative}
.birthday-emoji{font-size:64px;display:block;margin-bottom:16px}
.birthday-title{font-size:24px;font-weight:800;color:var(--dark2);margin-bottom:8px}
.birthday-text{font-size:var(--fs-sm);color:var(--dark4);line-height:1.8}

/* ===== MOTIVATIONAL BANNER ===== */
.motiv-banner{background:var(--dark);border-radius:var(--radius);padding:20px 24px;margin-bottom:20px;display:flex;align-items:center;gap:14px;border-right:4px solid var(--red)}
.motiv-icon{font-size:28px;flex-shrink:0}
.motiv-text{font-size:var(--fs-sm);color:rgba(255,255,255,.8);line-height:1.7;font-style:italic}
.motiv-src{font-size:var(--fs-xs);color:rgba(255,255,255,.4);margin-top:4px}

/* ===== SEO META ===== */
.seo-breadcrumb{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--dark4);margin-bottom:20px;flex-wrap:wrap}
.seo-breadcrumb a{color:var(--dark4);text-decoration:none}
.seo-breadcrumb a:hover{color:var(--red)}

@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.fade-in{animation:fadeIn .4s ease forwards}

@media(max-width:1024px){.detail-layout{grid-template-columns:1fr}.contact-sticky{position:static}}
@media(max-width:900px){.login-page{grid-template-columns:1fr}.login-left{display:none}.stats-grid{grid-template-columns:1fr 1fr}.panel-sidebar{display:none}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.nav-links{display:none}.search-main{grid-template-columns:1fr 1fr}.props-grid{grid-template-columns:1fr}.adv-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}.form-grid-2{grid-template-columns:1fr}.form-grid-3{grid-template-columns:1fr}}

/* ============================================================
   ریسپانسیو موبایل — کامل
   ============================================================ */

/* mobile menu */
.mobile-menu-btn{display:none;background:none;border:none;font-size:24px;color:var(--dark2);cursor:pointer;padding:6px}
.mobile-drawer{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:999}
.mobile-drawer.open{display:block}
.mobile-drawer-inner{position:absolute;top:0;right:0;width:280px;height:100vh;background:#fff;padding:24px 20px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;animation:slideIn .25s ease}
@keyframes slideIn{from{transform:translateX(100%)}to{transform:translateX(0)}}
.drawer-close{background:none;border:none;font-size:22px;cursor:pointer;color:var(--dark3);align-self:flex-end;margin-bottom:12px}
.drawer-link{display:block;padding:12px 16px;border-radius:8px;color:var(--dark2);text-decoration:none;font-size:15px;font-weight:500;transition:all .15s}
.drawer-link:hover{background:var(--red-l);color:var(--red)}

/* footer */
.site-footer{background:var(--footer-bg);border-top:1px solid var(--border);padding:48px 0 0;font-family:inherit}
.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:28px;max-width:1200px;margin:0 auto;padding:0 24px}
.footer-col-title{font-size:11px;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--border)}
.footer-link{display:block;font-size:13px;font-weight:400;letter-spacing:.2px;color:#777;text-decoration:none;margin-bottom:6px;transition:color .15s}
.footer-link:hover{color:var(--red)}
.footer-logo-text{font-size:22px;font-weight:900;color:var(--dark2);letter-spacing:.06em;margin-bottom:8px}
.footer-logo-text span{color:var(--red)}
.footer-tagline{font-size:13px;font-weight:400;letter-spacing:.2px;color:var(--dark4);line-height:1.8;margin-bottom:10px}
.footer-cert-badge{font-size:13px;font-weight:400;letter-spacing:.2px;color:var(--dark4);line-height:1.8;display:inline-block;margin-bottom:14px}
.footer-socials{display:flex;gap:8px}
.fsoc{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;font-size:17px;transition:opacity .2s}
.fsoc:hover{opacity:.85}
.fsoc-wa{background:#25D366}.fsoc-bale{background:#3EC49A}.fsoc-ig{background:#E1306C}.fsoc-tg{background:#229ED9}
.fsoc-photo{background:transparent;overflow:hidden;padding:0}
.fsoc-photo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:8px}
.footer-branch{background:#fff;border-radius:8px;padding:12px}
.fbranch-name{font-size:13px;font-weight:700;color:var(--dark2);margin-bottom:4px;display:flex;align-items:center;gap:6px}
.fbranch-addr{font-size:12px;color:var(--dark4);line-height:1.7;margin-bottom:4px}
.fbranch-phone{font-size:13px;font-weight:700;color:var(--red);text-decoration:none;display:block}
.fcontact-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#777;margin-bottom:6px}
.fcontact-row i{color:var(--red)}
.footer-cta{display:flex;align-items:center;gap:8px;border-radius:8px;padding:10px 14px;text-decoration:none;font-size:13px;font-weight:700;color:#fff;margin-top:8px}
.footer-cta-wa{background:#25D366}.footer-cta-bale{background:#4A90D9}
.footer-bottom{border-top:1px solid var(--border);margin-top:28px;padding:14px 24px;max-width:1200px;margin-left:auto;margin-right:auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.footer-copy{font-size:13px;font-weight:400;letter-spacing:.2px;color:#999}
.footer-brand-bottom{font-size:20px;font-weight:900;color:var(--dark2);letter-spacing:.06em}
.footer-brand-bottom span{color:var(--red)}

/* feat-label */
.feat-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;padding:6px 12px;border:1.5px solid var(--border);border-radius:8px;cursor:pointer;margin:4px;transition:all .15s;background:#fff}
.feat-label:hover{border-color:var(--red);background:var(--red-l)}
.feat-label input:checked~*{color:var(--red)}
.feat-grid{display:flex;flex-wrap:wrap}

/* cascade row */
.cascade-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}

/* toast */
.toast{position:fixed;bottom:24px;right:24px;background:var(--dark2);color:#fff;padding:14px 20px;border-radius:10px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:10px;opacity:0;transition:all .3s;z-index:9999;transform:translateY(20px)}
.toast.show{opacity:1;transform:translateY(0)}
.toast-success{background:#1D9E75}.toast-error{background:var(--red)}

/* badge tag */
.badge-tag{background:#92400E;color:#fff}
.badge-mort{background:#0066CC;color:#fff}

/* sidebar panel در موبایل */
.panel-sidebar-mobile-btn{display:none;position:fixed;bottom:24px;left:24px;z-index:200;width:48px;height:48px;border-radius:50%;background:var(--red);color:#fff;border:none;font-size:22px;cursor:pointer;box-shadow:var(--shadow-md)}

/* ===== BREAKPOINTS ===== */
@media(max-width:1024px){
  .footer-inner{grid-template-columns:1fr 1fr}
  .detail-layout{grid-template-columns:1fr}
  .contact-sticky{position:static}
  .cascade-row{grid-template-columns:1fr 1fr}
}

@media(max-width:900px){
  .nav-links,.nav-ghost,.nav-btn{display:none}
  .mobile-menu-btn{display:flex;align-items:center;justify-content:center}
  .login-page{grid-template-columns:1fr}
  .login-left{display:none}
  .stats-grid{grid-template-columns:1fr 1fr}
  .panel-sidebar{display:none}
  .panel-main{margin-right:0 !important}
  .panel-sidebar-mobile-btn{display:flex;align-items:center;justify-content:center}
  .footer-inner{grid-template-columns:1fr 1fr}
  .hero-stats{gap:24px}
  .advisors-grid{grid-template-columns:1fr 1fr !important}
  .cascade-row{grid-template-columns:1fr 1fr}
}

@media(max-width:768px){
  .container{padding:0 16px}
  .hero{padding:48px 0 56px}
  .hero-title{font-size:clamp(24px,5vw,36px)}
  .search-box{padding:18px 16px;border-radius:12px}
  .search-main{grid-template-columns:1fr 1fr;gap:10px}
  .search-main .btn-search{grid-column:1/-1}
  .adv-grid{grid-template-columns:1fr 1fr}
  .adv-grid-4{grid-template-columns:1fr 1fr}
  .section{padding:40px 0}
  .props-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr}
  .form-grid-2{grid-template-columns:1fr}
  .form-grid-3{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:1fr 1fr}
  .hero-stats{flex-wrap:wrap;gap:20px}
  .panel-content{padding:16px}
  .panel-topbar{padding:0 16px}
  .advisors-grid{grid-template-columns:1fr !important}
  .cascade-row{grid-template-columns:1fr}
  .detail-layout{grid-template-columns:1fr}
  .gallery-main{height:260px}
}

@media(max-width:480px){
  .search-main{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:1fr 1fr}
  .hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0 4px 8px;text-align:center}
  .hs-n{font-size:20px}
  .hs-l{font-size:10px;line-height:1.3}
  .footer-inner{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;text-align:center}
  .adv-grid{grid-template-columns:1fr}
  .adv-grid-4{grid-template-columns:1fr 1fr}
  .cascade-row{grid-template-columns:1fr}
  .tab-row{flex-direction:column}
}

/* ===== فونت یکسان همه جا ===== */
body, button, input, select, textarea, a, span, div, p, h1, h2, h3, h4, h5, h6, label, th, td {
  font-family: 'IRANYekanX', sans-serif !important;
}
.data-table th { font-size: var(--fs-xs); }
.data-table td { font-size: var(--fs-sm); }
.nav-link { font-size: 13px; }
.prop-title { font-size: var(--fs-sm); }
.prop-price { font-size: 13px; font-weight: 400; letter-spacing: .2px; }
.btn { font-size: var(--fs-sm); }
.form-label { font-size: var(--fs-sm); }
.form-control { font-size: var(--fs-sm); }
.sf-select, .sf-input { font-size: 13px; font-weight: 400; letter-spacing: .2px; }
.section-title { font-size: 26px; }
.detail-title { font-size: 28px; }
.stat-n { font-size: 32px; }
.hs-n { font-size: 34px; }
.hero-title { font-size: clamp(32px, 5vw, 56px); }
.faq-item button, .faq-item div { font-family: 'IRANYekanX', sans-serif !important; }

/* ============================================================
   MOBILE-FIRST RESPONSIVE v2 — کامل
   ============================================================ */

/* رنگ آبی پپسی جایگزین بنفش */
:root {
  --pepsi: #0066CC;
  --pepsi-l: #E0F2FE;
  --pepsi-d: #0044AA;
}

/* حذف همه رنگ‌های بنفش */
[style*="#0066CC"],[style*="0066CC"] { color: #0066CC !important; }
[style*="background:#0066CC"] { background: #0066CC !important; }
[style*="#E0F2FE"] { background: #E0F2FE !important; }

/* ===== MOBILE BASE ===== */
* { box-sizing: border-box; }

html, body {
  overflow-x: hidden;
  max-width: 100vw;
}

.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px;
}

/* ===== LOGIN PAGE ===== */
.login-page {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 100vh;
}
.login-right {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px 24px;
  background: #fff;
}
.login-card {
  width: 100%;
  max-width: 440px;
}

/* ===== HERO ===== */
.hero {
  background: #2C2C2C;
  padding: 64px 0 0;
  text-align: center;
  overflow: hidden;
}
.hero-title {
  font-size: clamp(26px, 4vw, 52px);
  font-weight: 900;
  color: #fff;
  margin-bottom: 14px;
  line-height: 1.3;
}
.hero-title em {
  color: var(--red);
  font-style: normal;
}
.hero-sub {
  font-size: clamp(14px, 2vw, 17px);
  color: rgba(255,255,255,.55);
  margin-bottom: 40px;
  max-width: 560px;
  margin-right: auto;
  margin-left: auto;
}
.search-box {
  background: #fff;
  border-radius: 16px;
  padding: 24px;
  max-width: 960px;
  margin: 0 auto;
  box-shadow: 0 8px 32px rgba(0,0,0,.2);
}
.search-main {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr auto;
  gap: 12px;
  align-items: end;
}
.hero-stats {
  display: flex;
  justify-content: center;
  gap: 48px;
  padding: 32px 0 36px;
  border-top: none;
  flex-wrap: wrap;
}
.hs-n { font-size: 32px; font-weight: 900; color: #fff; }
.hs-l { font-size: 13px; color: rgba(255,255,255,.5); margin-top: 4px; }

/* ===== BRANCHES SECTION ===== */
.branches-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

/* ===== PROPS GRID ===== */
.props-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

/* ===== SEARCH PAGE ===== */
.search-layout {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 24px;
}
.filter-box {
  position: sticky;
  top: 80px;
}

/* ===== FORMS ===== */
.form-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.form-grid-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 14px; }

/* ===== PANEL ===== */
.panel-layout {
  display: flex;
  min-height: 100vh;
}
.panel-sidebar {
  width: 240px;
  background: var(--sidebar-bg, #2C2C2C);
  position: fixed;
  top: 0;
  right: 0;
  height: 100vh;
  z-index: 100;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.panel-main {
  margin-right: 240px;
  flex: 1;
  padding: 0;
}
.panel-content {
  padding: 24px;
}

/* ===== MOBILE OVERLAY FOR SIDEBAR ===== */
.sidebar-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.5);
  z-index: 99;
}
.sidebar-overlay.show { display: block; }

/* ===== MOBILE SIDEBAR TOGGLE ===== */
.mobile-sidebar-btn {
  display: none;
  position: fixed;
  bottom: 20px;
  left: 20px;
  z-index: 101;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--red);
  color: #fff;
  border: none;
  font-size: 22px;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(0,0,0,.3);
  align-items: center;
  justify-content: center;
}

/* ===== ADVSEARCH PANEL ===== */
.adv-panel {
  display: none;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(0,0,0,.08);
  animation: fadeIn .2s ease;
}
.adv-panel.open { display: block; }
.adv-trigger {
  background: none;
  border: 1.5px solid rgba(0,0,0,.15);
  border-radius: 20px;
  padding: 7px 18px;
  font-size: 14px;
  font-weight: 600;
  color: var(--dark3);
  cursor: pointer;
  font-family: inherit;
  transition: all .2s;
}
.adv-trigger:hover { border-color: var(--red); color: var(--red); }
.adv-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; }
.feat-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.fc {
  font-size: 13px;
  font-weight: 400;
  letter-spacing: .2px;
  padding: 6px 13px;
  border: 1.5px solid var(--border);
  border-radius: 20px;
  cursor: pointer;
  transition: all .15s;
  background: #fff;
  font-family: inherit;
}
.fc.on { background: var(--red); border-color: var(--red); color: #fff; }
.code-row { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; flex-wrap: wrap; }
.range-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.range-chip {
  font-size: 12px;
  padding: 5px 12px;
  border: 1.5px solid var(--border);
  border-radius: 20px;
  cursor: pointer;
  transition: all .15s;
  background: #fff;
  font-family: inherit;
}
.range-chip.on { background: var(--red); border-color: var(--red); color: #fff; }

/* ===== VIDEO FRAME ===== */
.video-phone-frame {
  display: inline-block;
  background: #111;
  border-radius: 32px;
  padding: 12px 8px;
  box-shadow: 0 20px 60px rgba(0,0,0,.4), inset 0 0 0 2px #333;
  position: relative;
}
.video-phone-frame::before {
  content: '';
  display: block;
  width: 60px;
  height: 6px;
  background: #333;
  border-radius: 3px;
  margin: 0 auto 10px;
}
.video-phone-frame video,
.video-phone-frame iframe {
  display: block;
  width: 220px;
  border-radius: 20px;
  aspect-ratio: 9/16;
}

/* ===== LOCATION MAP ===== */
.location-map-box {
  border: 2px dashed var(--border);
  border-radius: 12px;
  height: 200px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .2s;
  background: var(--bg);
  font-family: inherit;
  gap: 8px;
}
.location-map-box:hover { border-color: var(--red); background: var(--red-l); }
.location-map-box.selected {
  border-color: var(--red);
  background: var(--red-l);
}

/* ===== TREE VIEW (REGIONS) ===== */
.tree-city {
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 12px;
}
.tree-city-head {
  background: var(--dark);
  color: #fff;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 700;
  font-size: 15px;
}
.tree-district {
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
  background: var(--bg2);
}
.tree-district-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 600;
  font-size: 14px;
  color: var(--dark2);
  margin-bottom: 8px;
}
.tree-regions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 6px 0;
}
.tree-region-tag {
  background: #fff;
  border: 1.5px solid var(--border);
  border-radius: 20px;
  padding: 4px 12px;
  font-size: 12px;
  color: var(--dark3);
  display: flex;
  align-items: center;
  gap: 6px;
}
.tree-btn {
  width: 26px;
  height: 26px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  transition: all .15s;
}
.tree-btn-edit { background: var(--bg); color: var(--dark3); }
.tree-btn-edit:hover { background: #0066CC; color: #fff; }
.tree-btn-del { background: #FEE2E2; color: var(--red); }
.tree-btn-del:hover { background: var(--red); color: #fff; }
.tree-btn-add { background: var(--red-l); color: var(--red); }
.tree-btn-add:hover { background: var(--red); color: #fff; }

/* ===== PERFORMANCE PAGE ===== */
.perf-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin-bottom: 24px; }
.perf-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 20px;
  text-align: center;
}
.perf-n { font-size: 28px; font-weight: 900; color: var(--red); }
.perf-l { font-size: 13px; color: var(--dark4); margin-top: 4px; }

/* ===== WISHLIST ===== */
.wishlist-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }

/* ============================================================
   BREAKPOINTS
   ============================================================ */

@media (max-width: 1024px) {
  .props-grid { grid-template-columns: repeat(2,1fr); }
  .search-main { grid-template-columns: 1fr 1fr; }
  .search-main .btn-search { grid-column: span 2; }
  .panel-sidebar { width: 220px; }
  .panel-main { margin-right: 220px; }
}

@media (max-width: 900px) {
  /* navbar */
  .nav-links, .nav-ghost { display: none !important; }
  .mobile-menu-btn { display: flex !important; }

  /* login */
  .login-page { grid-template-columns: 1fr; }
  .login-left { display: none !important; }
  .login-right { padding: 24px 16px; }

  /* panel sidebar hidden */
  .panel-sidebar { transform: translateX(100%); transition: transform .3s ease; }
  .panel-sidebar.open { transform: translateX(0); }
  .panel-main { margin-right: 0 !important; }
  .mobile-sidebar-btn { display: flex; }

  /* branches */
  .branches-grid { grid-template-columns: 1fr; }

  /* adv search */
  .adv-grid { grid-template-columns: 1fr 1fr; }

  /* search layout */
  .search-layout { grid-template-columns: 1fr; }
  .filter-box { position: static; }
}

@media (max-width: 768px) {
  .container { padding: 0 14px; }

  /* hero */
  .hero { padding: 40px 0 0; }
  .search-box { padding: 16px; border-radius: 12px; }
  .search-main { grid-template-columns: 1fr; }
  .search-main .btn-search { grid-column: span 1; }
  .hero-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; padding:24px 4px 28px; text-align:center; }
  .hs-n { font-size: 24px; }

  /* props */
  .props-grid { grid-template-columns: 1fr; }

  /* forms */
  .form-grid-2 { grid-template-columns: 1fr; }
  .form-grid-3 { grid-template-columns: 1fr; }

  /* adv search */
  .adv-grid { grid-template-columns: 1fr; }
  .cascade-row { grid-template-columns: 1fr; }

  /* panel */
  .panel-content { padding: 16px; }
  .perf-grid { grid-template-columns: 1fr 1fr; }
  .wishlist-grid { grid-template-columns: 1fr; }

  /* sections */
  .section { padding: 36px 0 !important; }
  h1 { font-size: clamp(22px,5vw,32px) !important; }
  h2 { font-size: clamp(18px,4vw,26px) !important; }

  /* footer */
  .footer-inner { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; text-align: center; gap: 8px; }
}

@media (max-width: 480px) {
  .container { padding: 0 12px; }
  .hero-title { font-size: 24px; }
  .hs-n { font-size: 20px; }
  .hero-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; padding:0 4px 8px; text-align:center; }
  .perf-grid { grid-template-columns: 1fr 1fr; }
  .tab-row { flex-direction: row; }
  .video-phone-frame video,
  .video-phone-frame iframe { width: 180px; }
}
