/* ═══════════════════════════════════════════════════════════
   GOLDEN KEY HOMES — DESIGN SYSTEM v6
   includes/shared.css
   ═══════════════════════════════════════════════════════════ */
:root{
  --gold:#C9A84C;--gold-light:#E8C97A;--gold-dark:#9B7A2E;
  --deep:#0A2260;--deep2:#0D3B8C;--deep3:#1A5276;
  --deepdark:#0D1B2A;--deepdark2:#162033;--deepdark3:#1E2D42;
  --cream:#FAF6EE;--cream2:#F0EAD6;
  --text:#1A1A2E;--muted:#6B7280;
  --green:#16A34A;--red:#DC2626;--blue:#2563EB;--purple:#6750A4;
  --white:#FFFFFF;
  --shadow:0 4px 24px rgba(0,0,0,.12);--radius:12px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--text);overflow-x:hidden;}
h1,h2,h3,h4{font-family:'Playfair Display',serif;}
img,table{max-width:100%;}

/* ── NAV ─────────────────────────────────────────────────── */
.gkh-nav{
  background:var(--deep);height:88px;
  display:grid;grid-template-columns:1fr auto 1fr;
  align-items:center;padding:0 18px;
  position:sticky;top:0;z-index:400;
  box-shadow:0 2px 20px rgba(0,0,0,.4);
  border-bottom:1px solid rgba(201,168,76,.2);
  gap:10px;
}
.nav-left{display:flex;align-items:center;gap:6px;justify-content:flex-start;}
.nav-brand{
  color:var(--gold);text-decoration:none;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;line-height:1.1;gap:2px;
}
/* Logo + name in one row */
.nav-brand-row{
  display:flex;align-items:center;gap:10px;
}
.nav-brand-logo{
  width:100px;height:100px;
  object-fit:contain;
  filter:drop-shadow(0 0 8px rgba(201,168,76,.55));
  flex-shrink:0;
}
.nav-brand-key{font-size:28px;line-height:1;flex-shrink:0;}
/* Text stack: EN large, TA below */
.nav-brand-text{
  display:flex;flex-direction:column;align-items:flex-start;gap:2px;
}
.nav-brand .brand-en{
  font-size:24px;font-weight:900;color:var(--gold);
  font-family:'Playfair Display',serif;letter-spacing:.3px;
  line-height:1;
}
.nav-brand .brand-ta{
  font-size:11px;font-family:'DM Sans',sans-serif;
  font-weight:600;color:var(--gold);
  letter-spacing:1.2px;opacity:.92;
  line-height:1;
}
/* Tagline: full width below */
.nav-brand .brand-tagline{
  font-size:9px;font-family:'DM Sans',sans-serif;font-weight:500;
  color:rgba(201,168,76,.62);letter-spacing:.5px;
  white-space:nowrap;
}
.nav-right{display:flex;align-items:center;gap:7px;justify-content:flex-end;}
.nav-link{background:none;border:none;color:#CBD5E1;font-size:12px;font-weight:500;
  padding:6px 10px;border-radius:8px;cursor:pointer;transition:all .2s;
  font-family:'DM Sans',sans-serif;text-decoration:none;white-space:nowrap;}
.nav-link:hover,.nav-link.active{background:var(--gold);color:var(--deep);font-weight:700;}
.nav-lang-btn{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3);
  color:var(--gold-light);padding:5px 10px;border-radius:20px;
  font-size:11px;font-weight:600;cursor:pointer;
  font-family:'DM Sans',sans-serif;transition:all .2s;white-space:nowrap;}
.nav-lang-btn:hover{background:rgba(201,168,76,.22);color:var(--gold);}
/* Mobile-only compact lang toggle — hidden on desktop */
.nav-lang-mobile-wrap{display:none;}
.nav-lang-mob-btn{
  background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.35);
  color:var(--gold-light);padding:5px 10px;border-radius:16px;
  font-size:11px;font-weight:700;cursor:pointer;
  font-family:'DM Sans',sans-serif;white-space:nowrap;line-height:1.3;
  transition:background .2s;}
.lang-en{color:var(--gold);}
.lang-ta{color:var(--gold-light);}
.nav-login{background:none;border:1px solid rgba(201,168,76,.4);color:var(--gold);
  padding:5px 12px;border-radius:8px;font-size:12px;cursor:pointer;text-decoration:none;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;}
.nav-login:hover{background:rgba(201,168,76,.1);}
.nav-register{background:var(--gold);color:var(--deep);border:none;padding:5px 12px;
  border-radius:8px;font-weight:700;font-size:12px;cursor:pointer;text-decoration:none;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;}
.nav-register:hover{background:var(--gold-light);}
.nav-admin-btn{background:rgba(255,255,255,.06);border:1px solid rgba(201,168,76,.2);
  color:rgba(201,168,76,.7);padding:5px 8px;border-radius:8px;font-size:15px;
  cursor:pointer;text-decoration:none;transition:all .2s;line-height:1;}
.nav-admin-btn:hover{background:rgba(201,168,76,.15);color:var(--gold);}
.profile-wrap{position:relative;}
.profile-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);background:#fff;border-radius:12px;min-width:200px;box-shadow:0 8px 32px rgba(0,0,0,.18);border:1px solid #eee;z-index:8888;overflow:hidden;}
.profile-menu .menu-header{padding:14px 16px;background:var(--deep);color:#fff;border-radius:12px 12px 0 0;}
.profile-menu .menu-header div{font-size:13px;font-weight:700;}
.profile-menu .menu-header .role{font-size:11px;color:var(--gold);text-transform:capitalize;margin-top:2px;}
.ta-text{display:none;}
body.tamil .ta-text{display:inline;}
body.tamil .en-text{display:none;}
.en-text{display:inline;}

/* ── BREADCRUMB ─────────────────────────────────────────── */

.breadcrumb-wrap{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  background:var(--deepdark3);
  padding:8px 18px;
  border-radius:8px;
  border-bottom:1px solid rgba(201,168,76,.12);
}

/* LEFT GROUP */
.breadcrumb-left{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

/* BUTTONS SAME SIZE */
.bc-home-btn,
.bc-back-btn{
  font-size:11px;
  padding:5px 10px;
  border-radius:6px;
  background:rgba(201,168,76,.08);
  color:var(--gold);
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:5px;
  transition:all .2s;
}

.bc-home-btn:hover,
.bc-back-btn:hover{
  background:rgba(201,168,76,.18);
}

/* BREADCRUMB */
.breadcrumb{
  display:flex;
  align-items:center;
  gap:5px;
  flex-wrap:wrap;
  background:var(--deepdark3);
 /* padding:8px 18px; */
  border-bottom:1px solid rgba(201,168,76,.12);
  display:flex;
  align-items:center;
  gap:5px;
  flex-wrap:wrap;
 }


.bc-item{font-size:11px;color:rgba(201,168,76,.55);text-decoration:none;cursor:pointer;transition:color .2s;}
.bc-item:hover{color:var(--gold);}
.bc-sep{font-size:11px;color:rgba(201,168,76,.25);}
.bc-current{font-size:11px;color:var(--gold);font-weight:700;}


/* ── 3-COL LAYOUT — 1 ad card wide each side ─────────────── */
.page-wrap{
  display:grid;
  grid-template-columns:175px 1fr 175px;
  min-height:calc(100vh - 88px);
  align-items:start;
}
.page-wrap > *{min-width:0;}

/* ── AD COLUMN — 1 card shown, rest rotate ──────────────── */
.ad-col{
  width:175px;min-width:175px;
  background:var(--cream);
  display:flex;flex-direction:column;
  padding:6px 6px;gap:8px;
  min-height:calc(100vh - 88px);
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-width:none;
}
.ad-col::-webkit-scrollbar{display:none;}
.ad-col-label{
  font-size:9px;color:var(--gold);text-align:center;
  padding:4px 6px 3px;font-weight:700;text-transform:uppercase;
  letter-spacing:.5px;background:var(--deep3);border-radius:6px;
  margin-bottom:6px;flex-shrink:0;
}

/* ── RICH AD CARD ────────────────────────────────────────── */
.rich-ad-card{
  border-radius:12px;padding:13px 11px 11px;
  position:relative;cursor:pointer;flex-shrink:0;
  min-height:168px;
  display:flex;flex-direction:column;
  align-items:flex-start;gap:5px;
  transition:transform .2s,box-shadow .2s;
  box-shadow:0 2px 12px rgba(0,0,0,.35);
  margin-bottom:0;
  animation:adFadeIn .4s ease;
}
@keyframes adFadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.rich-ad-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.45);}
.rac-img{width:100%;height:56px;border-radius:7px;object-fit:cover;
  background:rgba(255,255,255,.1);margin-bottom:4px;
  display:flex;align-items:center;justify-content:center;
  font-size:11px;color:rgba(255,255,255,.4);font-style:italic;}
.rac-title{font-size:14px;font-weight:800;color:var(--white);
  font-family:'Playfair Display',serif;line-height:1.2;}
.rac-sub{font-size:10px;color:rgba(255,255,255,.7);margin-bottom:4px;}
.rac-cta{border:none;padding:5px 14px;border-radius:20px;
  font-size:11px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;}
.rac-cta:hover{opacity:.88;transform:scale(1.04);}
.rac-wa{position:absolute;bottom:9px;right:9px;width:28px;height:28px;
  border-radius:50%;background:#25D366;display:flex;align-items:center;
  justify-content:center;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.3);z-index:2;}
.rac-wa:hover{background:#1EBE5C;}
.rac-ad-label{position:absolute;bottom:9px;left:9px;
  font-size:9px;color:rgba(255,255,255,.5);font-weight:600;}

/* ── CONTENT COLUMN ─────────────────────────────────────── */
.content-col{overflow-y:auto;min-height:calc(100vh - 88px);}
.center-dark{background:#0A2260;display:flex;flex-direction:column;min-height:calc(100vh - 88px);}
.fw-wrap{max-width:1080px;margin:0 auto;padding:24px 20px;}

/* ── MODULE HERO ─────────────────────────────────────────── */
.module-hero{background:linear-gradient(135deg,var(--deep) 0%,var(--deep3) 70%,#0d221a 100%);
  border-radius:var(--radius);padding:32px 36px;position:relative;overflow:hidden;}
.module-hero::before{content:'';position:absolute;top:-40px;right:-30px;width:200px;height:200px;
  border:2px solid var(--gold-dark);border-radius:50%;opacity:.12;}
.mh-eyebrow{display:inline-flex;align-items:center;gap:6px;background:rgba(201,168,76,.12);
  border:1px solid rgba(201,168,76,.25);color:var(--gold-light);font-size:10px;font-weight:700;
  padding:4px 12px;border-radius:20px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;}
.mh-title{font-size:clamp(1.6rem,2.8vw,2.4rem);color:var(--white);line-height:1.15;margin-bottom:6px;}
.mh-title em{color:var(--gold);font-style:normal;}
.mh-sub{color:#94A3B8;font-size:13px;line-height:1.7;max-width:500px;}
.mh-ta{font-size:10px;color:rgba(201,168,76,.55);margin-top:5px;}
.dark-divider{width:calc(100% - 40px);border:none;border-top:1px solid rgba(201,168,76,.18);margin:0 20px;}

/* ── ROLE BUTTONS ────────────────────────────────────────── */
.role-btns-row{display:flex;gap:32px;justify-content:center;padding:32px 16px;flex-wrap:wrap;}
.role-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;width:220px;height:158px;border-radius:18px;
  border:2px solid var(--gold-dark);background:rgba(255,255,255,.05);
  cursor:pointer;transition:all .28s cubic-bezier(.34,1.56,.64,1);
  box-shadow:0 4px 24px rgba(0,0,0,.35),inset 0 1px 0 rgba(201,168,76,.12);
  font-family:'DM Sans',sans-serif;position:relative;overflow:hidden;
  backdrop-filter:blur(4px);text-decoration:none;}
.role-btn::before{content:'';position:absolute;inset:0;background:var(--gold-dark);
  opacity:0;transition:opacity .28s;border-radius:16px;}
.role-btn::after{content:'';position:absolute;top:0;left:10%;right:10%;height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.role-btn:hover::before{opacity:.15;}
.role-btn:hover{border-color:var(--gold);transform:translateY(-6px);
  box-shadow:0 14px 40px rgba(0,0,0,.5),0 0 28px rgba(201,168,76,.22);}
.rb-icon{font-size:42px;position:relative;transition:transform .28s;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4));}
.role-btn:hover .rb-icon{transform:scale(1.08);}
.rb-title{font-size:20px;font-weight:700;color:var(--gold);font-family:'Playfair Display',serif;position:relative;}
.rb-ta{font-size:10px;color:rgba(201,168,76,.55);position:relative;}
.rb-sub{font-size:11px;color:var(--gold-light);position:relative;opacity:.8;}

/* ── STATS ──────────────────────────────────────────────── */
.stats-row{display:flex;gap:0;justify-content:center;flex-wrap:wrap;padding:18px 20px;}
.stat-sep{width:1px;height:30px;background:rgba(201,168,76,.2);}
.stat-item{display:flex;align-items:center;gap:8px;padding:0 16px;}
.stat-num{font-size:20px;font-weight:700;color:var(--gold);font-family:'Playfair Display',serif;}
.stat-lbl{font-size:10px;color:rgba(201,168,76,.6);line-height:1.5;}

/* ── BUTTONS ─────────────────────────────────────────────── */
.btn-gold{background:var(--gold);color:var(--deep);border:none;padding:10px 22px;border-radius:9px;
  font-weight:700;font-size:13px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .2s;
  text-decoration:none;display:inline-flex;align-items:center;gap:7px;}
.btn-gold:hover{background:var(--gold-light);transform:translateY(-1px);}
.btn-outline{background:none;border:2px solid var(--gold);color:var(--gold);padding:10px 22px;
  border-radius:9px;font-weight:600;font-size:13px;cursor:pointer;font-family:'DM Sans',sans-serif;
  transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;gap:7px;}
.btn-outline:hover{background:var(--gold);color:var(--deep);}
.btn-primary{background:var(--deep);color:var(--gold);border:none;padding:10px 22px;border-radius:9px;
  font-weight:700;font-size:13px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .2s;
  display:inline-flex;align-items:center;gap:7px;}
.btn-primary:hover{background:var(--gold);color:var(--deep);}
.btn-sec{background:none;color:var(--muted);border:1.5px solid #E5E7EB;padding:10px 16px;
  border-radius:9px;font-size:13px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .2s;}
.btn-sec:hover{border-color:var(--gold);color:var(--gold);}
.btn-sm{padding:5px 11px!important;font-size:11px!important;border-radius:6px!important;}
.btn-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}

/* ── SEARCH PANEL X ──────────────────────────────────────── */
.search-panel{background:var(--white);border-radius:var(--radius);padding:18px 20px;
  box-shadow:var(--shadow);margin-bottom:14px;}
.sp-hdr{display:flex;align-items:center;gap:10px;margin-bottom:4px;}
.sp-hdr h3{font-size:15px;color:var(--deep);}
.sp-badge{background:var(--deep);color:var(--gold);font-size:10px;font-weight:700;
  padding:3px 10px;border-radius:20px;letter-spacing:.05em;}
.sp-ta{font-size:11px;color:var(--gold-dark);margin-bottom:12px;}
.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.form-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.form-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.field{display:flex;flex-direction:column;gap:4px;}
.field label{font-size:11px;font-weight:700;color:var(--deep);}
.field label small{color:var(--muted);font-weight:400;font-size:10px;margin-left:3px;}
.field input,.field select,.field textarea{padding:8px 11px;border:1.5px solid #E5E7EB;
  border-radius:8px;font-size:13px;font-family:'DM Sans',sans-serif;
  background:var(--cream);transition:border .2s;}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);background:var(--white);}
.mode-box{background:var(--cream2);border-radius:10px;padding:10px 14px;margin-top:12px;
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.mode-lbl{font-size:12px;font-weight:700;color:var(--deep);}
.mode-btn{display:flex;align-items:center;gap:7px;padding:7px 13px;border-radius:8px;
  border:2px solid #D1D5DB;background:var(--white);cursor:pointer;font-size:12px;
  font-weight:600;transition:all .2s;font-family:'DM Sans',sans-serif;}
.mode-btn.active{border-color:var(--gold);background:var(--gold);color:var(--deep);}

/* ── SMART FILTER W ──────────────────────────────────────── */
.smart-filter-v2{background:var(--white);border-radius:var(--radius);
  padding:16px 18px;box-shadow:var(--shadow);margin-bottom:14px;
  border-left:4px solid var(--gold);}
.sfv2-title{font-size:14px;font-weight:700;color:var(--deep);margin-bottom:2px;
  font-family:'Playfair Display',serif;display:flex;align-items:center;gap:8px;}
.sfv2-badge{background:var(--gold);color:var(--deep);font-size:10px;font-weight:700;
  padding:2px 9px;border-radius:20px;}
.sfv2-ta{font-size:10px;color:var(--gold-dark);margin-bottom:14px;display:block;}
.sfv2-divider{border:none;border-top:1px solid var(--cream2);margin:10px 0;}
.sfv2-label{font-size:10px;font-weight:700;color:var(--deep);text-transform:uppercase;
  letter-spacing:.05em;margin-bottom:6px;display:block;}
.sfv2-label small{color:var(--muted);font-weight:400;font-size:9px;margin-left:4px;}
.sfv2-select,.sfv2-input{width:100%;padding:8px 10px;border:1.5px solid #E5E7EB;border-radius:7px;
  font-size:12px;font-family:'DM Sans',sans-serif;background:var(--cream);
  outline:none;transition:border .2s;}
.sfv2-select:focus,.sfv2-input:focus{border-color:var(--gold);}
.sfv2-2col{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.chk-row{display:flex;flex-direction:column;gap:6px;}
.chk-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--deep);cursor:pointer;}
.chk-item input[type=checkbox],.chk-item input[type=radio]{accent-color:var(--gold);width:14px;height:14px;flex-shrink:0;}
.other-field{display:none;margin-top:7px;}
.other-field.show{display:block;}
.other-field input{width:100%;padding:7px 10px;border:1.5px solid var(--gold);
  border-radius:7px;font-size:12px;font-family:'DM Sans',sans-serif;}
.sfv2-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px;padding-top:12px;
  border-top:1px solid var(--cream2);}

/* ── FILTER CHIPS ────────────────────────────────────────── */
.filter-summary{background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.22);
  border-radius:var(--radius);padding:11px 16px;margin-bottom:14px;}
.fs-title{font-size:11px;font-weight:700;color:var(--gold);text-transform:uppercase;
  letter-spacing:.06em;margin-bottom:8px;}
.fs-chips{display:flex;gap:7px;flex-wrap:wrap;}
.fs-chip{background:var(--deep);color:var(--gold);font-size:11px;padding:4px 10px;
  border-radius:20px;display:flex;align-items:center;gap:5px;}
.fs-chip button{background:none;border:none;color:var(--gold-light);cursor:pointer;font-size:13px;line-height:1;}

/* ── LISTING TABLE V2 ────────────────────────────────────── */
.listing-v2{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);
  overflow:hidden;margin-bottom:14px;}
.listing-v2 table{width:100%;border-collapse:collapse;min-width:800px;}
.listing-v2 th{background:var(--deep);color:var(--gold);font-size:11px;font-weight:700;
  padding:10px 11px;text-align:left;letter-spacing:.4px;white-space:nowrap;}
.listing-v2 td{padding:10px 11px;font-size:12px;border-bottom:1px solid #F3F4F6;vertical-align:middle;}
.listing-v2 tr:hover td{background:#FAFBFF;}
.listing-v2 tr:last-child td{border-bottom:none;}
.lv2-name{font-weight:700;color:var(--deep);}
.lv2-phone{font-size:11px;color:var(--blue);margin-top:2px;font-weight:600;}
.lv2-sub{font-size:10px;color:var(--muted);margin-top:2px;}
.lv2-price{font-weight:700;color:var(--gold);font-family:'Playfair Display',serif;font-size:13px;}
.lv2-pts{display:inline-flex;align-items:center;gap:3px;
  background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.25);
  color:var(--gold-dark);font-size:10px;font-weight:700;
  padding:3px 8px;border-radius:20px;white-space:nowrap;}
.lv2-pts.hi{background:var(--gold);color:var(--deep);}
.lv2-pts.zero{opacity:.4;background:none;border-color:#ddd;color:var(--muted);}
.sbadge{display:inline-block;padding:3px 9px;border-radius:20px;font-size:10px;font-weight:700;}
.sb-sale{background:#FEF9C3;color:#854D0E;}
.sb-rent{background:#DBEAFE;color:var(--blue);}
.sb-free{background:#DCFCE7;color:var(--green);}
/* Photo thumbnail — clickable */
.lv2-photo{
  width:54px;height:54px;border-radius:8px;
  background:linear-gradient(135deg,var(--deep3),#1a3a2a);
  display:flex;align-items:center;justify-content:center;font-size:24px;
  cursor:pointer;transition:transform .2s,box-shadow .2s;
  border:2px solid transparent;
}
.lv2-photo:hover{transform:scale(1.08);box-shadow:0 4px 12px rgba(0,0,0,.3);border-color:var(--gold);}
.view-prop-btn{background:none;border:1.5px solid var(--gold-dark);color:var(--gold-dark);
  padding:5px 10px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;
  font-family:'DM Sans',sans-serif;white-space:nowrap;}
.view-prop-btn:hover{background:var(--gold);color:var(--deep);border-color:var(--gold);}
.list-head{padding:12px 16px;border-bottom:2px solid var(--cream2);display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.list-head h3{font-size:15px;color:var(--deep);}
.list-head small{font-size:11px;color:var(--muted);}
.list-cnt{margin-left:auto;font-size:11px;background:var(--gold);color:var(--deep);padding:2px 10px;border-radius:20px;font-weight:700;}
.tbl-scroll{overflow-x:auto;}

/* ── POINTS LEGEND ───────────────────────────────────────── */
.pts-legend{background:rgba(201,168,76,.07);border:1px solid rgba(201,168,76,.18);
  border-radius:var(--radius);padding:9px 14px;margin-bottom:12px;
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--muted);}
.pts-legend strong{color:var(--gold);}

/* ── PAGINATION ──────────────────────────────────────────── */
.pagination{display:flex;gap:5px;justify-content:center;margin-top:16px;}
.pg-btn{background:var(--white);border:1.5px solid #E5E7EB;color:var(--muted);
  padding:6px 13px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;
  font-family:'DM Sans',sans-serif;transition:all .2s;}
.pg-btn.active{background:var(--deep);color:var(--gold);border-color:var(--deep);}
.pg-btn:hover:not(.active){border-color:var(--gold);color:var(--gold);}

/* ── POST FORM ───────────────────────────────────────────── */
.post-form{background:var(--white);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow);}
.form-section{margin-bottom:16px;}
.form-section h4{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;
  letter-spacing:1px;margin-bottom:9px;padding-bottom:5px;border-bottom:1px solid var(--cream2);}
.photo-zone{border:2px dashed var(--gold-dark);border-radius:10px;
  padding:22px;background:var(--cream);text-align:center;cursor:pointer;transition:border .2s;}
.photo-zone:hover{border-color:var(--gold);}
.bid-section{background:linear-gradient(135deg,var(--deep),var(--deep3));
  border-radius:10px;padding:18px;margin-top:14px;}
.bid-section h4{color:var(--gold);font-size:13px;margin-bottom:5px;}
.bid-section p{color:#94A3B8;font-size:11px;margin-bottom:12px;line-height:1.6;}
.bid-opts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:12px;}
.bid-opt{background:var(--deep3);border:2px solid var(--deep3);border-radius:8px;
  padding:10px;text-align:center;cursor:pointer;transition:all .2s;}
.bid-opt:hover,.bid-opt.sel{border-color:var(--gold);}
.bid-opt .amt{font-size:14px;font-weight:700;color:var(--gold);font-family:'Playfair Display',serif;}
.bid-opt .pos{font-size:9px;color:#94A3B8;margin-top:3px;}
.bid-opt .dur{font-size:9px;color:#64748B;}

/* ── MODAL (property detail) ─────────────────────────────── */
.modal-overlay{position:fixed;inset:0;z-index:2000;background:rgba(13,27,42,.88);
  backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;
  padding:20px;opacity:0;pointer-events:none;transition:opacity .3s;}
.modal-overlay.open{opacity:1;pointer-events:all;}
.modal-box{background:var(--white);border-radius:16px;max-width:820px;width:100%;
  max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px rgba(0,0,0,.5);}
.modal-hero{height:220px;background:linear-gradient(135deg,var(--deep),var(--deep3));
  display:flex;align-items:center;justify-content:center;font-size:72px;
  position:relative;border-radius:16px 16px 0 0;}
.modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;
  background:rgba(255,255,255,.15);border-radius:50%;display:flex;align-items:center;
  justify-content:center;cursor:pointer;color:var(--white);font-size:1rem;border:none;}
.modal-body{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;padding:22px;}
.modal-gallery{margin-bottom:16px;}
.modal-gallery-main{width:100%;height:260px;object-fit:cover;border-radius:16px;background:#f4f4f6;display:block;}
.gallery-thumbs{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;}
.gallery-thumb{border:0;background:none;padding:0;cursor:pointer;border-radius:12px;overflow:hidden;box-shadow:0 0 0 2px transparent;transition:all .2s;}
.gallery-thumb.active{box-shadow:0 0 0 2px var(--gold);}
.gallery-thumb img{width:70px;height:48px;object-fit:cover;display:block;}
.modal-notes{background:var(--cream);border-radius:12px;padding:12px;font-size:12px;color:var(--deep);margin-top:14px;line-height:1.6;display:none;}
.modal-notes.show{display:block;}
.modal-price{font-family:'Playfair Display',serif;font-size:1.9rem;font-weight:700;color:var(--deep);}
.modal-loc{font-size:13px;color:var(--muted);margin:6px 0 14px;display:flex;align-items:center;gap:4px;}
.spec-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:16px;}
.sg{background:var(--cream);border-radius:var(--radius);padding:10px;}
.sg-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;}
.sg-val{font-weight:700;color:var(--deep);margin-top:3px;font-size:13px;}
.contact-card{background:var(--cream);border-radius:var(--radius);padding:18px;}
.cc-title{font-weight:700;color:var(--deep);margin-bottom:12px;}
.owner-row{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:10px;
  background:var(--white);border-radius:var(--radius);}
.ow-av{width:40px;height:40px;border-radius:50%;background:var(--deep);display:flex;
  align-items:center;justify-content:center;color:var(--gold);font-weight:800;font-size:14px;}
.ow-nm{font-weight:700;color:var(--deep);font-size:13px;}
.ow-tp{font-size:10px;color:var(--muted);}
.cc-acts{display:flex;flex-direction:column;gap:7px;}
.cc-acts .btn-gold,.cc-acts .btn-primary,.cc-acts .btn-outline{justify-content:center;padding:10px;}

/* ── SIDEBAR LAYOUT (admin/dashboard — NO ads) ───────────── */
.sidebar-layout{display:flex;min-height:calc(100vh - 88px);}
.sidebar{width:220px;background:var(--deep);padding:14px 0;flex-shrink:0;
  position:sticky;top:88px;height:calc(100vh - 88px);overflow-y:auto;}
.sb-user{padding:12px 16px 14px;border-bottom:1px solid var(--deep3);text-align:center;}
.sb-av{width:44px;height:44px;border-radius:50%;background:var(--gold);display:flex;
  align-items:center;justify-content:center;font-weight:700;font-size:17px;
  color:var(--deep);margin:0 auto 7px;}
.sb-name{color:var(--white);font-size:12px;font-weight:700;}
.sb-role{color:#475569;font-size:10px;}
.sb-nav{padding:8px 0;}
.sb-item{display:flex;align-items:center;gap:9px;padding:9px 16px;color:#94A3B8;
  font-size:12px;cursor:pointer;transition:all .2s;border-left:3px solid transparent;text-decoration:none;}
.sb-item:hover{background:rgba(255,255,255,.05);color:var(--white);}
.sb-item.active{background:rgba(201,168,76,.1);color:var(--gold);border-left-color:var(--gold);}
.dash-main{flex:1;padding:22px;background:var(--cream);overflow-y:auto;}
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;}
.kpi-card{background:var(--white);border-radius:var(--radius);padding:15px;box-shadow:var(--shadow);border-left:4px solid var(--gold);}
.kpi-card.blue{border-color:var(--blue);}
.kpi-card.green{border-color:var(--green);}
.kpi-card.amber{border-color:#F59E0B;}
.kpi-card.red{border-color:var(--red);}
.kpi-num{font-size:1.8rem;font-weight:700;font-family:'Playfair Display',serif;color:var(--deep);}
.kpi-lbl{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:7px;}
.kpi-trend{font-size:10px;margin-top:3px;color:var(--green);}

/* ── TOAST ───────────────────────────────────────────────── */
.toast{position:fixed;bottom:80px;right:24px;z-index:9999;background:var(--deep);color:var(--gold);
  padding:11px 20px;border-radius:var(--radius);border-left:3px solid var(--gold);
  box-shadow:0 8px 32px rgba(0,0,0,.4);font-size:13px;transform:translateY(100px);
  opacity:0;transition:all .3s;pointer-events:none;}
.toast.show{transform:translateY(0);opacity:1;}

/* ── GO TO TOP ───────────────────────────────────────────── */
#gotoTop{position:fixed;bottom:24px;right:24px;width:42px;height:42px;
  background:var(--deep);border:2px solid var(--gold);color:var(--gold);
  border-radius:50%;font-size:18px;cursor:pointer;
  display:none;align-items:center;justify-content:center;
  z-index:888;box-shadow:0 4px 16px rgba(0,0,0,.3);transition:all .2s;}
#gotoTop:hover{background:var(--gold);color:var(--deep);}
#gotoTop.visible{display:flex;}

/* ── ROTATE OVERLAY ──────────────────────────────────────── */
#rotate-overlay{display:none;position:fixed;inset:0;z-index:9998;
  background:rgba(13,27,42,.96);flex-direction:column;align-items:center;
  justify-content:center;text-align:center;padding:32px;}
#rotate-overlay .ro-icon{font-size:52px;margin-bottom:18px;
  animation:spin90 1.4s ease-in-out infinite alternate;}
@keyframes spin90{from{transform:rotate(0deg)}to{transform:rotate(90deg)}}
#rotate-overlay .ro-title{font-family:'Playfair Display',serif;font-size:1.3rem;color:var(--gold);margin-bottom:8px;}
#rotate-overlay .ro-sub{font-size:13px;color:#94A3B8;line-height:1.7;max-width:280px;}
#rotate-overlay .ro-close{margin-top:22px;background:var(--gold);color:var(--deep);border:none;
  padding:9px 24px;border-radius:9px;font-weight:700;font-size:13px;cursor:pointer;font-family:'DM Sans',sans-serif;}

/* ── FOOTER ──────────────────────────────────────────────── */
.gkh-footer{background:var(--deep);color:#64748B;text-align:center;
  padding:14px;font-size:11px;border-top:1px solid rgba(201,168,76,.15);}
.gkh-footer span{color:var(--gold);}

/* ══════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════ */
/* Landscape mobile */
@media screen and (max-width:960px) and (orientation:landscape){
  .page-wrap{grid-template-columns:130px 1fr 130px;min-height:calc(100vh - 52px);}
  .ad-col{width:130px;min-width:130px;min-height:calc(100vh - 52px);}
  .rac-title{font-size:12px;} .rac-sub{font-size:9px;} .rac-cta{font-size:10px;padding:4px 10px;}
  .rich-ad-card{min-height:140px;padding:9px 8px;}
  .gkh-nav{height:52px!important;padding:0 10px;}
  .content-col,.center-dark{min-height:calc(100vh - 52px);}
  .role-btns-row{gap:18px;padding:16px 10px;}
  .role-btn{width:145px;height:112px;}
  .rb-icon{font-size:28px;} .rb-title{font-size:14px;}
  .module-hero{padding:14px 18px;} .mh-title{font-size:1.3rem;}
  .stats-row{padding:10px 12px;} .stat-num{font-size:15px;}
  .nav-brand .brand-en{font-size:14px;}
  .sidebar{position:relative;top:0;height:auto;}
}
/* Portrait mobile — hide ads */
@media screen and (max-width:960px) and (orientation:portrait){
  .page-wrap{grid-template-columns:1fr;min-height:calc(100vh - 58px);}
  .ad-col{display:none!important;}
  .gkh-nav{height:58px;padding:0 12px;}
  .content-col,.center-dark{min-height:calc(100vh - 58px);width:100%;}
  .module-hero{padding:20px 16px;border-radius:0;} .mh-title{font-size:clamp(1.4rem,6vw,1.9rem);}
  .role-btns-row{gap:14px;padding:22px 12px;}
  .role-btn{width:155px;height:126px;} .rb-icon{font-size:34px;} .rb-title{font-size:17px;}
  .stats-row{padding:14px 14px;flex-wrap:wrap;}
  .fw-wrap{padding:16px 12px;}
  .form-grid{grid-template-columns:repeat(2,1fr);}
  .kpi-grid{grid-template-columns:repeat(2,1fr);}
  .modal-body{grid-template-columns:1fr;}
  .nav-brand .brand-tagline{display:none;}
}
@media(max-width:700px){
  .form-grid,.form-grid-4{grid-template-columns:repeat(2,1fr);}
  .kpi-grid{grid-template-columns:repeat(2,1fr);}
  .sidebar{width:46px;} .sb-user,.sb-name,.sb-role{display:none;}
  .sb-item span:last-child{display:none;} .sb-item{justify-content:center;}
}
@media(max-width:480px) and (orientation:portrait){
  .form-grid,.form-grid-2,.form-grid-4,.bid-opts{grid-template-columns:1fr;}
  .role-btn{width:138px;height:116px;}
  .btn-row{flex-direction:column;} .btn-row>*{width:100%;}
  .kpi-grid{grid-template-columns:1fr 1fr;}
  .sfv2-2col{grid-template-columns:1fr;}
}

/* ════════════════════════════════════════════════════════════
   GKH PROMO BANNER ROWS — index page only
   3-col: Tamil sq (175px) | Long centre | English sq (175px)
   ════════════════════════════════════════════════════════════ */
.gkh-banner-row{
  display:grid;
  grid-template-columns:175px 1fr 175px;
  width:100%;overflow:hidden;flex-shrink:0;
  align-items:stretch;
}
.br-sq{overflow:hidden;flex-shrink:0;display:flex;align-items:stretch;}
.br-sq img{
  width:175px;height:100%;min-height:40px;
  object-fit:cover;object-position:top center;
  display:block;cursor:pointer;transition:opacity .2s;
}
.br-sq img:hover{opacity:.9;}
.br-long{display:flex;align-items:stretch;}
.br-long > *{width:100%;}

/* Long centre promo banner */
.gkh-promo-banner{
  background:linear-gradient(135deg,#0d3b8c 0%,#0a2260 45%,#091d55 100%);
  position:relative;display:flex;flex-direction:column;
  justify-content:center;padding:22px 105px 50px 28px;
  overflow:hidden;font-family:'DM Sans',sans-serif;min-height:220px;
}
.gkh-promo-banner::before{
  content:'';position:absolute;top:-60px;right:-60px;
  width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,215,0,.08) 0%,transparent 70%);
}
.gkh-gold-line{
  position:absolute;top:11px;left:0;right:0;height:1.5px;
  background:linear-gradient(90deg,transparent,rgba(255,215,0,.35),transparent);
}
.gkh-logo-tr{
  position:absolute;top:10px;right:10px;
  width:188px;height:188px;object-fit:contain;
  filter:drop-shadow(0 4px 12px rgba(255,215,0,.4));
  animation:gkh-float 3s ease-in-out infinite;z-index:5;
}
@keyframes gkh-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.gkh-tagline{
  font-size:10px;font-weight:700;letter-spacing:3px;
  text-transform:uppercase;color:rgba(255,255,255,.6);
  margin-bottom:5px;position:relative;z-index:1;
}
.gkh-headline{
  font-size:23px;font-weight:900;color:#fff;
  line-height:1.18;margin-bottom:9px;
  text-shadow:0 2px 10px rgba(0,0,0,.35);
  font-family:'Playfair Display',serif;position:relative;z-index:1;
}
.gkh-headline .gh-gold{color:#ffd700;font-style:italic;}
.gkh-emi-pill{
  display:inline-flex;align-items:center;gap:5px;
  background:linear-gradient(90deg,#c0392b,#e74c3c);
  color:#fff;font-size:11px;font-weight:900;
  padding:6px 15px;border-radius:4px;
  letter-spacing:.6px;text-transform:uppercase;
  margin-bottom:11px;
  box-shadow:0 4px 16px rgba(192,57,43,.45);
  position:relative;z-index:1;width:fit-content;
}
.gkh-emi-pill .gr{font-size:14px;color:#ffd700;}
.gkh-features{
  display:flex;flex-wrap:wrap;gap:4px 14px;
  margin-bottom:8px;position:relative;z-index:1;
}
.gkh-feat{
  font-size:10.5px;color:rgba(255,255,255,.87);
  display:flex;align-items:center;gap:4px;font-weight:600;
}
.gkh-feat::before{content:'◆';color:#ffd700;font-size:8px;}
.gkh-invest{
  font-style:italic;font-size:10px;
  color:rgba(255,215,0,.72);font-weight:600;
  letter-spacing:.8px;position:relative;z-index:1;
}
.gkh-footer-strip{
  position:absolute;bottom:0;left:0;right:0;height:32px;
  background:linear-gradient(90deg,#ffd700,#f4a000,#ffd700);
  display:flex;align-items:center;justify-content:center;z-index:5;
}
.gkh-footer-strip span{
  font-size:11.5px;font-weight:900;
  color:#0a2260;letter-spacing:.8px;text-transform:uppercase;
}
/* Tamil banner overrides */
.gkh-promo-banner.ta .gkh-headline{
  font-family:'Noto Sans Tamil',sans-serif;font-size:19px;
}
.gkh-promo-banner.ta .gkh-tagline,
.gkh-promo-banner.ta .gkh-emi-pill,
.gkh-promo-banner.ta .gkh-feat,
.gkh-promo-banner.ta .gkh-invest,
.gkh-promo-banner.ta .gkh-footer-strip span{
  font-family:'Noto Sans Tamil',sans-serif;
}
.gkh-promo-banner.ta .gkh-feat{font-size:11.5px;}
/* Gold separator between sections */
.gkh-sep{
  height:3px;width:100%;flex-shrink:0;
  background:linear-gradient(90deg,#0a2260,rgba(255,215,0,.55),#0a2260);
}
/* Responsive */
@media(max-width:700px){
  .gkh-banner-row{grid-template-columns:1fr;}
  .br-sq{display:none;}
  .gkh-logo-tr{width:62px;height:62px;}
  .gkh-promo-banner{padding:15px 78px 42px 15px;}
  .gkh-headline{font-size:18px;}
  .gkh-promo-banner.ta .gkh-headline{font-size:16px;}
}

/* ════════════════════════════════════════════════════════════
   BANNER COMPONENT CSS — for banner-en.html / banner-ta.html
   (used when these components are included as PHP includes)
   ════════════════════════════════════════════════════════════ */
.gkh-banner-left{
  width:190px;flex-shrink:0;
  background:linear-gradient(160deg,#0a2d6e 0%,#0d1f4a 100%);
  display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:9px;padding:20px 14px;
  position:relative;border-right:2px solid rgba(255,215,0,.25);
}
.gkh-banner-left::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 50% 0%,rgba(255,215,0,.1) 0%,transparent 70%);
}
.gkh-banner-logo{
  width:72px;height:72px;object-fit:contain;
  filter:drop-shadow(0 0 8px rgba(255,215,0,.45));
  animation:gkh-float 3s ease-in-out infinite;
  position:relative;z-index:1;
}
.gkh-brand-sub{
  font-size:9px;color:rgba(255,255,255,.5);
  letter-spacing:2px;text-transform:uppercase;
  text-align:center;position:relative;z-index:1;
}
.gkh-no-broker{
  background:linear-gradient(135deg,#c0392b,#e74c3c);
  color:#fff;font-size:8.5px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;
  padding:5px 9px;border-radius:18px;
  text-align:center;line-height:1.6;
  border:1px solid rgba(255,255,255,.2);
  box-shadow:0 4px 12px rgba(192,57,43,.45);
  position:relative;z-index:1;
}
.gkh-phone-block{text-align:center;position:relative;z-index:1;}
.gkh-phone-lbl{font-size:8px;color:rgba(255,255,255,.45);letter-spacing:2px;text-transform:uppercase;margin-bottom:3px;}
.gkh-phone-num{font-size:11.5px;font-weight:700;color:#ffd700;line-height:1.8;letter-spacing:.4px;}
.gkh-banner-main{
  flex:1;
  background:linear-gradient(135deg,#0d3b8c 0%,#0a2260 40%,#0d1f4a 100%);
  position:relative;display:flex;flex-direction:column;
  justify-content:center;padding:22px 105px 50px 26px;overflow:hidden;
}
.gkh-banner-main::before{
  content:'';position:absolute;top:-60px;right:-60px;
  width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,215,0,.07) 0%,transparent 70%);
}
/* Tamil overrides for full component */
.gkh-promo-banner.ta .gkh-no-broker,
.gkh-promo-banner.ta .gkh-phone-lbl,
.gkh-promo-banner.ta .gkh-brand-sub{font-family:'Noto Sans Tamil',sans-serif;}

/* ════════════════════════════════════════════════════════════
   SQ MINI CARD — 175px wide HTML card replacing jpg squares
   ════════════════════════════════════════════════════════════ */
.br-sq-card{
  width:175px;
  background:linear-gradient(160deg,#8B0000 0%,#B22222 40%,#c0392b 100%);
  display:flex;flex-direction:column;
  align-items:center;justify-content:flex-start;
  padding:14px 10px 10px;
  position:relative;overflow:hidden;
  cursor:pointer;transition:opacity .2s;
  font-family:'DM Sans',sans-serif;
  height:100%;min-height:40px;
}
.br-sq-card::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 50% 0%,rgba(255,215,0,.12) 0%,transparent 65%);
}
.br-sq-card:hover{opacity:.92;}
.br-sq-card .sq-logo{
  width:56px;height:56px;object-fit:contain;
  filter:drop-shadow(0 0 8px rgba(255,215,0,.5));
  animation:gkh-float 3s ease-in-out infinite;
  position:relative;z-index:1;margin-bottom:6px;
}
.br-sq-card .sq-brand{
  font-size:10px;font-weight:900;color:#ffd700;
  font-family:'Playfair Display',serif;
  text-align:center;line-height:1.2;
  position:relative;z-index:1;margin-bottom:2px;
}
.br-sq-card .sq-sub{
  font-size:7.5px;color:rgba(255,255,255,.6);
  letter-spacing:1.5px;text-transform:uppercase;
  text-align:center;position:relative;z-index:1;margin-bottom:8px;
}
.br-sq-card .sq-headline{
  font-size:12px;font-weight:900;color:#fff;
  text-align:center;line-height:1.3;
  text-shadow:0 1px 6px rgba(0,0,0,.4);
  position:relative;z-index:1;margin-bottom:6px;
}
.br-sq-card .sq-headline .sq-gold{color:#ffd700;font-style:italic;}
.br-sq-card .sq-pill{
  background:linear-gradient(90deg,#ffd700,#f4a000);
  color:#0a2260;font-size:8px;font-weight:900;
  padding:4px 8px;border-radius:3px;
  letter-spacing:.5px;text-transform:uppercase;
  margin-bottom:8px;text-align:center;width:100%;
  position:relative;z-index:1;
}
.br-sq-card .sq-feats{
  display:flex;flex-direction:column;gap:3px;
  width:100%;position:relative;z-index:1;margin-bottom:6px;
}
.br-sq-card .sq-feat{
  font-size:8px;color:rgba(255,255,255,.88);
  display:flex;align-items:center;gap:4px;font-weight:600;
}
.br-sq-card .sq-feat::before{content:'◆';color:#ffd700;font-size:6px;}
.br-sq-card .sq-phone-strip{
  position:absolute;bottom:0;left:0;right:0;
  background:linear-gradient(90deg,#ffd700,#f4a000,#ffd700);
  padding:4px 6px;text-align:center;
}
.br-sq-card .sq-phone{
  font-size:8px;font-weight:900;color:#0a2260;
  letter-spacing:.3px;
}
/* Tamil sq card */
.br-sq-card.ta .sq-headline,
.br-sq-card.ta .sq-pill,
.br-sq-card.ta .sq-feat,
.br-sq-card.ta .sq-brand{font-family:'Noto Sans Tamil',sans-serif;}
.br-sq-card.ta .sq-headline{font-size:11px;}
.br-sq-card.ta .sq-feat{font-size:7.5px;}

/* English sq card - blue */
.br-sq-card.en{
  background:linear-gradient(160deg,#0d3b8c 0%,#0a2260 50%,#091d55 100%);
}

/* ── NAV LOGIN/REGISTER — ensure visibility on blue nav ── */
.nav-login{
  background:none;
  border:1.5px solid rgba(255,215,0,.6);
  color:var(--gold);
  padding:6px 14px;border-radius:8px;
  font-size:12px;font-weight:600;
  cursor:pointer;text-decoration:none;
  transition:all .2s;white-space:nowrap;
}
.nav-login:hover{background:rgba(201,168,76,.12);border-color:var(--gold);}
.nav-register{
  background:var(--gold);color:#0A2260;
  border:none;padding:6px 14px;
  border-radius:8px;font-weight:800;
  font-size:12px;cursor:pointer;
  text-decoration:none;transition:all .2s;
  white-space:nowrap;
  box-shadow:0 2px 8px rgba(201,168,76,.4);
}
.nav-register:hover{background:var(--gold-light);transform:translateY(-1px);}



/* ================================================================
   LANGUAGE TOGGLE — Server-side Tamil (default) / English
   html has data-lang='ta' or data-lang='en'
   .t-ta shown in Tamil mode, hidden in English
   .t-en hidden in Tamil mode, shown in English
   body.lang-ta = Tamil mode (default)
   body.lang-en = English mode
================================================================ */
.t-ta { display: inline; }
.t-en { display: none; }
body.lang-en .t-ta { display: none; }
body.lang-en .t-en { display: inline; }

/* Block-level variants */
.t-ta-block { display: block; }
.t-en-block { display: none; }
body.lang-en .t-ta-block { display: none; }
body.lang-en .t-en-block { display: block; }

/* Keep old ta-text/en-text for backward compat */
.ta-text { display: inline; }
.en-text { display: none; }
body.lang-en .ta-text { display: none; }
body.lang-en .en-text { display: inline; }
.mh-ta { display: block; }
body.lang-en .mh-ta { display: none; }

/* ── FORM VALIDATION ────────────────────────────────────────── */
.field-wrap { position:relative; margin-bottom:14px; }
.field-wrap label { display:block; font-size:11px; font-weight:700; text-transform:uppercase;
  letter-spacing:.06em; color:var(--muted); margin-bottom:5px; }
.field-wrap label .req { color:#DC2626; margin-left:2px; }
.gkh-input {
  width:100%; padding:10px 13px; border:2px solid #E5E7EB; border-radius:8px;
  font-family:'DM Sans',sans-serif; font-size:14px; color:var(--text);
  background:#FAFAFA; outline:none; transition:border-color .2s, background .2s;
}
.gkh-input:focus { border-color:var(--deep2); background:#fff; }
.gkh-input.field-ok   { border-color:#16A34A !important; background:#F0FDF4 !important; }
.gkh-input.field-err  { border-color:#DC2626 !important; background:#FEF2F2 !important; }
.field-msg { font-size:11px; margin-top:4px; display:none; font-weight:600; }
.field-msg.show-ok  { display:block; color:#16A34A; }
.field-msg.show-err { display:block; color:#DC2626; }
.field-icon { position:absolute; right:12px; top:34px; font-size:14px; }

/* ══════════════════════════════════════════════════════════
   MOBILE RESPONSIVE v2 — Hamburger Nav + Comprehensive Fixes
   ══════════════════════════════════════════════════════════ */

/* ── LISTING TABLE — allow horizontal scroll ─────────────── */
.listing-v2 { overflow-x:auto; }
.listing-v2 table { min-width:600px; }

/* ── MODAL — viewport-relative width ────────────────────── */
.modal-box { width:min(820px,calc(100vw - 24px)); }
@media(max-width:600px){
  .modal-body  { grid-template-columns:1fr; padding:14px; }
  .spec-grid   { grid-template-columns:1fr 1fr; }
  .modal-hero  { height:150px; font-size:48px; }
}

/* ── PROFILE DROPDOWN — prevent off-screen ───────────────── */
#gkhProfileMenu { max-width:min(210px,95vw); }

/* ── BANNER — reduce right padding on small screens ─────── */
@media(max-width:640px){
  .gkh-promo-banner { padding:14px 62px 40px 14px; }
  .gkh-logo-tr      { width:54px;height:54px;top:8px;right:8px; }
  .gkh-headline     { font-size:17px; }
  .gkh-promo-banner.ta .gkh-headline { font-size:15px; }
}
@media(max-width:400px){
  .gkh-promo-banner { padding:12px 56px 38px 12px; }
  .gkh-logo-tr      { width:46px;height:46px; }
}

/* ── AUTH PAGES ──────────────────────────────────────────── */
.auth-outer { padding:clamp(16px,4vh,40px) 16px; }
.auth-card  { padding:clamp(18px,4vw,36px); }

/* ── TOUCH TARGETS — min 44px on mobile ─────────────────── */
@media(max-width:960px){
  .btn-gold,.btn-primary,.btn-outline,.btn-sec { min-height:44px; }
  .field input,.field select,.field textarea { min-height:44px; }
  .nav-login,.nav-register { min-height:36px; display:inline-flex; align-items:center; }
  .area-unit-row { width:100%; align-items:stretch; }
  .area-unit-row input[type="number"] { flex:1 1 auto !important; min-width:0; width:100%; }
  .area-unit-row select { flex:0 0 112px; width:112px !important; }
}

@media(max-width:380px){
  .area-unit-row { gap:6px !important; }
  .area-unit-row select { flex-basis:104px; width:104px !important; padding-left:7px; padding-right:7px; }
}

/* ── ROLE BUTTONS — 2-per-row on very small phones ──────── */
@media(max-width:380px) and (orientation:portrait){
  .role-btns-row { gap:10px;padding:16px 8px; }
  .role-btn      { width:calc(50vw - 22px);height:108px; }
  .rb-icon       { font-size:26px; }
  .rb-title      { font-size:13px; }
}

/* ── HAMBURGER NAV ───────────────────────────────────────── */
.nav-ham{
  display:none;
  background:none;
  border:1.5px solid rgba(201,168,76,.4);
  color:var(--gold);
  padding:7px 10px;
  border-radius:8px;
  font-size:20px;
  cursor:pointer;
  line-height:1;
  flex-shrink:0;
  transition:background .2s;
}
.nav-ham:hover,.nav-ham.open{ background:rgba(201,168,76,.14); }

/* Mobile slide-down drawer */
.nav-drawer{
  display:none;
  flex-direction:column;
  background:var(--deep);
  border-top:1px solid rgba(201,168,76,.12);
  position:sticky;
  top:52px;
  z-index:399;
  box-shadow:0 8px 28px rgba(0,0,0,.5);
  max-height:calc(100vh - 52px);
  overflow-y:auto;
}
.nav-drawer.open{ display:flex; }

.nd-user-hdr{
  padding:14px 20px 12px;
  background:rgba(201,168,76,.06);
  border-bottom:1px solid rgba(201,168,76,.14);
}
.nd-user-name{ font-size:14px;font-weight:700;color:var(--white); }
.nd-user-role{ font-size:11px;color:var(--gold);text-transform:capitalize;margin-top:2px; }

.nd-item{
  display:flex;align-items:center;gap:12px;
  padding:14px 20px;
  color:#CBD5E1;font-size:14px;font-weight:600;
  text-decoration:none;border:none;background:none;
  cursor:pointer;font-family:'DM Sans',sans-serif;
  border-bottom:1px solid rgba(255,255,255,.05);
  width:100%;text-align:left;
  transition:background .15s;
}
.nd-item:hover   { background:rgba(255,255,255,.07);color:var(--gold); }
.nd-item.nd-gold { color:var(--gold);font-weight:700; }
.nd-item.nd-red  { color:#fca5a5; }
.nd-divider      { height:1px;background:rgba(201,168,76,.15);margin:3px 0;flex-shrink:0; }

/* ── SHOW HAMBURGER ON SMALL SCREENS ────────────────────── */
@media(max-width:640px){
  /* Switch from 3-col grid to flex so brand goes left, controls go right */
  .gkh-nav                   { display:flex!important;justify-content:space-between!important;
                                align-items:center!important;height:52px!important;
                                padding:0 10px!important;gap:6px!important; }
  /* Brand: allow shrinking on very small screens */
  .gkh-nav .nav-brand        { flex:1 1 0;min-width:0;overflow:hidden; }
  /* Right cluster: never shrink — keep lang + hamburger visible */
  .gkh-nav .nav-right        { flex-shrink:0; }
  /* Show hamburger, show mobile lang toggle */
  .nav-ham                   { display:flex!important;align-items:center; }
  .nav-lang-mobile-wrap      { display:flex!important;align-items:center; }
  /* Hide desktop-only nav items */
  .nav-left                  { display:none!important; }
  #gkhProfileWrap,
  .nav-right > span,
  .nav-login,
  .nav-register              { display:none!important; }
  /* Brand sizing */
  .nav-brand-logo            { width:36px!important;height:36px!important; }
  .nav-brand .brand-en       { font-size:14px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
  .nav-brand .brand-ta,
  .nav-brand .brand-tagline  { display:none!important; }
  /* single-column layout */
  .page-wrap                 { grid-template-columns:1fr!important;min-height:calc(100vh - 52px)!important; }
  .ad-col                    { display:none!important; }
  .content-col,.center-dark  { min-height:calc(100vh - 52px)!important;width:100%!important; }
  /* spacing */
  .fw-wrap                   { padding:12px 10px!important; }
  .dash-main                 { padding:12px!important; }
  /* sidebar stays icon-only (46px) — no need to hide, handled by existing 700px rule */
}

/* ── SIDEBAR ON VERY SMALL PHONES — collapse fully ──────── */
@media(max-width:480px) and (orientation:portrait){
  .sidebar{ width:0!important;padding:0!important;overflow:hidden!important; }
  .dash-main{ padding:10px!important; }
}

/* ── MOBILE HEADER ALIGNMENT FIX ─────────────────────────── */
@media(max-width:960px){
  header { background:var(--deep); }
  .gkh-nav{
    display:flex!important;
    justify-content:space-between!important;
    align-items:center!important;
    min-height:58px!important;
    height:auto!important;
    padding:6px 10px!important;
    gap:8px!important;
  }
  .nav-left{ display:none!important; }
  .gkh-nav .nav-brand{
    flex:1 1 auto;
    min-width:0;
    overflow:hidden;
    align-items:flex-start;
    justify-content:center;
  }
  .nav-brand-row{
    width:100%;
    min-width:0;
    align-items:center;
    gap:8px;
  }
  .nav-brand-logo{
    width:42px!important;
    height:42px!important;
    flex:0 0 42px;
  }
  .nav-brand-text{
    min-width:0;
    align-items:flex-start;
    justify-content:center;
  }
  .nav-brand .brand-en{
    max-width:100%;
    font-size:15px!important;
    line-height:1.05!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .nav-brand .brand-ta{
    max-width:100%;
    font-size:10px!important;
    line-height:1.15!important;
    letter-spacing:.4px!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .nav-brand .brand-tagline{ display:none!important; }
  .gkh-nav .nav-right{
    flex:0 0 auto;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
  }
  #gkhProfileWrap,
  .nav-right > span,
  .nav-login,
  .nav-register{ display:none!important; }
  .nav-lang-mobile-wrap{ display:flex!important;align-items:center; }
  .nav-lang-mob-btn{
    min-height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 9px;
  }
  .nav-ham{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:36px!important;
    height:36px!important;
    padding:0!important;
    flex:0 0 36px;
  }
  .breadcrumb{
    display:block!important;
    background:var(--deepdark3)!important;
    padding:0!important;
    border-top:1px solid rgba(201,168,76,.12);
    border-bottom:1px solid rgba(201,168,76,.12);
  }
  .breadcrumb-wrap{
    width:100%;
    border-radius:0!important;
    border:0!important;
    padding:7px 10px!important;
    gap:8px!important;
  }
  .breadcrumb-left{
    width:100%;
    flex-wrap:nowrap!important;
    gap:8px!important;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .breadcrumb-left::-webkit-scrollbar{ display:none; }
  .bc-home-btn,
  .bc-back-btn{
    min-height:32px;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
  }
  .breadcrumb-trail{
    min-width:0;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
  }
  .nav-drawer{
    top:58px!important;
    max-height:calc(100vh - 58px)!important;
  }
  .page-wrap{ min-height:calc(100vh - 94px)!important; }
  .content-col,.center-dark{ min-height:calc(100vh - 94px)!important; }
}

@media(max-width:380px){
  .nav-brand-logo{
    width:38px!important;
    height:38px!important;
    flex-basis:38px;
  }
  .nav-brand .brand-en{ font-size:14px!important; }
  .nav-brand .brand-ta{ display:none!important; }
  .nav-lang-mob-btn{ padding:6px 8px;font-size:10px; }
}

/* Landscape phones have very little height: keep header as one clean row. */
@media(max-width:960px) and (orientation:landscape){
  .gkh-nav{
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    padding:3px 10px!important;
    overflow:hidden!important;
  }
  .nav-brand{
    height:42px!important;
    max-height:42px!important;
    justify-content:center!important;
  }
  .nav-brand-row{
    height:42px!important;
    max-height:42px!important;
    align-items:center!important;
  }
  .nav-brand-logo{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
  }
  .nav-brand-text{ gap:0!important; }
  .nav-brand .brand-en{
    font-size:14px!important;
    line-height:1!important;
  }
  .nav-brand .brand-ta,
  .nav-brand .brand-tagline{
    display:none!important;
  }
  .nav-lang-mob-btn,
  .nav-login{
    min-height:32px!important;
    height:32px!important;
    padding:5px 9px!important;
    line-height:1!important;
  }
  .nav-ham{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
    font-size:18px!important;
  }
  .breadcrumb-wrap{
    min-height:34px!important;
    padding:5px 10px!important;
  }
  .bc-home-btn,
  .bc-back-btn{
    min-height:28px!important;
    padding:4px 9px!important;
  }
  .nav-drawer{
    top:48px!important;
    max-height:calc(100vh - 48px)!important;
  }
  .page-wrap{ min-height:calc(100vh - 82px)!important; }
  .content-col,.center-dark{ min-height:calc(100vh - 82px)!important; }
}
