*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;background:#f4f6f8;color:#202832;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.gov-stripe{height:5px;background:#b32025}.site-header{background:#fff;min-height:78px;padding:12px max(18px,calc((100% - 1400px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #d9e0e7}.brand-block{display:flex;align-items:center;gap:12px}.logo-placeholder,.login-logo{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#b32025;color:#fff;font-weight:800;border:3px solid #e6b23c}.brand-title{font-weight:800;color:#123b5d;font-size:18px}.brand-subtitle{font-size:13px;color:#b32025;font-weight:700;margin-top:3px}.account{font-size:14px}.account a{color:#b32025;text-decoration:none;font-weight:700}.banner{min-height:185px;background:linear-gradient(120deg,#123b5d,#245f88);position:relative;overflow:hidden}.banner:after{content:"";position:absolute;right:-80px;top:-100px;width:360px;height:360px;border:35px solid #ffffff14;border-radius:50%}.banner-overlay{max-width:1400px;margin:auto;padding:35px 22px;color:#fff}.banner-kicker{font-size:13px;letter-spacing:1.5px;opacity:.9}.banner h1{margin:8px 0 6px;font-size:30px}.banner p{margin:0;max-width:760px}.main-nav{background:#0d314c;box-shadow:0 2px 5px #0002}.nav-inner{max-width:1400px;margin:auto;padding:0 18px;display:flex;overflow:auto}.main-nav a{color:#fff;text-decoration:none;padding:13px 16px;white-space:nowrap;font-size:14px}.main-nav a:hover{background:#17496c}.container{max-width:1400px;margin:auto;padding:24px 18px}.footer{text-align:center;color:#64748b;padding:30px 10px;font-size:13px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.card{background:#fff;border:1px solid #dfe6ed;border-radius:10px;padding:20px;box-shadow:0 2px 8px #0000000b;border-top:4px solid #123b5d}.card b{display:block;font-size:31px;color:#123b5d}.panel{background:#fff;border:1px solid #dfe6ed;border-radius:10px;padding:20px;margin:16px 0;box-shadow:0 2px 8px #0000000b}.panel h2{margin-top:0;color:#123b5d}.toolbar,.title-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:16px 0;flex-wrap:wrap}.btn{display:inline-block;border:0;border-radius:7px;padding:10px 15px;background:#123b5d;color:#fff;text-decoration:none;cursor:pointer;font-weight:700}.inline-form{display:flex;gap:8px}input{padding:10px 11px;border:1px solid #cbd5e1;border-radius:7px;font-size:15px;width:100%;max-width:480px}label{display:block;font-weight:700;margin:12px 0 7px;color:#334155}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:850px}th,td{padding:10px 9px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top}th{background:#eef3f7;color:#123b5d;white-space:nowrap}a{color:#075fb8}.muted{color:#64748b}.notice{background:#eef6ff;border-color:#cfe5ff}.alert{padding:12px 14px;border-radius:7px;background:#fee2e2;color:#991b1b;margin:10px 0}.success{padding:12px 14px;border-radius:7px;background:#dcfce7;color:#166534;margin:10px 0}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.login-page{min-height:100vh;background:#f3f6f9;display:flex;flex-direction:column}.login-card{width:min(450px,calc(100% - 28px));margin:auto;background:#fff;padding:30px;border-radius:12px;box-shadow:0 8px 30px #0002;border-top:5px solid #b32025;text-align:center}.login-card .login-logo{margin:0 auto 12px}.login-org{font-weight:800;color:#123b5d;font-size:16px}.login-card h1{font-size:20px;color:#b32025;margin:9px 0}.login-card form{text-align:left}.login-btn{width:100%;margin-top:18px}.back-link{display:inline-block;margin-top:18px;font-size:13px}@media(max-width:800px){.site-header{align-items:flex-start;flex-direction:column}.account{width:100%}.cards{grid-template-columns:1fr 1fr}.info-grid{grid-template-columns:1fr 1fr}.container{padding:15px}.banner{min-height:160px}.banner h1{font-size:24px}}@media(max-width:520px){.cards{grid-template-columns:1fr}.info-grid{grid-template-columns:1fr}.brand-title{font-size:14px}.banner h1{font-size:21px}.banner-overlay{padding:25px 16px}.main-nav a{padding:12px}.panel{padding:14px}}

.save-box{margin-top:18px;padding:18px;border:2px solid #b7d9c2;border-radius:9px;background:#f0fbf3;display:flex;align-items:center;justify-content:space-between;gap:20px}.save-btn{background:#1f6b3a;font-size:16px;padding:12px 20px;white-space:nowrap}@media(max-width:700px){.save-box{flex-direction:column;align-items:stretch}.save-btn{width:100%}}
.actions{white-space:nowrap}.btn-sm{padding:7px 10px;font-size:13px}.danger{background:#b32025}.form-grid,.member-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.form-grid .full,.member-form .full{grid-column:1/-1}.member-form .wide{grid-column:span 2}.member-form select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:7px;background:#fff}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.member-item{border:1px solid #dfe6ed;border-radius:8px;margin:10px 0;background:#fff}.member-item summary{padding:14px;cursor:pointer;color:#123b5d}.member-body{padding:0 14px 14px;border-top:1px solid #e5e7eb}.member-body .member-form{margin-top:8px}@media(max-width:900px){.form-grid,.member-form{grid-template-columns:repeat(2,minmax(0,1fr))}.member-form .wide{grid-column:span 2}}@media(max-width:520px){.form-grid,.member-form{grid-template-columns:1fr}.member-form .wide,.form-grid .full,.member-form .full{grid-column:auto}.actions{white-space:normal}}
/* V1.4 - accordion households + inline person info/edit, responsive/mobile */
.action-row{display:flex;gap:8px;flex-wrap:wrap}.household-list{display:flex;flex-direction:column;gap:10px}.household-item{border:1px solid #d8e1e8;border-radius:10px;background:#fff;overflow:hidden}.household-item>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:34px minmax(220px,1fr) auto auto;align-items:center;gap:10px;padding:14px 16px;background:#f8fafc}.household-item>summary::-webkit-details-marker{display:none}.household-item[open]>summary{background:#eef5f9;border-bottom:1px solid #d8e1e8}.household-toggle{width:28px;height:28px;border-radius:6px;background:#123b5d;color:#fff;display:flex;align-items:center;justify-content:center;font-size:21px;font-weight:700;line-height:1}.household-main{display:flex;flex-direction:column;gap:3px;color:#123b5d}.household-main small{font-size:13px;color:#64748b;font-weight:400}.household-count{font-weight:700;color:#475569;white-space:nowrap}.summary-actions{display:flex;align-items:center;gap:5px}.summary-actions form{display:inline}.household-content{padding:16px;background:#fff}.household-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:14px;font-size:14px}.member-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:8px 0 10px}.member-toolbar h3{margin:0;color:#123b5d}.member-table-wrap{overflow:auto}.member-table{min-width:980px}.head-badge{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:10px;background:#fff3cd;color:#856404;font-size:11px;font-weight:700}.empty-state{padding:16px;text-align:center;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;background:#f8fafc}.app-dialog,.small-dialog{border:0;border-radius:12px;padding:0;width:min(920px,calc(100vw - 28px));max-height:92vh;box-shadow:0 18px 60px #0004}.small-dialog{width:min(500px,calc(100vw - 28px));padding:22px}.app-dialog::backdrop,.small-dialog::backdrop{background:#0f172a99}.dialog-form{padding:0}.dialog-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;padding:20px 22px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.dialog-head h2{margin:0;color:#123b5d}.dialog-close,.icon-close{border:0;background:transparent;font-size:28px;color:#64748b;cursor:pointer}.dialog-form>.member-form{padding:10px 22px 18px;max-height:62vh;overflow:auto}.dialog-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid #e5e7eb;background:#fff}.person-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:22px}.person-info-grid>div{padding:12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.person-info-grid span{display:block;color:#64748b;font-size:12px;margin-bottom:4px}.person-info-grid b{display:block;word-break:break-word;color:#1e293b}.span-2{grid-column:span 2}.app-dialog .member-form{grid-template-columns:repeat(3,minmax(0,1fr))}.app-dialog .member-form .wide{grid-column:span 2}.app-dialog .member-form .full{grid-column:1/-1}
@media(max-width:900px){.household-item>summary{grid-template-columns:34px 1fr auto}.summary-actions{grid-column:2/-1}.household-meta{grid-template-columns:1fr 1fr}.app-dialog .member-form{grid-template-columns:1fr 1fr}.app-dialog .member-form .wide{grid-column:span 2}.person-info-grid{grid-template-columns:1fr 1fr}.span-2{grid-column:span 2}}
@media(max-width:600px){.household-item>summary{grid-template-columns:32px 1fr}.household-count{grid-column:2}.summary-actions{grid-column:2;display:flex;flex-wrap:wrap}.household-meta{grid-template-columns:1fr}.app-dialog .member-form,.person-info-grid{grid-template-columns:1fr}.app-dialog .member-form .wide,.app-dialog .member-form .full,.span-2{grid-column:auto}.dialog-head{padding:16px}.dialog-form>.member-form,.person-info-grid{padding:10px 16px 16px}.dialog-foot{padding:12px 16px}.summary-actions .btn{flex:1}.action-row{width:100%}.action-row .btn{flex:1}}

/* V1.8 UX: compact admin workflow, accordion households, mobile-first */
.village-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px}.village-head h1{margin:4px 0}.village-actions{display:flex;gap:8px;flex-wrap:wrap}.breadcrumb{font-size:14px;margin-bottom:8px}.breadcrumb a{text-decoration:none}.stats-strip{display:flex;gap:12px;margin:12px 0 18px}.stats-strip>div{background:#fff;border:1px solid #dfe6ed;border-radius:10px;padding:14px 20px;min-width:170px}.stats-strip b{display:block;font-size:26px;color:#123b5d}.stats-strip span{color:#64748b;font-size:13px}.household-card{background:#fff;border:1px solid #dfe6ed;border-radius:10px;margin:10px 0;overflow:hidden;box-shadow:0 2px 8px #0000000a}.household-toggle{width:100%;border:0;background:#fff;display:flex;align-items:center;text-align:left;gap:12px;padding:15px 16px;cursor:pointer;color:#123b5d}.household-toggle:hover{background:#f7fafc}.plus-icon{width:32px;height:32px;border-radius:7px;background:#123b5d;color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;flex:none}.house-main{display:flex;flex-direction:column;gap:4px;flex:1}.house-main b{font-size:16px}.house-main small{color:#64748b;font-size:13px}.house-arrow{font-size:24px;color:#94a3b8}.house-body{padding:0 16px 16px;border-top:1px solid #e5e7eb}.house-tools{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0}.member-table-wrap{overflow:auto}.member-table{min-width:900px}.member-table th{background:#eef3f7}.actions{white-space:nowrap}.btn-sm{padding:7px 10px;font-size:13px}.head-badge{display:inline-block;background:#fff4cc;color:#7a5a00;border:1px solid #f0d36a;border-radius:10px;padding:2px 7px;font-size:11px;margin-left:5px}.empty-state{background:#fff;border:1px dashed #b8c6d4;border-radius:10px;padding:35px;text-align:center;color:#64748b}.modal{border:0;border-radius:12px;padding:0;width:min(700px,calc(100% - 24px));max-height:90vh;box-shadow:0 20px 60px #0004}.modal.large{width:min(900px,calc(100% - 24px))}.modal::backdrop{background:#0b1f2e88}.modal-card{padding:20px}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #e5e7eb;padding-bottom:12px;margin-bottom:14px}.modal-head h2{margin:0;color:#123b5d}.modal-head button{border:0;background:#eef2f6;border-radius:50%;width:34px;height:34px;font-size:23px;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.form-grid .wide,.form-grid .full{grid-column:1/-1}.form-grid select,.form-grid input{max-width:none;width:100%}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:6px}.person-view{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.person-view>div{border-bottom:1px solid #edf1f5;padding-bottom:9px}.person-view label{font-size:12px;color:#64748b;margin:0 0 3px}.person-view b{display:block;color:#17212b;word-break:break-word}.save-box{margin-top:18px;padding:15px;border:1px solid #b9dfc3;background:#effaf1;border-radius:9px}.save-btn{background:#19713b}.inline{display:inline}.check{display:flex;align-items:center;gap:7px}.check input{width:auto}.danger{background:#b32025}.secondary{background:#164a70}
@media(max-width:700px){.village-head{align-items:flex-start;flex-direction:column}.village-actions{width:100%}.village-actions .btn{flex:1;text-align:center}.stats-strip>div{flex:1;min-width:0}.household-toggle{padding:13px 10px}.house-body{padding:0 10px 12px}.form-grid,.person-view{grid-template-columns:1fr}.form-grid .wide,.form-grid .full{grid-column:1}.modal-card{padding:14px}.modal{width:calc(100% - 12px)}.member-table{min-width:820px}}

/* =========================================================
   V2.3 - Giao diện mới: font + banner + dân số
   Chỉ thay đổi UI, không thay đổi database/logic.
========================================================= */
:root{
 --app-red:#941b23;
 --app-red-dark:#72131a;
 --app-gold:#c9a24a;
 --app-blue:#183b57;
 --app-bg:#f4f6f8;
 --app-border:#e3e8ed;
 --app-text:#202832;
 --app-muted:#66717c;
 --app-shadow:0 8px 24px rgba(26,38,49,.07);
}

body{
 font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;
 font-size:15px;
 line-height:1.5;
 background:
   radial-gradient(circle at 8% 0%,rgba(148,27,35,.035),transparent 28%),
   linear-gradient(180deg,#f8fafb 0%,var(--app-bg) 100%);
 color:var(--app-text);
}
.gov-stripe{
 height:4px;
 background:linear-gradient(90deg,var(--app-red-dark),var(--app-red),var(--app-gold),var(--app-red));
}
.site-header{
 min-height:74px;
 background:rgba(255,255,255,.97);
 box-shadow:0 1px 0 rgba(20,30,40,.05);
}
.brand-block{gap:13px}
.logo-placeholder,.login-logo{
 width:50px;height:50px;
 background:linear-gradient(145deg,var(--app-red),#b52a32);
 border:2px solid #e2bd64;
 box-shadow:0 3px 10px rgba(148,27,35,.16);
}
.brand-title{
 font-size:17px;
 letter-spacing:.15px;
 color:#24384a;
 font-weight:750;
}
.brand-subtitle{
 color:var(--app-red);
 font-size:12px;
 letter-spacing:.35px;
 font-weight:700;
}

.banner{
 min-height:190px;
 background:
   linear-gradient(115deg,rgba(102,15,22,.98),rgba(148,27,35,.96) 53%,rgba(177,39,49,.94)),
   radial-gradient(circle at 85% 20%,rgba(255,255,255,.14),transparent 25%);
}
.banner:before{
 content:"";
 position:absolute;
 width:460px;height:460px;
 right:-170px;bottom:-285px;
 border:1px solid rgba(255,255,255,.15);
 border-radius:50%;
 box-shadow:0 0 0 38px rgba(255,255,255,.035),
            0 0 0 76px rgba(255,255,255,.025);
}
.banner:after{
 right:auto;left:-130px;top:-180px;
 width:330px;height:330px;
 border:1px solid rgba(255,255,255,.09);
 border-radius:50%;
}
.banner-overlay{
 padding:38px 22px 40px;
}
.banner-kicker{
 font-size:12px;
 font-weight:650;
 letter-spacing:1.8px;
 color:#f4d98e;
}
.banner h1{
 margin:9px 0 7px;
 font-size:34px;
 font-weight:780;
 letter-spacing:.2px;
}
.banner p{
 font-size:15px;
 opacity:.92;
}

.main-nav{
 background:#17384f;
 box-shadow:0 3px 12px rgba(20,35,48,.12);
}
.main-nav a{
 padding:12px 17px;
 font-weight:600;
 font-size:14px;
}
.main-nav a:hover{background:#214b68}

.container{
 padding-top:25px;
 padding-bottom:32px;
}
.panel,.card,.household-card{
 border-color:var(--app-border);
 box-shadow:var(--app-shadow);
}
.panel{
 border-radius:13px;
}
.panel h2{
 color:var(--app-blue);
 font-weight:720;
}
.btn{
 border-radius:8px;
 font-family:inherit;
 font-weight:650;
 transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}
.btn:hover{
 transform:translateY(-1px);
 box-shadow:0 5px 14px rgba(20,50,70,.14);
}
.danger{background:var(--app-red)}
.secondary{background:#234d68}
a{color:#075f9f}

/* Dân số - tiêu đề */
.village-head{
 padding:4px 2px 4px;
}
.village-head h1{
 color:var(--app-red-dark);
 font-size:27px;
 font-weight:760;
 letter-spacing:-.2px;
}
.breadcrumb{
 color:var(--app-muted);
}
.breadcrumb a{
 color:var(--app-red);
 font-weight:650;
}

/* Dân số - thống kê */
.stats-strip{
 gap:14px;
 margin:14px 0 20px;
}
.stats-strip>div{
 min-height:96px;
 border-radius:13px;
 border:1px solid var(--app-border);
 box-shadow:0 4px 16px rgba(25,40,52,.055);
 position:relative;
 overflow:hidden;
}
.stats-strip>div:before{
 content:"";
 position:absolute;
 left:0;top:0;bottom:0;width:4px;
 background:var(--app-red);
}
.stats-strip b{
 color:var(--app-red);
 font-size:28px;
 font-weight:780;
}
.stats-strip span{
 font-size:13px;
}

/* Dân số - hộ gia đình */
.household-list{gap:9px}
.household-card{
 border-radius:13px;
 margin:0;
}
.household-toggle{
 min-height:65px;
 padding:12px 15px;
 gap:12px;
}
.household-toggle:hover{background:#fffafb}
.plus-icon{
 width:34px;height:34px;
 border-radius:9px;
 background:#f7e9ea;
 color:var(--app-red);
 border:1px solid #ecd2d5;
 font-size:21px;
 font-weight:600;
}
.house-main{
 flex-direction:row;
 align-items:center;
 gap:10px;
 flex:1;
 min-width:0;
}
.house-main b{
 color:#25313c;
 font-size:16px;
 font-weight:650;
 white-space:nowrap;
 overflow:hidden;
 text-overflow:ellipsis;
}
.house-main small{
 color:#6b7580;
 background:#f3f5f7;
 border-radius:999px;
 padding:4px 9px;
 font-size:12px;
 font-weight:600;
 white-space:nowrap;
}
.house-arrow{
 color:#8d98a3;
 font-size:23px;
}
.household-card:hover{
 border-color:#d7c4c7;
}

.house-body{
 padding:0 15px 15px;
 background:#fcfdfe;
}
.house-tools{
 padding:11px 0;
}
.member-table-wrap{
 border:1px solid var(--app-border);
 border-radius:11px;
}
.member-table{
 min-width:900px;
}
.member-table th{
 background:#f4f6f8;
 color:#53606c;
 font-size:12px;
 font-weight:700;
}
.member-table td{
 font-size:14px;
 color:#29343e;
}
.member-table tbody tr:hover{background:#fffafa}

/* Form */
input,select,textarea{
 font-family:inherit;
 font-size:14px;
}
input:focus,select:focus,textarea:focus{
 outline:none;
 border-color:#b96a70;
 box-shadow:0 0 0 3px rgba(148,27,35,.08);
}
label{
 font-size:13px;
 font-weight:650;
 color:#394652;
}

/* Vai trò */
.role-cards>div{
 border-top-color:var(--app-red);
 border-radius:12px;
 box-shadow:0 4px 16px rgba(25,40,52,.055);
}
.role-cards b{color:var(--app-red-dark)}

/* Modal */
.modal{
 border-radius:14px;
}
.modal-head h2{
 color:var(--app-red-dark);
 font-weight:750;
}
.modal-head button{
 color:#6b7580;
}

/* Mobile */
@media(max-width:700px){
 body{font-size:14px}
 .site-header{padding:11px 15px}
 .brand-title{font-size:14px}
 .brand-subtitle{font-size:10px}
 .logo-placeholder{width:45px;height:45px}
 .banner{min-height:155px}
 .banner-overlay{padding:28px 16px 30px}
 .banner-kicker{font-size:10px;letter-spacing:1.2px}
 .banner h1{font-size:25px}
 .banner p{font-size:13px}
 .container{padding:16px 12px 24px}
 .village-head h1{font-size:23px}
 .stats-strip>div{min-height:82px;padding:12px 15px}
 .stats-strip b{font-size:24px}
 .household-toggle{min-height:62px;padding:11px 10px}
 .house-main{
   flex-direction:column;
   align-items:flex-start;
   gap:1px;
 }
 .house-main b{font-size:15px;max-width:calc(100vw - 120px)}
 .house-main small{font-size:11px;padding:3px 8px}
 .plus-icon{width:31px;height:31px;flex-basis:31px}
 .house-body{padding:0 10px 12px}
}

/* Bảo đảm các nút/thẻ không bị font cũ làm nặng */
.household-toggle,.btn,.main-nav a,.panel,.card,
.member-table,.role-cards,label,input,select,textarea{
 font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;
}

/* V2.3.1 - Admin + banner polish */
.thonso-banner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:118px;margin:0 0 22px;padding:22px 30px;overflow:hidden;border-radius:0 0 18px 18px;color:#fff;background:linear-gradient(120deg,#72131a 0%,#951b24 55%,#ad2932 100%);box-shadow:0 8px 24px rgba(80,20,25,.14)}
.thonso-banner:before{content:"";position:absolute;width:300px;height:300px;right:-110px;top:-155px;border:1px solid rgba(255,255,255,.12);border-radius:50%}
.thonso-banner:after{content:"";position:absolute;width:190px;height:190px;right:55px;bottom:-150px;border:1px solid rgba(255,255,255,.10);border-radius:50%}
.thonso-banner-left{position:relative;z-index:2;display:flex;align-items:center;gap:16px}.thonso-logo{width:58px;height:58px;flex:0 0 58px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.32);font-size:26px;color:#f2d68f}.thonso-title{font-size:28px;font-weight:800;line-height:1.1;letter-spacing:.3px}.thonso-subtitle{margin-top:5px;font-size:14px;font-weight:500}.thonso-slogan{margin-top:8px;font-size:9px;font-weight:700;letter-spacing:1px;color:#f1d38a}.thonso-banner-right{position:relative;z-index:2;text-align:right}.thonso-badge{display:inline-block;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);font-size:13px;font-weight:700}.thonso-small{margin-top:6px;font-size:9px;letter-spacing:1.2px;opacity:.72}
.role-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0}.role-cards>div{background:#fff;border:1px solid #e2e7ec;border-radius:14px;padding:17px 18px;box-shadow:0 5px 18px rgba(25,35,45,.05)}.role-cards b{display:block;color:#941b23;font-size:21px}.role-cards span{display:block;margin:3px 0 7px;font-weight:700;color:#263847}.role-cards small{display:block;color:#66717c;line-height:1.5}
@media(max-width:760px){.thonso-banner{min-height:100px;padding:17px;border-radius:0 0 15px 15px}.thonso-logo{width:45px;height:45px;flex-basis:45px;font-size:21px}.thonso-title{font-size:21px}.thonso-subtitle{font-size:11px}.thonso-slogan{font-size:7px;letter-spacing:.6px}.thonso-banner-right{display:none}.role-cards{grid-template-columns:1fr}.role-cards>div{padding:14px}}

/* Level 3 - chỉ hiển thị tên hộ và tên thành viên */
.viewer-member-list{display:flex;flex-direction:column;background:#fff;border:1px solid #e4e8ed;border-radius:12px;overflow:hidden}
.viewer-member-row{display:flex;align-items:center;gap:12px;padding:13px 15px;border-bottom:1px solid #edf0f2}
.viewer-member-row:last-child{border-bottom:0}
.viewer-member-stt{width:28px;color:#7b8792;font-weight:600;text-align:center}
.viewer-member-name{font-weight:600;color:#26323d}

/* =========================================================
   V2.4 - QUẢN LÝ THÔN THÔNG MINH: BANNER CHÍNH THỨC
========================================================= */
.app-hero{
  position:relative;
  min-height:205px;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(120deg,rgba(101,12,19,.98),rgba(145,25,34,.96) 52%,rgba(174,42,50,.95)),
    url("quan-ly-thon-thong-minh-banner.png") center/cover no-repeat;
  border-bottom:4px solid #d2ad55;
}
.app-hero:before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 82% 28%,rgba(255,255,255,.13),transparent 19%),
    linear-gradient(160deg,transparent 55%,rgba(255,211,91,.14) 55.5%,transparent 57%);
  pointer-events:none;
}
.app-hero-inner{
  position:relative;z-index:2;
  max-width:1400px;margin:auto;
  padding:31px 24px 34px;
  text-align:center;
}
.app-hero-kicker{
  font-size:13px;font-weight:700;letter-spacing:2px;color:#f3d78a;
}
.app-hero-title{
  margin:5px 0 2px;
  font-size:40px;line-height:1.08;font-weight:850;letter-spacing:.8px;
  text-shadow:0 2px 7px rgba(0,0,0,.25);
}
.app-hero-subtitle{
  font-size:20px;font-weight:800;letter-spacing:.3px;
}
.app-hero-line{
  display:inline-block;margin-top:14px;padding:7px 24px;
  border-radius:999px;
  background:rgba(111,10,18,.78);
  border:1px solid rgba(255,224,137,.42);
  color:#fff4c9;font-size:12px;font-weight:750;letter-spacing:1.1px;
}
@media(max-width:700px){
 .app-hero{min-height:155px}
 .app-hero-inner{padding:24px 14px 26px}
 .app-hero-kicker{font-size:9px;letter-spacing:1.2px}
 .app-hero-title{font-size:29px}
 .app-hero-subtitle{font-size:13px}
 .app-hero-line{font-size:9px;padding:6px 12px;margin-top:10px;letter-spacing:.5px}
}

/* =========================================================
   V2.5 - GIAO DIỆN QUẢN LÝ THÔN THÔNG MINH THEO MOCKUP 100%
   Sidebar + banner + khu vực nội dung
========================================================= */
.app-layout{min-height:100vh;display:flex;background:#f5f7f9}
.app-sidebar{position:fixed;left:0;top:0;bottom:0;width:258px;z-index:50;background:#fff;border-right:1px solid #e2e7ec;box-shadow:3px 0 18px rgba(22,42,57,.07);display:flex;flex-direction:column}
.sidebar-brand{min-height:92px;padding:14px 15px;display:flex;align-items:center;gap:12px;background:linear-gradient(145deg,#8d111b,#b51f29);color:#fff;border-bottom:3px solid #e1bd5b}
.sidebar-emblem{width:52px;height:52px;flex:0 0 52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#a71923;border:3px solid #f1ce68;color:#ffd85b;font-size:26px;box-shadow:0 2px 7px rgba(0,0,0,.18)}
.sidebar-title{font-size:15px;font-weight:800;letter-spacing:.2px}.sidebar-subtitle{font-size:12px;font-weight:700;margin-top:3px;color:#ffe29a}
.sidebar-nav{padding:10px 8px;overflow:auto}.sidebar-nav a{display:flex;align-items:center;gap:12px;min-height:43px;padding:9px 12px;border-radius:9px;color:#263d52;text-decoration:none;font-size:14px;font-weight:600;margin:2px 0;transition:.15s ease}.sidebar-nav a span{width:22px;text-align:center;font-size:18px;color:#38556c}.sidebar-nav a:hover{background:#f8ecee;color:#971b24}.sidebar-nav a.active{background:linear-gradient(90deg,#f8e6e8,#fff5f5);color:#a31d26;font-weight:750;border-left:4px solid #b51f29;padding-left:8px}.sidebar-nav a.active span{color:#b51f29}.sidebar-divider{height:1px;background:#e8edf1;margin:9px 12px}.sidebar-bottom{margin-top:auto;padding:16px 17px 22px;color:#bd252e;font-style:italic;font-weight:700;font-size:14px;line-height:1.5;background:linear-gradient(180deg,#fff,#f2f6f8)}.sidebar-bottom b{font-size:12px;color:#bd252e}
.app-main{width:calc(100% - 258px);margin-left:258px;min-width:0}.topbar{height:64px;background:#fff;border-bottom:1px solid #e3e8ec;display:flex;align-items:center;justify-content:flex-end;padding:0 28px}.mobile-brand{display:none}.account{display:flex;align-items:center;gap:5px;color:#4c5965;font-size:13px}.account-icon{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#e9eef2;color:#34506a;font-size:17px;margin-right:4px}.account a{color:#a51d26;text-decoration:none;font-weight:700}
.app-hero{margin:0;min-height:185px;border-radius:0;overflow:hidden;border-bottom:4px solid #dfbd59;background:#7e1119 url("quan-ly-thon-thong-minh-banner.png") center/cover no-repeat;position:relative}.app-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(91,9,16,.32),rgba(112,10,18,.03) 48%,rgba(91,9,16,.20));pointer-events:none}.app-hero-inner{position:relative;z-index:2;max-width:none;padding:31px 24px 32px;text-align:center}.app-hero-kicker{font-size:12px;font-weight:800;letter-spacing:2px;color:#f4d784}.app-hero-title{margin:5px 0 3px;font-size:42px;line-height:1.05;font-weight:900;letter-spacing:1px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.25)}.app-hero-subtitle{font-size:19px;font-weight:850;color:#fff}.app-hero-line{display:inline-block;margin-top:13px;padding:7px 24px;border-radius:999px;background:rgba(104,10,17,.84);border:1px solid rgba(255,220,116,.65);color:#fff3bd;font-size:12px;font-weight:800;letter-spacing:1px}
.container{max-width:none;padding:28px 34px 36px}.footer{margin:0 34px;padding:22px 10px;border-top:1px solid #e0e6ea}
.village-head,.title-row{margin-bottom:14px}.village-head h1,.title-row h1{font-size:28px;color:#183b58;font-weight:800}.stats-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stats-strip>div{background:#fff}.household-card{background:#fff}
/* Tổng quan giống bố cục dashboard mẫu */
.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{min-height:130px;border-top:4px solid #1b4d70;border-radius:13px;padding:24px}.card b{font-size:38px;color:#174c73}.panel{border-radius:14px}
@media(max-width:1050px){.app-sidebar{width:220px}.app-main{width:calc(100% - 220px);margin-left:220px}.stats-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-nav a{font-size:13px}.container{padding:24px}}
@media(max-width:760px){.app-sidebar{position:relative;width:100%;height:auto;bottom:auto;display:block;border-right:0;border-bottom:1px solid #ddd}.app-layout{display:block}.app-main{width:100%;margin-left:0}.sidebar-brand{min-height:66px}.sidebar-nav{display:flex;gap:5px;overflow-x:auto;padding:7px}.sidebar-nav a{flex:0 0 auto;min-height:40px;padding:8px 10px}.sidebar-nav a span{display:none}.sidebar-divider,.sidebar-bottom{display:none}.topbar{height:52px;padding:0 14px}.mobile-brand{display:block;margin-right:auto;font-size:16px;font-weight:800;color:#981c25}.account{font-size:11px}.account-icon{display:none}.app-hero{min-height:145px}.app-hero-inner{padding:22px 10px 24px}.app-hero-title{font-size:30px}.app-hero-subtitle{font-size:13px}.app-hero-kicker{font-size:9px}.app-hero-line{font-size:8px;padding:6px 12px}.container{padding:17px 12px 25px}.cards{grid-template-columns:1fr 1fr}.stats-strip{grid-template-columns:1fr 1fr}.footer{margin:0 12px}}
@media(max-width:520px){.sidebar-title{font-size:13px}.sidebar-subtitle{font-size:10px}.cards{grid-template-columns:1fr}.stats-strip{grid-template-columns:1fr 1fr}.app-hero-title{font-size:25px}.app-hero-subtitle{font-size:11px}.account span:not(.account-icon){display:none}.village-head h1,.title-row h1{font-size:23px}}

/* =========================================================
   V2.6 - Banner chuẩn theo mẫu giao diện đã duyệt
   Không chồng chữ HTML lên ảnh banner.
========================================================= */
.app-main{position:relative}
.app-hero{
  position:relative;
  margin:0;
  height:auto;
  min-height:0;
  aspect-ratio:1638 / 166;
  overflow:hidden;
  border:0;
  border-bottom:4px solid #dfbd59;
  background:#fff url("quan-ly-thon-thong-minh-banner.png") center center / 100% 100% no-repeat;
}
.app-hero:before,.app-hero:after{display:none!important}
.app-hero-inner,.app-hero-kicker,.app-hero-title,.app-hero-subtitle,.app-hero-line{display:none!important}
.hero-account{
  position:absolute;
  z-index:5;
  top:16px;
  right:26px;
  display:flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  color:#183b57;
  font-size:13px;
  font-weight:500;
  background:rgba(255,255,255,.88);
  border-radius:22px;
  box-shadow:0 2px 8px rgba(20,40,55,.06);
}
.hero-account b{font-weight:750}
.hero-account a{color:#a51d26;text-decoration:none;font-weight:700}
.hero-account-icon{
  width:28px;height:28px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:#e9eef2;color:#34506a;font-size:15px;
}
.container{padding-top:28px}

/* Font gọn, rõ hơn */
body,.btn,input,select,textarea,button{font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif}
body{font-weight:450}
h1,h2,h3,b,strong,.btn,.sidebar-title,.sidebar-subtitle{font-synthesis:none}
.sidebar-title{font-weight:750}
.sidebar-nav a{font-weight:550}

@media(max-width:760px){
  .app-hero{aspect-ratio:1638 / 166;min-height:112px}
  .hero-account{top:7px;right:8px;padding:4px 7px;font-size:10px}
  .hero-account-icon{width:23px;height:23px;font-size:12px}
  .hero-account span:nth-of-type(n+3),.hero-account a:last-child{display:none}
  .container{padding-top:17px}
}


/* V2.6.3 - PHỤC HỒI GIAO DIỆN: ảnh thương hiệu chỉ nằm ở góc Sidebar */
.app-sidebar .sidebar-brand.sidebar-brand-image{
    height:118px !important;
    min-height:118px !important;
    padding:0 !important;
    display:block !important;
    overflow:hidden !important;
    background:#a81722 !important;
    border-bottom:3px solid #dfbd59 !important;
}
.app-sidebar .sidebar-brand.sidebar-brand-image img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:fill !important;
    margin:0 !important;
    padding:0 !important;
}
.app-sidebar .sidebar-brand.sidebar-brand-image + .sidebar-nav{
    padding-top:10px !important;
}

/* Banner chính: dùng ảnh phong cảnh riêng, không dùng ảnh sidebar */
.app-main .app-hero{
    background-image:url("quan-ly-thon-thong-minh-banner.png") !important;
    background-size:100% 100% !important;
    background-position:center !important;
    background-repeat:no-repeat !important;
}
.app-main .app-hero-inner{
    display:none !important;
}

/* Không để mobile làm ảnh Sidebar thành một logo nhỏ */
@media(max-width:760px){
    .app-sidebar .sidebar-brand.sidebar-brand-image{
        height:92px !important;
        min-height:92px !important;
    }
}

/* =========================================================
   V2.7 - DÂN SỐ: bố cục theo mockup đã duyệt
   Banner chính giữ nguyên. Chỉ thiết kế phần nội dung bên dưới.
========================================================= */
.village-page-head{margin:0 0 14px}
.village-breadcrumb{display:flex;align-items:center;gap:9px;color:#72808d;font-size:13px;margin:0 0 12px}
.village-breadcrumb a{color:#607789;text-decoration:none}
.village-breadcrumb a:hover{color:#a51d26}
.village-breadcrumb b{font-weight:500;color:#6c7782}
.village-title-card{position:relative;display:flex;align-items:center;gap:15px;min-height:96px;padding:15px 20px;background:#fff;border:1px solid #e1e7ec;border-radius:12px;box-shadow:0 3px 12px rgba(25,40,52,.045)}
.village-title-icon{width:64px;height:64px;flex:0 0 64px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#d52d32;color:#fff;font-size:29px;box-shadow:0 3px 8px rgba(170,30,38,.14)}
.village-title-text{min-width:0}
.village-title-text h1{margin:0;color:#b1262d;font-size:26px;font-weight:800;line-height:1.15;letter-spacing:.2px}
.village-title-text p{margin:5px 0 0;color:#425466;font-size:14px}
.village-date{margin-left:auto;align-self:flex-start;color:#657482;font-size:13px;white-space:nowrap;padding-top:3px}
.village-back{position:absolute;right:20px;bottom:17px;padding:9px 13px;border:1px solid #e4e8ec;border-radius:8px;background:#fff;color:#536474;text-decoration:none;font-size:12px;font-weight:650}
.village-back:hover{background:#fafafa;color:#a51d26}

.village-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:16px 0 22px}
.vstat{display:flex;align-items:center;gap:15px;min-height:92px;padding:14px 18px;background:#fff;border:1px solid #e1e7ec;border-radius:12px;box-shadow:0 3px 12px rgba(25,40,52,.045);overflow:hidden}
.vstat-icon{width:50px;height:50px;flex:0 0 50px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:27px;font-weight:700}
.vstat div{min-width:0}
.vstat b{display:block;font-size:29px;line-height:1.05;font-weight:800}
.vstat div span{display:block;margin-top:5px;font-size:13px;color:#52616f}
.vstat-house{border-color:#f0d5d7}.vstat-house .vstat-icon{background:#fff0f0;color:#c62a31}.vstat-house b{color:#b52a31}
.vstat-person{border-color:#cfe1f4}.vstat-person .vstat-icon{background:#edf5ff;color:#1766bd}.vstat-person b{color:#1d5da3}
.vstat-male{border-color:#d4ebdf}.vstat-male .vstat-icon{background:#eef9f2;color:#21905a}.vstat-male b{color:#168550}
.vstat-female{border-color:#f1ddca}.vstat-female .vstat-icon{background:#fff4e9;color:#ee7111}.vstat-female b{color:#df670d}

.village-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;margin:0 0 14px}
.village-search{height:51px;display:flex;align-items:center;gap:11px;padding:0 16px;background:#fff;border:1px solid #dfe6ec;border-radius:10px;box-shadow:0 2px 8px rgba(25,40,52,.035)}
.village-search>span{font-size:26px;line-height:1;color:#71808e;transform:rotate(-20deg)}
.village-search input{max-width:none;width:100%;border:0!important;outline:0!important;box-shadow:none!important;padding:0;font-size:14px;color:#253747;background:transparent}
.village-search input::placeholder{color:#83909c}
.village-toolbar-actions{display:flex;gap:12px;align-items:center}
.village-toolbar-actions .btn{height:51px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;font-size:14px;white-space:nowrap}
.village-search-btn{background:#b82029!important;min-width:140px}
.village-add-btn{background:#1763c0!important;min-width:145px}
.village-export-btn{background:#239b5a!important;min-width:145px;color:#fff!important}

.household-list{gap:8px}
.household-card{border:1px solid #e1e7ec;border-radius:11px;box-shadow:0 2px 7px rgba(25,40,52,.035)}
.household-toggle{min-height:59px;padding:10px 15px;gap:14px}
.plus-icon{width:39px;height:39px;flex:0 0 39px;border-radius:9px;background:#fbeaec;color:#c12730;border:1px solid #f1d7d9;font-size:24px;font-weight:500}
.house-main{display:flex;flex-direction:row;align-items:center;gap:10px}
.house-main b{font-size:15px;font-weight:700;color:#1f354a}
.house-main small{padding:4px 9px;background:#f1f4f7;color:#667482;font-size:11px;border-radius:999px;font-weight:600}
.house-arrow{font-size:24px;color:#82909d;margin-left:auto}
.household-card:hover{border-color:#d8dfe5;box-shadow:0 3px 10px rgba(25,40,52,.055)}
.house-body{padding:0 16px 16px}

@media(max-width:1100px){
 .village-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .village-toolbar{grid-template-columns:1fr}
 .village-toolbar-actions{justify-content:flex-end}
}
@media(max-width:760px){
 .village-title-card{padding:13px 14px;min-height:88px}
 .village-title-icon{width:52px;height:52px;flex-basis:52px;font-size:23px}
 .village-title-text h1{font-size:20px}
 .village-title-text p{font-size:12px}
 .village-date{display:none}
 .village-back{position:static;margin-left:auto;white-space:nowrap;font-size:11px;padding:7px 9px}
 .village-stats{gap:9px;margin:12px 0 16px}
 .vstat{min-height:78px;padding:11px;gap:9px}
 .vstat-icon{width:40px;height:40px;flex-basis:40px;font-size:21px}
 .vstat b{font-size:23px}
 .vstat div span{font-size:11px}
 .village-toolbar-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .village-toolbar-actions .btn{min-width:0;width:100%;padding:0 8px;font-size:12px}
 .village-search-btn{grid-column:1/-1}
 .house-main b{font-size:14px}
 .house-main small{font-size:10px}
}
@media(max-width:500px){
 .village-stats{grid-template-columns:1fr 1fr}
 .village-title-card{gap:9px}
 .village-title-text h1{font-size:17px}
 .village-title-text p{font-size:11px}
 .village-back{display:none}
}

/* =========================================================
   V2.8 - KHÓA BỐ CỤC THEO ẢNH MẪU 1942x809
   Mục tiêu: trang chi tiết thôn giống mockup từng vùng chính.
========================================================= */
.app-sidebar{
  width:304px !important;
}
.app-main{
  width:calc(100% - 304px) !important;
  margin-left:304px !important;
}
.app-sidebar .sidebar-brand.sidebar-brand-image{
  width:304px !important;
  height:100px !important;
  min-height:100px !important;
  padding:0 !important;
  border-bottom:3px solid #dfbd59 !important;
}
.app-sidebar .sidebar-brand.sidebar-brand-image img{
  width:100% !important;
  height:100% !important;
  object-fit:fill !important;
}
.sidebar-nav{
  padding:10px 10px !important;
}
.sidebar-nav a{
  min-height:50px !important;
  padding:10px 14px !important;
  gap:14px !important;
  border-radius:10px !important;
  font-size:16px !important;
  font-weight:550 !important;
}
.sidebar-nav a span{
  width:22px !important;
  font-size:18px !important;
}
.sidebar-nav a.active{
  padding-left:10px !important;
  border-left-width:4px !important;
}
.sidebar-divider{
  margin:9px 14px !important;
}
.app-hero{
  height:188px !important;
  min-height:188px !important;
  aspect-ratio:auto !important;
  background-size:100% 100% !important;
}
.hero-account{
  top:18px !important;
  right:28px !important;
  padding:7px 13px !important;
  border-radius:24px !important;
  font-size:14px !important;
}
.hero-account-icon{
  width:31px !important;
  height:31px !important;
  font-size:16px !important;
}
.container{
  padding:18px 28px 36px !important;
}
.village-page-head{margin-bottom:14px !important}
.village-breadcrumb{
  margin-bottom:12px !important;
  font-size:13px !important;
}
.village-title-card{
  min-height:96px !important;
  padding:15px 20px !important;
  border-radius:12px !important;
}
.village-title-icon{
  width:64px !important;
  height:64px !important;
  flex-basis:64px !important;
  font-size:29px !important;
}
.village-title-text h1{
  font-size:27px !important;
}
.village-title-text p{
  font-size:14px !important;
}
.village-stats{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
  margin:16px 0 22px !important;
}
.vstat{
  min-height:92px !important;
  padding:14px 18px !important;
}
.vstat-icon{
  width:50px !important;
  height:50px !important;
  flex-basis:50px !important;
}
.vstat b{font-size:29px !important}
.village-toolbar{
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:16px !important;
}
.village-toolbar-actions{gap:12px !important}
.village-toolbar-actions .btn{
  height:51px !important;
}
.household-list{gap:8px !important}
.household-card{border-radius:11px !important}
.household-toggle{
  min-height:59px !important;
  padding:10px 15px !important;
}
.house-main b{font-size:15px !important}

@media(max-width:1100px){
 .app-sidebar{width:304px !important}
 .app-main{width:calc(100% - 304px) !important;margin-left:304px !important}
 .village-stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:760px){
 .app-sidebar{width:100% !important;}
 .app-main{width:100% !important;margin-left:0 !important}
 .app-sidebar .sidebar-brand.sidebar-brand-image{width:100% !important;height:92px !important;min-height:92px !important}
 .sidebar-nav a{font-size:14px !important;min-height:42px !important}
 .app-hero{height:auto !important;min-height:112px !important;aspect-ratio:1638 / 166 !important}
 .container{padding:17px 12px 25px !important}
}


/* V3.0 - nhận diện QUẢN LÝ THÔN THÔNG MINH */
.app-sidebar{
  background:linear-gradient(180deg,#063d62 0%,#084f78 56%,#052f4b 100%);
  border-right:0;
  box-shadow:3px 0 18px rgba(10,48,75,.15);
}
.sidebar-brand{background:#063d62;border-bottom:1px solid rgba(255,255,255,.10);padding:0;overflow:hidden}
.sidebar-brand-image{min-height:90px}
.sidebar-brand-image img{width:100%;height:90px;object-fit:cover;display:block}
.sidebar-nav a{color:#fff;border-radius:0;margin:0;min-height:43px}
.sidebar-nav a span{color:#d9edf8}
.sidebar-nav a:hover{background:rgba(255,255,255,.08);color:#fff}
.sidebar-nav a.active{background:#16b84e;color:#fff;border-left:4px solid #c8f7d7;padding-left:8px}
.sidebar-nav a.active span{color:#fff}
.sidebar-divider{background:rgba(255,255,255,.14)}
.sidebar-bottom{background:rgba(0,0,0,.08);color:#d8f4e1}
.sidebar-bottom b{color:#fff}
.app-hero{
  min-height:72px;
  border-bottom:0;
  background:#fff url("quan-ly-thon-thong-minh-banner.png") center/cover no-repeat;
}
.app-hero:after{background:linear-gradient(90deg,rgba(0,45,73,.08),rgba(255,255,255,0) 55%,rgba(0,45,73,.06))}
.hero-account{
  position:absolute;right:24px;top:18px;
  background:rgba(255,255,255,.93);
  padding:8px 12px;border-radius:8px;
  box-shadow:0 3px 10px rgba(0,0,0,.08);
  color:#174b70;
}
.hero-account a{color:#0b6fae}
.container{padding-top:22px}
.footer{color:#5e7485}
