/* === NAHINEST THEME CSS === */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --orange:#E8651A;--orange-l:#F4A261;--orange-p:#FFF0E6;--orange-d:#C44E0D;
  --navy:#1A1A2E;--navy-l:#2D2D4E;--navy-p:#EEEEF8;
  --white:#fff;--offwhite:#F8F8F8;--light:#F2F3F5;
  --fog:#E8E8E8;--card:#fff;
  --td:#1A1A2E;--tm:#444466;--tmu:#8888AA;
  --ok:#1B7A4A;--green-p:#E8F5EE;
  --danger:#C0392B;--warn:#D4730A;
  --r:14px;--rs:9px;
  --shadow:0 2px 16px rgba(26,26,46,.08);
  --shadow-lg:0 8px 40px rgba(26,26,46,.14);
  --max:1200px;
}
html{scroll-behavior:smooth}
body{font-family:'Be Vietnam Pro',system-ui,sans-serif;background:var(--offwhite);color:var(--td);font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button,input,select,textarea{font-family:inherit}
h1,h2,h3,h4{font-family:'Playfair Display',serif;line-height:1.25;color:var(--navy)}

/* TOPBAR */
.topbar{background:var(--navy);padding:6px 20px;font-size:11.5px;color:rgba(255,255,255,.6)}
.topbar-inner{max-width:var(--max);margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}
.topbar a{color:rgba(255,255,255,.8);margin-left:14px;transition:.15s}.topbar a:hover{color:var(--orange-l)}

/* NAV */
.nav{background:#fff;position:sticky;top:0;z-index:500;border-bottom:3px solid var(--orange);box-shadow:0 2px 12px rgba(26,26,46,.08)}
.nav-inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;padding:0 20px;height:66px;gap:14px}
.brand-logo{display:flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none}
.brand-icon{width:46px;height:46px;border-radius:10px;background:var(--orange);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;box-shadow:0 3px 10px rgba(232,101,26,.3)}
.brand-name{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--navy);display:block}
.brand-sub{font-size:9.5px;color:var(--orange);font-weight:600;text-transform:uppercase;letter-spacing:.7px;display:block}
.nav-menu{flex:1;display:flex;justify-content:center;gap:2px;flex-wrap:nowrap}
.nmenu{padding:6px 10px;border-radius:8px;font-size:12.5px;font-weight:500;color:var(--tm);transition:.18s;white-space:nowrap;display:inline-block;text-decoration:none}
.nmenu:hover,.nmenu.on{color:var(--orange);background:var(--orange-p)}.nmenu.on{font-weight:700}
.nav-right{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}
.nav-phone{font-size:13px;font-weight:700;color:var(--orange);white-space:nowrap;text-decoration:none}
.nav-btn{font-size:12px;padding:6px 13px;border-radius:8px;border:1.5px solid var(--fog);color:var(--tm);background:#fff;transition:.18s;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-block}
.nav-btn:hover{border-color:var(--orange);color:var(--orange)}.nav-btn.primary{background:var(--orange);color:#fff;border-color:var(--orange)}.nav-btn.primary:hover{background:var(--orange-d);color:#fff}
.who-pill{font-size:11px;padding:3px 10px;border-radius:14px;font-weight:600}
.who-admin{background:var(--orange-p);color:var(--orange-d)}.who-staff{background:var(--navy-p);color:var(--navy-l)}
.hamburger{display:none;flex-direction:column;gap:5px;padding:8px;border-radius:7px;background:none;border:none;cursor:pointer}
.hamburger span{width:23px;height:2.5px;background:var(--navy);border-radius:2px;display:block}
.mobile-menu{display:none;position:fixed;inset:0;z-index:600;background:rgba(0,0,0,.55);backdrop-filter:blur(3px)}
.mobile-menu.open{display:block}
.mobile-menu-panel{position:absolute;top:0;left:0;width:300px;height:100%;background:#fff;overflow-y:auto;display:flex;flex-direction:column}
.mobile-menu-header{padding:16px 20px;border-bottom:1px solid var(--fog);display:flex;justify-content:space-between;align-items:center;background:var(--orange-p)}
.mobile-close{font-size:24px;color:var(--orange);cursor:pointer;background:none;border:none}
.mmenu-item{display:flex;padding:13px 20px;font-size:14px;font-weight:500;color:var(--td);border-bottom:1px solid var(--fog);transition:.15s;text-decoration:none}
.mmenu-item:hover{background:var(--orange-p);color:var(--orange)}
.mobile-cta{padding:16px 20px;margin-top:auto;display:flex;flex-direction:column;gap:10px}
.mobile-cta a{display:block;text-align:center;border-radius:var(--rs);padding:13px;font-weight:700;font-size:14px;text-decoration:none}
.mcta-call{background:var(--orange);color:#fff}.mcta-zalo{background:#06C755;color:#fff}

/* HERO */
.hero{background:linear-gradient(135deg,var(--navy) 0%,#2D2D5E 50%,#1A1A3E 100%);padding:clamp(48px,7vw,80px) 20px clamp(52px,7vw,80px);text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 50% 0%,rgba(232,101,26,.15) 0%,transparent 70%);pointer-events:none}
.hero-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(232,101,26,.15);border:1px solid rgba(232,101,26,.3);border-radius:20px;padding:5px 14px;font-size:12px;font-weight:600;color:var(--orange-l);margin-bottom:16px;position:relative}
.hero-title{font-family:'Playfair Display',serif;color:#fff;font-size:clamp(28px,5vw,52px);font-weight:700;line-height:1.15;margin-bottom:14px;position:relative}
.hero-title em{color:var(--orange-l);font-style:italic}
.hero-sub{color:rgba(255,255,255,.7);font-size:clamp(14px,1.8vw,16px);margin-bottom:40px;position:relative;max-width:560px;margin-left:auto;margin-right:auto}
.hero-stats{display:flex;justify-content:center;gap:clamp(24px,5vw,56px);margin-bottom:40px;position:relative;flex-wrap:wrap}
.stat-item{text-align:center}
.stat-num{font-family:'Playfair Display',serif;font-size:clamp(26px,4vw,38px);font-weight:700;color:var(--orange-l)}
.stat-lbl{font-size:11px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:1.2px;margin-top:2px}

/* FILTER BOX */
.filter-box{background:#fff;border-radius:var(--r);padding:clamp(16px,3vw,24px);max-width:860px;margin:0 auto;box-shadow:0 20px 60px rgba(0,0,0,.25);position:relative;z-index:10}
.filter-tabs{display:flex;gap:6px;margin-bottom:16px;border-bottom:2px solid var(--fog);padding-bottom:14px;flex-wrap:wrap}
.ftab{font-size:13px;font-weight:500;padding:6px 16px;border-radius:20px;cursor:pointer;border:1.5px solid var(--fog);background:transparent;color:var(--tm);transition:.18s;white-space:nowrap}
.ftab:hover,.ftab.on{background:var(--orange);color:#fff;border-color:var(--orange)}
.filter-grid{display:grid;gap:10px}
.fgrid-2{grid-template-columns:1fr 1fr}.fgrid-3{grid-template-columns:1fr 1fr 1fr}.fgrid-4{grid-template-columns:1fr 1fr 1fr 1fr}
.fg{display:flex;flex-direction:column;gap:4px}
.fg label{font-size:10px;font-weight:700;color:var(--tmu);text-transform:uppercase;letter-spacing:.7px}
.fg select,.fg input{border:1.5px solid var(--fog);border-radius:var(--rs);padding:9px 12px;font-size:13px;color:var(--td);background:var(--light);outline:none;width:100%;transition:.15s}
.fg select:focus,.fg input:focus{border-color:var(--orange);background:#fff;box-shadow:0 0 0 3px rgba(232,101,26,.1)}
.search-btn{width:100%;background:var(--orange);color:#fff;border:none;border-radius:var(--rs);padding:14px;font-size:15px;font-weight:600;cursor:pointer;transition:.18s;margin-top:4px}
.search-btn:hover{background:var(--orange-d)}

/* QUICK CATS */
.quick-cats{background:#fff;border-bottom:2px solid var(--fog);overflow-x:auto;scrollbar-width:none;padding:0 20px}
.quick-cats::-webkit-scrollbar{display:none}
.quick-cats-inner{max-width:var(--max);margin:0 auto;display:flex;gap:0}
.quick-cat{font-size:13px;font-weight:500;padding:13px 18px;border-bottom:3px solid transparent;color:var(--tm);transition:.18s;white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:6px;text-decoration:none;margin-bottom:-2px}
.quick-cat:hover{color:var(--orange);border-bottom-color:var(--orange-p)}.quick-cat.active{color:var(--orange);border-bottom-color:var(--orange);font-weight:700}

/* SECTIONS */
.section{padding:clamp(32px,5vw,60px) 20px}.section.alt{background:#fff}
.sec-inner{max-width:var(--max);margin:0 auto}
.sec-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:26px;flex-wrap:wrap;gap:10px}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(22px,3vw,30px);font-weight:700;color:var(--navy)}
.sec-title span{color:var(--orange)}
.sec-sub{font-size:12.5px;color:var(--tmu);margin-top:4px}
.view-all{font-size:13px;color:var(--orange);font-weight:600;border:1.5px solid var(--orange-p);padding:7px 16px;border-radius:20px;background:var(--orange-p);transition:.18s;text-decoration:none;white-space:nowrap}
.view-all:hover{background:var(--orange);color:#fff}

/* PROP CARDS */
.prop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pcard{background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--fog);transition:.25s;display:flex;flex-direction:column;box-shadow:var(--shadow);cursor:pointer}
.pcard:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.pcard-img{height:215px;position:relative;overflow:hidden;background:linear-gradient(135deg,#FFF0E6,#FFD5B8);flex-shrink:0}
.pcard-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.35s}
.pcard:hover .pcard-img img{transform:scale(1.06)}
.pcard-canvas{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--orange-p),#FFD5B8)}
.type-badge{position:absolute;top:10px;left:10px;font-size:10.5px;font-weight:600;padding:3px 10px;border-radius:12px;z-index:2;background:rgba(26,26,46,.82);color:#fff;backdrop-filter:blur(4px)}
.dir-badge{position:absolute;top:10px;right:10px;font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:8px;z-index:2;background:rgba(232,101,26,.9);color:#fff}
.st-badge{position:absolute;bottom:10px;left:10px;font-size:10px;font-weight:600;padding:3px 9px;border-radius:9px;z-index:2}
.st-selling{background:rgba(27,122,74,.9);color:#fff}.st-sold{background:rgba(192,57,43,.9);color:#fff}.st-renting{background:rgba(15,123,140,.9);color:#fff}.st-rented{background:rgba(100,100,100,.9);color:#fff}
.pcard-wm{position:absolute;bottom:7px;right:9px;font-size:8.5px;color:rgba(255,255,255,.65);font-weight:500;z-index:2}
.pcard-body{padding:15px 16px 16px;display:flex;flex-direction:column;flex:1}
.pcard-price{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--orange);margin-bottom:5px}
.pcard-title{font-size:13.5px;font-weight:600;color:var(--td);margin-bottom:5px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}
.pcard-addr{font-size:11.5px;color:var(--tmu);margin-bottom:9px}
.pcard-specs{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px}
.spec-tag{font-size:10.5px;color:var(--tm);background:var(--light);padding:3px 9px;border-radius:6px;border:1px solid var(--fog)}
.pcard-foot{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--fog);margin-top:auto;gap:8px}
.pcard-agent{display:flex;align-items:center;gap:7px;flex:1;min-width:0}
.pcard-agent span{font-size:11px;color:var(--tmu);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pcard-btn{font-size:12px;padding:6px 14px;background:var(--orange);color:#fff;border-radius:7px;flex-shrink:0;transition:.18s;text-decoration:none;display:inline-block}
.pcard-btn:hover{background:var(--orange-d);color:#fff}
.agent-ava{width:24px;height:24px;border-radius:50%;background:var(--ac,var(--orange));display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;flex-shrink:0}

/* PROD DETAIL */
.prod-page{max-width:1100px;margin:0 auto;padding:24px 20px}
.prod-layout{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start}
.prod-gallery{border-radius:var(--r);overflow:hidden;height:400px;background:linear-gradient(135deg,var(--orange-p),#FFD5B8);position:relative;margin-bottom:12px}
.prod-gallery img{width:100%;height:100%;object-fit:cover}
.gallery-wm{position:absolute;bottom:12px;right:14px;font-size:11px;color:rgba(255,255,255,.8);font-weight:600}
.prod-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:16px}
.prod-thumb{height:76px;border-radius:7px;overflow:hidden;border:2.5px solid transparent;cursor:pointer;transition:.18s}
.prod-thumb:hover,.prod-thumb.active{border-color:var(--orange)}
.prod-thumb img{width:100%;height:100%;object-fit:cover}
.prod-title{font-family:'Playfair Display',serif;font-size:clamp(20px,3vw,26px);color:var(--navy);margin-bottom:7px;line-height:1.3}
.prod-price{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:var(--orange);margin-bottom:14px}
.prod-specs{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}
.prod-spec{font-size:12.5px;color:var(--tm);background:#fff;padding:5px 13px;border-radius:9px;border:1px solid var(--fog)}
.prod-spec.hi{border-color:var(--orange);background:var(--orange-p);color:var(--orange-d);font-weight:600}
.prod-desc{background:#fff;border-radius:var(--rs);border:1px solid var(--fog);padding:18px;margin-bottom:16px;font-size:13.5px;color:var(--tm);line-height:1.85}
.prod-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:20px}
.pd-item{background:#fff;border:1px solid var(--fog);border-radius:var(--rs);padding:11px 15px}
.pd-label{font-size:10px;color:var(--tmu);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px;font-weight:600}
.pd-val{font-size:13.5px;font-weight:600;color:var(--td)}

/* SIDEBAR */
.sidebar-card{background:#fff;border-radius:var(--r);border:1px solid var(--fog);overflow:hidden;margin-bottom:16px;box-shadow:var(--shadow)}
.sc-hdr{padding:12px 18px;background:linear-gradient(135deg,var(--orange-p),#FFE5CC);border-bottom:1px solid var(--fog);font-size:13px;font-weight:700;color:var(--navy)}
.sc-body{padding:18px}
.price-display{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:var(--orange);margin-bottom:4px}
.price-note{font-size:11.5px;color:var(--tmu);margin-bottom:16px}
.cta-btn{width:100%;border:none;border-radius:var(--rs);padding:13px;font-size:13.5px;font-weight:600;cursor:pointer;margin-bottom:9px;display:flex;align-items:center;justify-content:center;gap:7px;transition:.18s;font-family:inherit;text-decoration:none}
.cta-orange{background:var(--orange);color:#fff}.cta-orange:hover{background:var(--orange-d);color:#fff}
.cta-zalo{background:#06C755;color:#fff}.cta-zalo:hover{background:#05b84c;color:#fff}
.cta-outline{background:#fff;color:var(--navy);border:2px solid var(--navy)}.cta-outline:hover{background:var(--navy-p)}

/* NEWS */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.news-card{background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--fog);cursor:pointer;transition:.22s;display:block;text-decoration:none;box-shadow:var(--shadow)}
.news-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.news-img{height:175px;overflow:hidden;background:linear-gradient(135deg,var(--orange-p),#FFE5CC);position:relative}
.news-img img{width:100%;height:100%;object-fit:cover;transition:.35s;display:block}
.news-card:hover .news-img img{transform:scale(1.06)}
.news-img-ph{display:flex;align-items:center;justify-content:center;height:100%;font-size:36px}
.news-body{padding:15px 16px}
.news-cat{font-size:10.5px;font-weight:700;color:var(--orange);text-transform:uppercase;letter-spacing:.7px;margin-bottom:5px}
.news-title{font-size:14px;font-weight:600;color:var(--td);margin-bottom:7px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-date{font-size:11px;color:var(--tmu)}
.news-exc{font-size:12px;color:var(--tm);margin-top:6px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* POST CONTENT */
.post-content{font-size:15px;line-height:1.9;color:var(--tm)}
.post-content h2{font-size:22px;margin:24px 0 12px;color:var(--navy)}
.post-content h3{font-size:18px;margin:20px 0 10px}
.post-content p{margin-bottom:14px}
.post-content img{border-radius:var(--rs);max-width:100%;margin:14px auto}
.post-content a{color:var(--orange);text-decoration:underline}
.post-content blockquote{border-left:4px solid var(--orange);padding:14px 18px;margin:18px 0;background:var(--orange-p);border-radius:0 var(--rs) var(--rs) 0;font-style:italic;color:var(--orange-d)}
.post-content strong{font-weight:700;color:var(--td)}

/* FOOTER */
.footer{background:var(--navy);color:rgba(255,255,255,.65);padding:48px 20px 28px}
.footer-inner{max-width:var(--max);margin:0 auto}
.footer-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:36px;margin-bottom:32px}
.footer-brand{font-family:'Playfair Display',serif;color:#fff;font-size:22px;font-weight:700;margin-bottom:8px;display:flex;align-items:center;gap:10px}
.footer-brand-icon{width:36px;height:36px;background:var(--orange);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.footer-desc{font-size:13px;color:rgba(255,255,255,.42);line-height:1.75;margin-bottom:14px}
.footer-info{font-size:12.5px;color:rgba(255,255,255,.55);line-height:2}
.footer-info a{color:rgba(255,255,255,.8)}.footer-info a:hover{color:var(--orange-l)}
.footer-h{font-size:11.5px;font-weight:700;color:rgba(255,255,255,.88);text-transform:uppercase;letter-spacing:.7px;margin-bottom:12px;display:block}
.footer-link{font-size:13px;color:rgba(255,255,255,.45);display:block;margin-bottom:7px;cursor:pointer;transition:.15s;text-decoration:none}
.footer-link:hover{color:rgba(255,255,255,.95)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;color:rgba(255,255,255,.4)}
.footer-socials{display:flex;gap:10px;margin-top:14px}
.fsoc{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:15px;cursor:pointer;transition:.18s;text-decoration:none}
.fsoc:hover{background:var(--orange)}

/* FLOAT BUTTONS */
.float-btns{position:fixed;bottom:28px;right:22px;z-index:900;display:flex;flex-direction:column;gap:12px;align-items:center}
.float-btn{width:54px;height:54px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none;box-shadow:0 4px 20px rgba(0,0,0,.25);transition:transform .22s,box-shadow .22s;position:relative}
.float-btn:hover{transform:scale(1.12) translateY(-3px)}
.float-btn-zalo{background:#06C755}
.float-btn-phone{background:var(--orange);animation:nh-shake 3s ease-in-out infinite}
.float-btn-label{position:absolute;right:calc(100% + 10px);background:rgba(0,0,0,.75);color:#fff;font-size:11px;font-weight:600;padding:5px 10px;border-radius:7px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s}
.float-btn:hover .float-btn-label{opacity:1}
@keyframes nh-shake{0%,85%,100%{transform:rotate(0)}87%{transform:rotate(-12deg)}89%{transform:rotate(12deg)}91%{transform:rotate(-8deg)}93%{transform:rotate(8deg)}}

/* BADGES */
.badge-selling{background:var(--green-p);color:var(--ok);font-size:10px;padding:2px 9px;border-radius:9px;font-weight:600;display:inline-block}
.badge-sold{background:#FFEBEE;color:var(--danger);font-size:10px;padding:2px 9px;border-radius:9px;font-weight:600;display:inline-block}
.badge-renting{background:#E6F7FA;color:#0F7B8C;font-size:10px;padding:2px 9px;border-radius:9px;font-weight:600;display:inline-block}
.badge-rented{background:#F3E5F5;color:#6A1B9A;font-size:10px;padding:2px 9px;border-radius:9px;font-weight:600;display:inline-block}

/* INTERNAL */
.pg-hdr{padding:18px 20px 10px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;max-width:1200px;margin:0 auto}
.pg-title{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:var(--navy)}
.ip-notice{border-radius:var(--rs);padding:8px 14px;font-size:12px;display:inline-flex;gap:7px;align-items:center}
.ip-ok{background:var(--green-p);border:1px solid #A5D6A7;color:var(--ok)}
.ip-warn{background:#FFF8E1;border:1px solid #FFD54F;color:#795548}
.tbl-wrap{padding:0 20px 28px;overflow-x:auto}
.tbl{width:100%;border-collapse:collapse;font-size:12.5px;background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--fog);box-shadow:var(--shadow)}
.tbl th{background:var(--navy);color:rgba(255,255,255,.9);font-size:10.5px;font-weight:700;text-align:left;padding:11px 13px;white-space:nowrap}
.tbl td{padding:11px 13px;border-bottom:1px solid var(--fog);vertical-align:top}
.tbl tr:last-child td{border-bottom:none}
.tbl tr:hover td{background:var(--orange-p)}
.pill{display:inline-block;padding:2px 9px;border-radius:9px;font-size:9.5px;font-weight:600;margin:1px}
.pill-dong{background:#FFF8E1;color:#F57F17}.pill-tay{background:#E3F2FD;color:#1565C0}
.small-btn{font-size:11px;padding:4px 11px;border-radius:7px;border:1.5px solid;cursor:pointer;font-weight:600;font-family:inherit;transition:.15s;text-decoration:none;display:inline-block}
.sb-blue{border-color:var(--navy-l);color:var(--navy);background:var(--navy-p)}.sb-blue:hover{background:var(--navy);color:#fff}
.sb-red{border-color:#FFCDD2;color:var(--danger);background:#FFEBEE}.sb-red:hover{background:var(--danger);color:#fff}
.sb-orange{border-color:var(--orange);color:var(--orange-d);background:var(--orange-p)}.sb-orange:hover{background:var(--orange);color:#fff}

/* FORM */
.form-page{padding:22px 20px;max-width:800px;margin:0 auto}
.fsec{background:#fff;border-radius:var(--r);border:1px solid var(--fog);margin-bottom:16px;overflow:hidden;box-shadow:var(--shadow)}
.fsec-hdr{padding:12px 18px;background:linear-gradient(135deg,var(--orange-p),#FFE5CC);border-bottom:1px solid var(--fog);display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.fsec-title{font-size:14px;font-weight:700;color:var(--navy)}
.priv-badge{font-size:10px;background:var(--navy-p);color:var(--navy-l);border:1px solid var(--navy-l);border-radius:7px;padding:2px 8px;margin-left:auto}
.fbody{padding:18px}
.ff{display:flex;flex-direction:column;gap:5px}
.ff label{font-size:11px;font-weight:700;color:var(--tm)}
.ff input,.ff select,.ff textarea{border:1.5px solid var(--fog);border-radius:var(--rs);padding:9px 11px;font-size:13px;font-family:inherit;color:var(--td);background:var(--light);outline:none;width:100%;transition:.15s}
.ff input:focus,.ff select:focus,.ff textarea:focus{border-color:var(--orange);background:#fff;box-shadow:0 0 0 3px rgba(232,101,26,.1)}
.ff textarea{resize:vertical;min-height:72px}
.submit-btn{width:100%;background:var(--orange);color:#fff;border:none;border-radius:var(--rs);padding:15px;font-size:15.5px;font-weight:700;cursor:pointer;margin-top:8px;transition:.18s;font-family:inherit}
.submit-btn:hover{background:var(--orange-d)}
.toast-ok{background:var(--green-p);border:1px solid #A5D6A7;border-radius:var(--rs);padding:11px 15px;font-size:13px;color:var(--ok);margin-bottom:14px}
.toast-err{background:#FFEBEE;border:1px solid #FFCDD2;border-radius:var(--rs);padding:11px 15px;font-size:13px;color:var(--danger);margin-bottom:14px}
.empty-state{text-align:center;padding:56px 20px;color:var(--tmu);font-size:15px}
.upload-zone{border:2px dashed var(--fog);border-radius:var(--rs);padding:22px;text-align:center;cursor:pointer;transition:.2s}
.upload-zone:hover{border-color:var(--orange);background:var(--orange-p)}
.add-btn{background:var(--orange-p);border:1px solid var(--orange);color:var(--orange-d);border-radius:var(--rs);padding:7px 13px;font-size:12px;cursor:pointer;font-weight:600;font-family:inherit;transition:.15s}
.add-btn:hover{background:var(--orange);color:#fff}
.radio-row{display:flex;gap:8px;flex-wrap:wrap}
.radio-opt{cursor:pointer;font-size:12.5px;padding:6px 13px;border-radius:20px;border:1.5px solid var(--fog);transition:.15s;background:#fff;font-family:inherit}
.radio-opt.sel{border-color:var(--orange);background:var(--orange);color:#fff}
.dir-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:12px}
.dopt{border:1.5px solid var(--fog);border-radius:var(--rs);padding:9px 6px;text-align:center;cursor:pointer;font-size:10.5px;transition:.15s;background:#fff}
.dopt:hover{border-color:var(--orange);background:var(--orange-p)}.dopt.sel{border-color:var(--orange);background:var(--orange);color:#fff}
.dopt-name{font-weight:700;font-size:12px}.dopt-type{font-size:9px;opacity:.7;margin-top:2px}

/* PAGINATION */
.pagination{display:flex;justify-content:center;gap:7px;margin-top:32px;flex-wrap:wrap}
.pagination ul{display:flex;gap:7px;list-style:none;flex-wrap:wrap}
.pagination li a,.pagination li span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:9px;border:1.5px solid var(--fog);background:#fff;color:var(--tm);font-size:14px;transition:.18s;text-decoration:none}
.pagination li a:hover{background:var(--orange-p);border-color:var(--orange);color:var(--orange)}
.pagination li.active span,.pagination li span.current{background:var(--orange);color:#fff;border-color:var(--orange);font-weight:700}
.pagination li .prev,.pagination li .next{width:auto;padding:0 16px;white-space:nowrap}

/* RESPONSIVE */
@media(max-width:1080px){.nav-menu{display:none!important}.hamburger{display:flex!important}}
@media(max-width:1024px){.prop-grid{grid-template-columns:1fr 1fr}.news-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:22px}.prod-layout{grid-template-columns:1fr}.fgrid-4{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.topbar{display:none}.nav-phone{display:none}.nav-inner{height:58px;padding:0 14px}.brand-name{font-size:17px}.prop-grid,.news-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:18px}.section{padding:26px 14px}.fgrid-3,.fgrid-4{grid-template-columns:1fr}.fgrid-2{grid-template-columns:1fr}.prod-gallery{height:260px}.prod-layout{grid-template-columns:1fr}.prod-detail-grid{grid-template-columns:1fr}.dir-grid{grid-template-columns:repeat(2,1fr)}.tbl-wrap{padding:0 14px 20px}}
