body.openx-khohang-page{} .openx{max-width:1180px;margin:20px auto;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.ox-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.ox-head h1,.ox-head h2{margin:0}.ox-filters{display:flex;gap:10px;flex-wrap:wrap;background:#fff;padding:14px;border:1px solid #e5e7eb;border-radius:14px;margin-bottom:18px}.ox-filters input,.ox-filters select,.ox-form input,.ox-form select,.ox-form textarea,.ox-register input{min-height:42px;border:1px solid #d1d5db;border-radius:9px;padding:8px 10px}.ox-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ox-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;box-shadow:0 4px 18px rgba(0,0,0,.04)}.ox-card>img,.ox-noimg{width:100%;height:190px;object-fit:cover}.ox-noimg{display:grid;place-items:center;background:#eef2f7;font-size:30px;font-weight:700}.ox-cardbody{padding:16px}.ox-card h3{margin:9px 0}.ox-price{font-size:19px;font-weight:800}.ox-badges{display:flex;gap:7px}.ox-badges span{background:#eef2ff;padding:4px 8px;border-radius:999px;font-size:12px}.ox-actions{display:flex;gap:8px}.ox-modal{display:none;position:fixed;z-index:999999;inset:0;background:rgba(0,0,0,.58);padding:30px;overflow:auto}.ox-modal.is-open{display:block}.ox-modalbox{position:relative;background:#fff;max-width:850px;margin:auto;border-radius:18px;padding:22px}.ox-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:32px;cursor:pointer}.ox-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:15px 0}.ox-gallery img,.ox-gallery video{width:100%;max-height:330px;object-fit:cover;border-radius:10px}.ox-contact{display:inline-block;background:#0b6bcb;color:#fff!important;text-decoration:none;padding:12px 18px;border-radius:10px;font-weight:700}.ox-contact.disabled{background:#777}.ox-form,.ox-register{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px}.ox-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ox-form label,.ox-register label{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.ox-form label span,.ox-register label span{font-weight:600}.ox-danger{color:#b91c1c!important}.ox-location-layout{display:grid;grid-template-columns:380px 1fr;gap:20px}.ox-register{max-width:520px;margin:40px auto}.ox-loginbox{max-width:520px;background:#fff;padding:25px;border-radius:16px}.ox-empty{padding:30px;background:#fff;border-radius:14px}.ox-poster{border-top:1px solid #eee;padding-top:12px}@media(max-width:800px){.ox-grid{grid-template-columns:1fr}.ox-two,.ox-location-layout{grid-template-columns:1fr}.ox-modal{padding:10px}.ox-gallery{grid-template-columns:1fr}.ox-head{align-items:flex-start;flex-direction:column}}
.ox-register-wrap{max-width:620px;margin:40px auto;padding:0 16px}.ox-register{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:28px;box-shadow:0 12px 35px rgba(15,23,42,.08)}.ox-register h2{margin-top:0}.ox-register label{display:block;margin:14px 0}.ox-register label span{display:block;font-weight:600;margin-bottom:6px}.ox-register input{width:100%;min-height:44px}

/* OpenX 1.1.2 - unified login/register gateway */
.ox-auth-page{max-width:1040px;margin:40px auto;padding:20px}.ox-auth-head{text-align:center;margin-bottom:24px}.ox-auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.ox-auth-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px;box-shadow:0 8px 30px rgba(15,23,42,.06)}.ox-auth-card h3{margin-top:0}.ox-auth-card #loginform p{margin:0 0 14px}.ox-auth-card #loginform label{display:block;font-weight:600;margin-bottom:6px}.ox-auth-card #loginform input[type=text],.ox-auth-card #loginform input[type=password]{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #d1d5db;border-radius:8px}.ox-auth-card .login-remember label{font-weight:400}.ox-auth-card .login-submit input,.ox-auth-card button.button-primary{width:100%;min-height:44px}.ox-auth-card .ox-form{max-width:none;margin:0}.ox-auth-card .ox-form label{display:block;margin-bottom:12px}.ox-auth-card .ox-form label span{display:block;font-weight:600;margin-bottom:6px}.ox-auth-card .ox-form input{box-sizing:border-box;width:100%}@media(max-width:760px){.ox-auth-page{margin:15px auto;padding:10px}.ox-auth-grid{grid-template-columns:1fr}.ox-auth-card{padding:18px}}

/* OpenX 1.2.0 UI Customizer */
.openx.ox-front-shell{padding:18px;border-radius:var(--ox-radius);color:var(--ox-text)}
.ox-card,.ox-filters,.ox-form,.ox-auth-card,.ox-modalbox,.ox-empty{border-radius:var(--ox-radius)}
.ox-badges span{background:var(--ox-secondary)}
.openx .button-primary,.openx .ox-contact,.openx button.button-primary{background:var(--ox-primary)!important;border-color:var(--ox-primary)!important;color:var(--ox-button-text)!important}
.ox-app-nav{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.ox-app-nav a{display:block;padding:10px 14px;border-radius:10px;background:#fff;color:var(--ox-text);text-decoration:none;border:1px solid #e5e7eb;font-weight:650}.ox-app-nav a:hover{border-color:var(--ox-primary);color:var(--ox-primary)}
.ox-layout-left{display:grid!important;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:start}.ox-layout-left .ox-app-nav{position:sticky;top:30px;display:flex;flex-direction:column;margin:0}.ox-layout-left .ox-app-main{min-width:0}
.ox-menu-setting{padding:14px;border:1px solid #e5e7eb;border-radius:12px;background:#fafafa}.ox-menu-setting>label:first-child{display:block;margin-bottom:10px}
@media(max-width:800px){.ox-layout-left{display:block!important}.ox-layout-left .ox-app-nav{position:static;flex-direction:row;margin-bottom:16px}.ox-app-nav{overflow-x:auto;flex-wrap:nowrap}.ox-app-nav a{white-space:nowrap}}

/* OpenX 1.2.1 Modern UI + visual builder variables */
.openx.ox-front-shell{background:linear-gradient(180deg,var(--ox-bg),#fff);box-shadow:var(--ox-shadow)}
.ox-grid{grid-template-columns:repeat(var(--ox-card-cols),minmax(0,1fr));gap:var(--ox-gap)}
.ox-card{border:1px solid rgba(148,163,184,.22);box-shadow:var(--ox-shadow);transition:transform .2s ease,box-shadow .2s ease;background:rgba(255,255,255,.98)}
.ox-card:hover{transform:translateY(-3px)}
.ox-card-image,.ox-card>.ox-noimg{height:var(--ox-image-height)!important}
.ox-cardbody{padding:18px}.ox-card h3{font-size:18px;line-height:1.35}.ox-price{color:var(--ox-primary);font-size:21px}
.ox-modal{backdrop-filter:blur(6px);background:rgba(15,23,42,.72)}
.ox-modalbox{max-width:var(--ox-modal-width);padding:0;overflow:hidden;box-shadow:0 30px 90px rgba(2,6,23,.32)}
.ox-modal-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr)}
.ox-slider{position:relative;background:#0f172a;min-width:0}.ox-slides{height:100%;min-height:520px}.ox-slide{display:none;height:100%;min-height:520px;align-items:center;justify-content:center}.ox-slide.is-active{display:flex}.ox-slide img,.ox-slide video{width:100%;height:520px;object-fit:contain;background:#0f172a}.ox-slide .ox-noimg{width:100%;height:520px;color:#fff;background:#111827}
.ox-slide-prev,.ox-slide-next{position:absolute;top:45%;z-index:3;width:46px;height:46px;border:0;border-radius:999px;background:rgba(255,255,255,.88);font-size:34px;line-height:1;cursor:pointer}.ox-slide-prev{left:14px}.ox-slide-next{right:14px}.ox-slide-count{position:absolute;right:14px;top:14px;background:rgba(15,23,42,.7);color:#fff;border-radius:999px;padding:6px 10px;font-size:12px}
.ox-thumbs{display:flex;gap:7px;overflow:auto;padding:10px;background:#0f172a}.ox-thumb{flex:0 0 64px;height:52px;border:2px solid transparent;border-radius:8px;overflow:hidden;padding:0;background:#1e293b;color:#fff;cursor:pointer}.ox-thumb.is-active{border-color:var(--ox-primary)}.ox-thumb img{width:100%;height:100%;object-fit:cover}
.ox-detail{padding:30px;overflow:auto;max-height:680px}.ox-detail h2{font-size:26px;line-height:1.25;margin:12px 0}.ox-modal-price{font-size:25px;font-weight:800;color:var(--ox-primary)}.ox-modal-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}.ox-author-listings{display:inline-flex;justify-content:center;text-decoration:none;padding:12px 16px;border:1px solid var(--ox-primary);color:var(--ox-primary);border-radius:10px;font-weight:700}.ox-author-listings:hover{background:var(--ox-secondary)}
.ox-filters{box-shadow:0 8px 25px rgba(15,23,42,.05)}.ox-app-nav a{box-shadow:0 3px 10px rgba(15,23,42,.04)}
#ox-price{font-variant-numeric:tabular-nums;font-weight:650}
@media(max-width:900px){.ox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ox-modal-grid{grid-template-columns:1fr}.ox-slides,.ox-slide,.ox-slide img,.ox-slide video,.ox-slide .ox-noimg{min-height:380px;height:380px}.ox-detail{max-height:none}}
@media(max-width:650px){.ox-grid{grid-template-columns:1fr}.ox-modalbox{border-radius:14px}.ox-slides,.ox-slide,.ox-slide img,.ox-slide video,.ox-slide .ox-noimg{min-height:280px;height:280px}.ox-detail{padding:20px}.ox-slide-prev,.ox-slide-next{width:38px;height:38px;font-size:28px}}

/* v1.2.3 - harden listing thumbnail dimensions against theme CSS */
.openx .ox-grid .ox-card{min-width:0;display:flex;flex-direction:column;height:100%;}
.openx .ox-grid .ox-card > img.ox-card-image,
.openx .ox-card img.ox-card-image,
body .openx .ox-card > img.ox-card-image{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  aspect-ratio:16 / 10 !important;
  object-fit:cover !important;
  object-position:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
.openx .ox-cardbody{flex:1;}
@supports not (aspect-ratio: 16 / 10){
  .openx .ox-grid .ox-card > img.ox-card-image,
  .openx .ox-card img.ox-card-image,
  body .openx .ox-card > img.ox-card-image{height:220px !important;}
}
@media(max-width:800px){
  .openx .ox-grid .ox-card > img.ox-card-image,
  .openx .ox-card img.ox-card-image,
  body .openx .ox-card > img.ox-card-image{aspect-ratio:16 / 10 !important;}
}

/* v1.2.4 - listing grid: 4 desktop / 2 tablet / 1 mobile */
@media(min-width:901px){body .openx .ox-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}}
@media(min-width:651px) and (max-width:900px){body .openx .ox-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media(max-width:650px){body .openx .ox-grid{grid-template-columns:1fr !important;}}

/* v1.2.5 - frontend /khohang mirrors OpenX listing dashboard */
body.openx-khohang-page .entry-title,
body.openx-khohang-page .page-title,
body.openx-khohang-page header.entry-header{display:none!important;}
body.openx-khohang-page .site-main,
body.openx-khohang-page .entry-content,
body.openx-khohang-page main{max-width:none;}
body.openx-khohang-page .entry-content{margin:0!important;}
body.openx-khohang-page .openx.ox-front-shell{
  box-sizing:border-box!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:28px 0 48px!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.openx-khohang-page .openx .ox-head{margin-bottom:28px!important;align-items:flex-start!important;}
body.openx-khohang-page .openx .ox-head h2{font-size:25px!important;line-height:1.25!important;font-weight:650!important;margin:0 0 14px!important;}
body.openx-khohang-page .openx .ox-head p{margin:0!important;font-size:13px!important;color:#475569!important;}
body.openx-khohang-page .openx .ox-post-button{padding:11px 18px!important;border-radius:2px!important;text-decoration:none!important;}
body.openx-khohang-page .openx .ox-filters{padding:15px!important;margin-bottom:20px!important;border:0!important;border-radius:16px!important;box-shadow:0 10px 30px rgba(15,23,42,.06)!important;}
body.openx-khohang-page .openx .ox-filters input,
body.openx-khohang-page .openx .ox-filters select{height:56px!important;min-height:56px!important;border:1px solid #cbd5e1!important;border-radius:10px!important;background:#fff!important;}
body.openx-khohang-page .openx .ox-grid{gap:18px!important;}
body.openx-khohang-page .openx .ox-card{border:0!important;border-radius:16px!important;box-shadow:0 10px 30px rgba(15,23,42,.08)!important;}
body.openx-khohang-page .openx .ox-cardbody{padding:18px!important;}
body.openx-khohang-page .openx .ox-actions .button{padding:9px 16px!important;text-decoration:none!important;border:1px solid var(--ox-primary)!important;background:#fff!important;color:var(--ox-primary)!important;}
.ox-pagination{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:30px 0 8px;}
.ox-pagination a,.ox-pagination span{min-width:38px;height:38px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid #dbe2ea;border-radius:9px;background:#fff;color:var(--ox-text);text-decoration:none;font-weight:600;}
.ox-pagination a:hover,.ox-pagination .is-current{background:var(--ox-primary);border-color:var(--ox-primary);color:#fff;}
.ox-pagination .ox-dots{border-color:transparent;background:transparent;min-width:auto;padding:0 3px;}
@media(max-width:1200px){body.openx-khohang-page .openx.ox-front-shell{padding-left:18px!important;padding-right:18px!important;}}
@media(max-width:650px){body.openx-khohang-page .openx .ox-head{flex-direction:row!important;align-items:center!important;}body.openx-khohang-page .openx .ox-filters>*{width:100%!important;}}

/* v1.2.6 - dedicated OpenX frontend header/profile and wider filters */
body.openx-khohang-page .entry-title,
body.openx-khohang-page .page-title,
body.openx-khohang-page header.entry-header{display:none!important;}
body.openx-khohang-page .openx.ox-front-shell{max-width:1240px!important;padding-top:18px!important;}
body.openx-khohang-page .ox-sitebar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;margin:0 0 42px!important;padding:14px 4px!important;border-bottom:1px solid #e7ebf0!important;}
body.openx-khohang-page .ox-sitebar a{color:#111827!important;text-decoration:none!important;font-size:16px!important;}
body.openx-khohang-page .ox-sitebar .ox-home-link{font-size:21px!important;font-weight:750!important;}
body.openx-khohang-page .ox-sitebar nav{display:flex!important;align-items:center!important;gap:24px!important;}
body.openx-khohang-page .ox-sitebar .ox-logout{color:#b42318!important;}
body.openx-khohang-page .openx .ox-head{align-items:center!important;margin-bottom:22px!important;}
body.openx-khohang-page .openx .ox-head h1{font-size:30px!important;line-height:1.2!important;font-weight:750!important;margin:0 0 8px!important;color:#111827!important;}
body.openx-khohang-page .openx .ox-post-button{background:#0757b9!important;border:1px solid #0757b9!important;color:#fff!important;border-radius:9px!important;padding:12px 20px!important;font-weight:700!important;box-shadow:0 6px 16px rgba(7,87,185,.18)!important;}
body.openx-khohang-page .openx .ox-post-button:hover{background:#064b9f!important;border-color:#064b9f!important;color:#fff!important;}
body.openx-khohang-page .openx .ox-filters{display:grid!important;grid-template-columns:minmax(320px,1fr) 190px 150px 72px!important;width:100%!important;box-sizing:border-box!important;gap:12px!important;align-items:center!important;}
body.openx-khohang-page .openx .ox-filters input[name="s"]{width:100%!important;min-width:0!important;box-sizing:border-box!important;}
body.openx-khohang-page .openx .ox-filters select,
body.openx-khohang-page .openx .ox-filters button{width:100%!important;box-sizing:border-box!important;}
.ox-profile-page{max-width:1180px;margin:0 auto;padding:18px}.ox-profile-card{max-width:720px;margin:0 auto 50px}.ox-profile-card>h1{margin-bottom:18px}.ox-profile-card .ox-form{box-shadow:0 10px 30px rgba(15,23,42,.07)}.ox-notice{background:#ecfdf3;border:1px solid #abefc6;color:#067647;padding:12px 14px;border-radius:10px;margin-bottom:15px}.ox-help{color:#667085;font-size:13px}.ox-profile-card hr{border:0;border-top:1px solid #e5e7eb;margin:22px 0}
@media(max-width:850px){body.openx-khohang-page .openx .ox-filters{grid-template-columns:1fr 1fr!important;}body.openx-khohang-page .openx .ox-filters input[name="s"]{grid-column:1/-1!important;}}
@media(max-width:650px){body.openx-khohang-page .ox-sitebar{margin-bottom:24px!important}body.openx-khohang-page .ox-sitebar nav{gap:14px!important}body.openx-khohang-page .openx .ox-head{align-items:flex-start!important;gap:14px!important}body.openx-khohang-page .openx .ox-head h1{font-size:25px!important}body.openx-khohang-page .openx .ox-filters{grid-template-columns:1fr!important;}body.openx-khohang-page .openx .ox-filters input[name="s"]{grid-column:auto!important;}}

/* 1.2.7: never hide application root even with aggressive theme rules */
body.openx-khohang-page .openx.ox-front-shell,body.openx-khohang-page .openx.ox-auth-page{display:block!important;visibility:visible!important;opacity:1!important;}

/* OpenX 1.2.8 - single panel login/register */
.openx.ox-auth-page{max-width:600px;margin:24px auto;padding:10px;width:100%;box-sizing:border-box}
.ox-auth-page .ox-auth-grid{display:block}
.ox-auth-page .ox-auth-card{width:100%;box-sizing:border-box}
.ox-auth-page .ox-auth-card[hidden]{display:none!important}
.ox-auth-page .ox-register{margin:0;padding:0;border:0;box-shadow:none;max-width:none}
.ox-auth-page .ox-register h3{margin-top:0}
.ox-auth-page .ox-auth-switch{display:block;width:100%;margin-top:16px;padding:11px 15px;border:1px solid #0b6bcb;border-radius:9px;background:#fff;color:#0b6bcb;font-weight:700;cursor:pointer;text-align:center}
.ox-auth-page .ox-auth-switch:hover{background:#eef6ff}
.ox-auth-page .ox-forgot{margin:12px 0}
.ox-auth-page #loginform input[type=text],.ox-auth-page #loginform input[type=password]{min-height:46px}

.ox-register .ox-required{color:#c0392b;font-size:.85em;font-weight:500}

/* 1.2.11 automatic listing title */
.openx #ox-auto-title[readonly]{background:#f3f6fb;color:#344054;cursor:not-allowed}
.openx #ox-auto-title+small{display:block;margin-top:5px;color:#667085}

/* OpenX 1.2.12 - full width responsive filters */
.openx .ox-filters{display:grid!important;grid-template-columns:minmax(210px,2fr) repeat(5,minmax(125px,1fr)) minmax(76px,.55fr)!important;gap:10px!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;align-items:stretch!important}
.openx .ox-filters>*{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;margin:0!important}
.openx .ox-filters input,.openx .ox-filters select,.openx .ox-filters button{height:52px!important;min-height:52px!important}
@media(max-width:1100px){.openx .ox-filters{grid-template-columns:repeat(3,minmax(0,1fr))!important}.openx .ox-filters .ox-search{grid-column:span 2}}
@media(max-width:640px){.openx .ox-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}.openx .ox-filters .ox-search{grid-column:span 2}}
@media(max-width:390px){.openx .ox-filters{grid-template-columns:minmax(0,1fr)!important}.openx .ox-filters .ox-search{grid-column:auto}}

/* V1.2.13: responsive, ordered filters; override older theme-scoped 4-column rule. */
body.openx-khohang-page .openx form.ox-filters{display:grid!important;grid-template-columns:minmax(210px,2.5fr) repeat(5,minmax(110px,1fr)) minmax(76px,.7fr)!important;gap:12px!important;align-items:stretch!important;width:100%!important;max-width:100%!important;}
body.openx-khohang-page .openx form.ox-filters>*{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important;grid-column:auto!important;grid-row:auto!important;}
body.openx-khohang-page .openx form.ox-filters .ox-search{order:1!important;}
body.openx-khohang-page .openx form.ox-filters #ox-filter-purpose{order:2!important;}
body.openx-khohang-page .openx form.ox-filters select[name=type]{order:3!important;}
body.openx-khohang-page .openx form.ox-filters #ox-filter-province{order:4!important;}
body.openx-khohang-page .openx form.ox-filters #ox-filter-district{order:5!important;}
body.openx-khohang-page .openx form.ox-filters #ox-filter-price{order:6!important;}
body.openx-khohang-page .openx form.ox-filters .ox-filter-submit{order:7!important;}
@media(max-width:1300px){body.openx-khohang-page .openx form.ox-filters{grid-template-columns:repeat(3,minmax(0,1fr))!important;}body.openx-khohang-page .openx form.ox-filters .ox-search{grid-column:1/-1!important;}}
@media(max-width:750px){body.openx-khohang-page .openx form.ox-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important;}body.openx-khohang-page .openx form.ox-filters .ox-search{grid-column:1/-1!important;}}
@media(max-width:480px){body.openx-khohang-page .openx form.ox-filters{grid-template-columns:minmax(0,1fr)!important;}body.openx-khohang-page .openx form.ox-filters .ox-search{grid-column:auto!important;}}
