:root{--brand:#087f70;--brand-dark:#075a50;--ink:#173c36;--muted:#6b807a;--stroke:#dce8e2;--surface:#fff;--canvas:#f3f7f5}
body{background:var(--canvas);color:var(--ink);font-family:system-ui,-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}
.app-header{background:#fff;border-bottom:1px solid var(--stroke)}.app-header-inner{max-width:1280px;margin:auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.app-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}.app-cross{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--brand);color:white;font-size:28px;flex-shrink:0}.app-brand strong{display:block;font-size:13px;letter-spacing:.02em}.app-brand small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.app-nav{display:flex;gap:4px}.app-nav a{padding:9px 14px;white-space:nowrap;border-radius:9px;font-size:13px;text-decoration:none;color:var(--muted);font-weight:600}.app-nav a:hover{background:#edf6f0;color:var(--brand)}.page-reception .app-nav a[href='/tiep-nhan'],.page-filter .app-nav a[href='/loc-excel'],.page-home .app-nav a[href='/']{background:#e5f2eb;color:var(--brand-dark)}
.ef.container,.container>.ef{max-width:1240px;margin:0 auto;padding:28px 24px 48px}.page-eyebrow{font-size:10px;letter-spacing:.15em;color:var(--brand);font-weight:700;margin:0 0 8px}.ef h1{font-size:28px;letter-spacing:-.035em;margin:0 0 8px;color:var(--ink);font-weight:700}.ef .page-intro,.ef>p{color:var(--muted);font-size:14px;line-height:1.65}.ef section{border:1px solid var(--stroke);box-shadow:0 3px 12px #143e2f03;border-radius:16px;padding:22px;margin-bottom:18px}.ef h3{color:var(--ink);font-size:16px;font-weight:650}.ef input,.ef select{border:1px solid #d7e2dc;border-radius:8px;padding:9px 11px;background:#fcfdfc;color:#23493e;font-size:14px;line-height:1.4;transition:border-color .15s,box-shadow .15s}.ef input:focus,.ef select:focus{outline:none;border-color:#29977d;box-shadow:0 0 0 3px #15947114;background:#fff}.ef label{color:#456558;font-size:12px;font-weight:600}.ef button{border-radius:8px;padding:10px 16px;background:var(--brand);font-size:13px;font-weight:650;border:1px solid transparent;box-shadow:none;min-height:38px}.ef button:hover:not(:disabled){filter:brightness(.95)}.ef button:focus-visible,.app-nav a:focus-visible{outline:3px solid #82cbb8;outline-offset:3px}.ef #cancel,.ef #reload,.ef #reset,.ef #stop{background:#fff;color:#516b60;border:1px solid var(--stroke)}.ef #export-reception,.ef #export{color:#08664f;background:#e5f3e9;border:1px solid #cce6d5}.ef .btn-danger{background:#fff0ee!important;border-color:#f4d0cb!important;color:#b43b31!important}
.ef .commune-panel{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:linear-gradient(110deg,#eef8f2,#fff);padding:18px 22px;margin:20px 0 12px}.commune-panel label{margin:0;white-space:nowrap}.commune-panel input{flex:1;max-width:600px;min-width:220px}.ef #message:empty,.ef #qrnote:empty{display:none}.ef #message:not(:empty),.ef #qrnote:not(:empty){padding:10px 14px;border-left:3px solid #75baa3;background:#eaf3ee;border-radius:0 8px 8px 0;font-size:13px;line-height:1.5}.ef #heading{margin:22px 0 12px;font-size:15px;color:#477366}.section-heading{display:flex;gap:12px;align-items:center;margin-bottom:16px}.section-number{border-radius:10px;background:#e7f3ed;color:var(--brand);font-size:13px;font-weight:700;padding:10px}.section-heading h2{font-size:18px;margin:0;letter-spacing:-.02em}.section-heading p{font-size:12px;margin:4px 0 0;color:var(--muted)}.ef .scan-toolbar{padding:12px;background:#f6f9f7;border:1px dashed #cbded2;border-radius:10px;margin-bottom:20px}.scan-toolbar label{margin:0;display:flex;flex-wrap:wrap;gap:8px}.ef input[type=file]{background:white;font-size:12px;max-width:100%}.ef input::file-selector-button{border:0;background:#eaf2ed;border-radius:5px;color:#365e4d;padding:6px 10px;margin-right:10px;cursor:pointer}.ef .fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 18px}.ef .fields label{margin:0;gap:7px}.ef .fields input{font-size:14px}.ef .form-actions{padding-top:18px;border-top:1px solid #e7eee9;gap:9px}.ef video{display:block;border-radius:12px;background:#102d27;margin:12px auto}.ef .records-card .toolbar h3{margin-right:auto}.ef #search{width:250px}.ef .scroll{border:1px solid var(--stroke);border-radius:10px}.ef table{border-collapse:separate;border-spacing:0}.ef th{background:#f1f7f3;color:#4c6f5e;font-size:11px;letter-spacing:.035em;padding:12px;border:0;border-bottom:1px solid var(--stroke)}.ef td{padding:11px 12px;border:0;border-bottom:1px solid #edf2ef;color:#365346;font-size:13px}.ef tr:last-child td{border-bottom:0}.ef tr:nth-child(even) td{background:#fafcfb}.ef tr:hover td{background:#f0f8f3}.ef td button{min-height:30px;padding:5px 12px;background:#eaf4ee;color:var(--brand-dark)}.ef #count{font-size:12px;color:var(--muted)}.ef .ef-inputs{gap:18px;margin-top:20px}.ef .file{padding-top:14px}.ef .file-options{padding:6px 0}.ef .mapping{padding:12px;background:#f4f8f5;border-radius:10px}.ef .file h3{font-size:14px}.page-home .hero{padding-top:60px}.page-home .card{border-radius:22px}.page-home .section-title{font-size:13px;color:var(--muted)}
@media(min-width:1400px){.ef .fields{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:960px){.ef .fields{grid-template-columns:repeat(3,minmax(0,1fr))}.app-header-inner{flex-wrap:wrap;gap:12px}.ef .records-card .toolbar{gap:8px}}@media(max-width:680px){.app-header-inner{padding:14px 16px}.app-brand strong{font-size:11px}.app-cross{width:38px;height:38px}.app-nav{width:100%;border-top:1px solid #edf2ef;padding-top:10px}.app-nav a{flex:1;text-align:center;padding:8px 6px}.ef.container,.container>.ef{padding:20px 12px 32px}.ef h1{font-size:25px}.ef section{padding:16px;border-radius:12px}.ef .fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ef .fields input,.ef input,.ef select{font-size:16px}.ef .commune-panel{padding:15px;gap:9px}.commune-panel input{min-width:0;max-width:none;width:100%;flex-basis:100%}.commune-panel button{width:100%}.ef .scan-toolbar{align-items:stretch}.scan-toolbar label{width:100%}.ef .form-actions{position:sticky;bottom:0;background:#fff;padding:12px 0;margin-bottom:-4px;z-index:2}.ef .form-actions button{flex:1}.ef #search{width:100%}.ef .records-card .toolbar h3{width:100%}.ef .ef-inputs{grid-template-columns:1fr}.section-heading p{font-size:12px}}@media(max-width:380px){.ef .fields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.page-quick .app-nav a[href="/tiep-nhan"]{background:transparent;color:inherit}.page-quick .app-nav a[href="/nhap-nhanh"]{background:#e3f3ec;color:#087e70}.app-nav{flex-wrap:wrap}

.identity-paste{margin:16px 0;padding:16px;border:1px solid var(--stroke);border-radius:10px}.identity-paste label{display:block;margin-bottom:8px}.identity-paste textarea{display:block;width:100%;box-sizing:border-box;resize:vertical;padding:12px;border:1px solid #d7e2dc;border-radius:8px;font:inherit}.identity-paste p{font-size:13px;color:var(--muted)}

.ef .fields label.field-attention{background:#fff7db;border:1px solid #d69b27;border-radius:10px;padding:10px;color:#754600;font-weight:700}.ef .fields .field-attention input{background:#fffdf5;border-color:#b98219}.ef .fields .field-attention input:focus{background:#fff;border-color:#946200;box-shadow:0 0 0 3px #d69b2733}

.online-count{display:inline-flex;align-items:center;white-space:nowrap;flex-shrink:0;padding:6px 10px;border-radius:20px;background:#e7f4ee;color:#176447;font-size:12px;font-weight:600}

.ef .commune-panel[hidden]{display:none}

.ef .fields input[aria-invalid="true"]{border-color:#c7352c;background:#fff1f0}.ef .fields .field-error{color:#b42318;font-size:12px;font-weight:500}.ef .fields .field-error:empty{display:none}
