
/* ============================================================
   NÔNG THÔN MỚI XÃ TUẦN GIÁO - UI v1.4.00
   Giao diện nghiệp vụ: rõ ràng, mật độ vừa, ưu tiên bảng/hồ sơ.
   ============================================================ */
:root{
  --ntm-green-950:#0b2f24;
  --ntm-green-900:#103d2d;
  --ntm-green-800:#15543b;
  --ntm-green-700:#1e6a49;
  --ntm-green-600:#2f805a;
  --ntm-green-100:#e8f2ec;
  --ntm-green-050:#f4f8f5;
  --ntm-blue:#276899;
  --ntm-amber:#a76d12;
  --ntm-red:#b53a3a;
  --ntm-orange:#b9651b;
  --ntm-ink:#1f2f28;
  --ntm-muted:#67776f;
  --ntm-line:#dce5df;
  --ntm-line-strong:#cbd8d0;
  --ntm-bg:#f3f6f4;
  --ntm-white:#fff;
  --ntm-sidebar:256px;
  --ntm-radius:8px;
  --ntm-shadow:0 1px 3px rgba(17,46,34,.08);
}
.ntm-public-shell,.ntm-app{font-family:Arial,"Helvetica Neue",sans-serif;color:var(--ntm-ink);line-height:1.5}
.ntm-public-shell *,.ntm-app *{box-sizing:border-box}
.ntm-public-shell{max-width:1440px;margin:0 auto;padding:18px 12px 48px}

/* ---------- Public navigation ---------- */
.ntm-public-nav{display:flex;gap:4px;flex-wrap:wrap;margin:0 0 16px;padding:6px;border:1px solid var(--ntm-line);background:#fff}
.ntm-public-nav a{padding:8px 12px;color:var(--ntm-green-800);font-weight:700;text-decoration:none;border-radius:5px}
.ntm-public-nav a:hover{background:var(--ntm-green-050);text-decoration:none}

/* ---------- App shell: loại bỏ toàn bộ chrome website không cần thiết ---------- */
.ntm-app{min-height:100vh;background:var(--ntm-bg);display:flex}
.ntm-app-sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--ntm-sidebar);background:var(--ntm-green-950);color:#fff;display:flex;flex-direction:column;z-index:1000;box-shadow:4px 0 18px rgba(5,30,21,.10)}
.ntm-app-brand{height:72px;padding:13px 16px;display:flex;align-items:center;gap:11px;border-bottom:1px solid rgba(255,255,255,.11)}
.ntm-app-brand-mark{width:38px;height:38px;background:#fff;color:var(--ntm-green-800);display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:18px}
.ntm-app-brand b{display:block;font-size:13px;letter-spacing:.06em}.ntm-app-brand span{display:block;font-size:12px;color:#c9d9d0;margin-top:2px}
.ntm-app-menu{padding:12px 9px;overflow:auto;flex:1}
.ntm-app-menu-title{padding:13px 10px 5px;text-transform:uppercase;font-size:10px;letter-spacing:.11em;color:#8fb4a2;font-weight:800}
.ntm-app-menu-item{height:39px;padding:0 10px;display:flex;align-items:center;gap:10px;color:#dfe9e3;text-decoration:none;border-radius:6px;margin:2px 0;font-size:13px;font-weight:600}
.ntm-app-menu-item i{width:18px;text-align:center;color:#9fc3b1}
.ntm-app-menu-item:hover{background:rgba(255,255,255,.08);color:#fff;text-decoration:none}
.ntm-app-menu-item.active{background:#fff;color:var(--ntm-green-900);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.ntm-app-menu-item.active i{color:var(--ntm-green-700)}
.ntm-app-sidebar-footer{padding:10px 12px 14px;border-top:1px solid rgba(255,255,255,.10)}
.ntm-app-sidebar-footer a{display:block;color:#c7d8cf;padding:7px 5px;font-size:12px;text-decoration:none}.ntm-app-sidebar-footer a:hover{color:#fff}
.ntm-app-sidebar-footer i{width:18px}

.ntm-app-main{margin-left:var(--ntm-sidebar);width:calc(100% - var(--ntm-sidebar));min-width:0}
.ntm-app-topbar{height:72px;background:#fff;border-bottom:1px solid var(--ntm-line);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 24px;position:sticky;top:0;z-index:900}
.ntm-app-page-title span{display:block;color:var(--ntm-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.ntm-app-page-title h1{font-size:19px;margin:1px 0 0;color:var(--ntm-green-950);font-weight:700;line-height:1.2}
.ntm-app-top-actions{display:flex;align-items:center;gap:14px}
.ntm-year-chip{padding:6px 9px;border:1px solid var(--ntm-line);background:var(--ntm-green-050);font-size:12px;color:var(--ntm-green-800);border-radius:6px;font-weight:700}
.ntm-user-menu{display:flex;align-items:center;gap:9px;max-width:330px}
.ntm-user-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ntm-green-800);color:#fff;font-weight:800}
.ntm-user-meta b,.ntm-user-meta span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ntm-user-meta b{font-size:12px}.ntm-user-meta span{font-size:10px;color:var(--ntm-muted);max-width:260px}
.ntm-app-content{padding:20px 24px 42px;max-width:1700px;margin:0 auto}
.ntm-app .ntm-subnav,.ntm-app .ntm-user-strip{display:none!important}
.ntm-app .ntm-app-content>.ntm-hero:first-of-type{display:none}
.ntm-security-warning{display:flex;align-items:center;gap:12px;background:#fff7e5;border:1px solid #e9c979;border-left:4px solid #c38716;padding:10px 12px;margin-bottom:14px;border-radius:6px;color:#614712}
.ntm-security-warning i{font-size:20px}.ntm-security-warning div{flex:1}.ntm-security-warning b,.ntm-security-warning span{display:block}.ntm-security-warning span{font-size:12px;margin-top:2px}.ntm-security-warning a{font-weight:700;font-size:12px;color:#76510a}

/* ---------- Structure ---------- */
.ntm-grid{display:grid;gap:12px}.ntm-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ntm-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ntm-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ntm-grid-main{grid-template-columns:minmax(0,2fr) minmax(320px,.82fr);align-items:start}
.ntm-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}
.ntm-card{background:#fff;border:1px solid var(--ntm-line);border-radius:var(--ntm-radius);padding:14px;margin-bottom:12px;box-shadow:var(--ntm-shadow)}
.ntm-card-flat{padding:0;overflow:hidden}.ntm-card h2,.ntm-card h3{margin-top:0;color:#213f32}.ntm-card h2{font-size:17px}.ntm-card h3{font-size:14px}
.ntm-stat{min-height:96px;border-top:3px solid var(--ntm-green-700)}.ntm-stat-warn{border-top-color:#c08728}.ntm-stat-info{border-top-color:#4a83ad}
.ntm-num{font-size:27px;line-height:1.05;font-weight:800;color:var(--ntm-green-800);margin-bottom:5px}.ntm-stat-title{font-weight:700;font-size:13px;color:#355347}
.ntm-code{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#718078;font-weight:800;margin-bottom:4px}.ntm-meta,.ntm-small{font-size:11.5px;color:var(--ntm-muted);margin-top:4px}
.ntm-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:19px 0 9px}.ntm-section-head-first{margin-top:0}.ntm-section-head h2{margin:0;color:#213f32;font-size:17px}.ntm-section-head p{margin:2px 0 0;color:var(--ntm-muted);font-size:12px}.ntm-pill{padding:5px 8px;background:var(--ntm-green-100);color:var(--ntm-green-800);font-size:11px;font-weight:700;border-radius:5px;white-space:nowrap}

/* ---------- Hero: public pages only ---------- */
.ntm-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:20px;border:1px solid var(--ntm-line);background:#fff;margin-bottom:14px;border-left:4px solid var(--ntm-green-700)}
.ntm-hero h1{margin:1px 0 6px;font-size:24px;line-height:1.22;color:var(--ntm-green-950)}.ntm-hero p{margin:0;color:#586b62;max-width:900px}.ntm-eyebrow{font-size:10px;letter-spacing:.09em;font-weight:800;color:var(--ntm-green-700);margin-bottom:5px}
.ntm-live{white-space:nowrap;padding:6px 8px;border-radius:5px;background:var(--ntm-green-050);border:1px solid var(--ntm-line);font-size:11px;color:#4e685b}

/* ---------- Tables ---------- */
.ntm-table-wrap{overflow:auto;background:#fff}.ntm-table{width:100%;border-collapse:collapse;min-width:960px;font-size:12px}
.ntm-table th{background:#eef3f0;text-align:left;padding:9px 10px;border-bottom:1px solid var(--ntm-line-strong);color:#2b4a3c;position:sticky;top:0;z-index:1;font-size:11px;text-transform:none}
.ntm-table td{padding:9px 10px;border-bottom:1px solid #edf1ee;vertical-align:top}.ntm-table tr:hover td{background:#f9fbfa}
.ntm-table tbody tr:last-child td{border-bottom:0}
.ntm-table a{color:#1d5e83}

/* ---------- Status ---------- */
.ntm-badge{display:inline-block;padding:3px 7px;border-radius:4px;font-size:10.5px;font-weight:700;white-space:nowrap;border:1px solid transparent}
.ntm-badge.success{background:#e6f3ea;color:#176039;border-color:#c6e1cf}.ntm-badge.warning{background:#fff4d9;color:#805b08;border-color:#edd69d}.ntm-badge.danger{background:#fae8e8;color:#9c2929;border-color:#ebc2c2}
.ntm-badge.risk{background:#fcebdd;color:#964b11;border-color:#ecc7a8}.ntm-badge.info{background:#e8f1f8;color:#2a5d82;border-color:#c9ddeb}.ntm-badge.muted{background:#eef1ef;color:#657169;border-color:#dde3df}.ntm-badge.neutral{background:#f1f2f3;color:#5d6267;border-color:#dfe1e3}

/* ---------- Buttons/forms ---------- */
.ntm-btn{display:inline-block;padding:7px 10px;border:1px solid #bbc9c0;background:#fff;color:#214d38;border-radius:5px;text-decoration:none;font-weight:700;font-size:12px;cursor:pointer;line-height:1.3}
.ntm-btn:hover{background:#f6f9f7;text-decoration:none;color:#153c2a}.ntm-btn-primary{background:var(--ntm-green-800);border-color:var(--ntm-green-800);color:#fff}.ntm-btn-primary:hover{background:var(--ntm-green-900);color:#fff}
.ntm-btn-warning{background:#fff3d4;border-color:#e2c77e;color:#725207}.ntm-btn-sm{padding:4px 7px;font-size:10.5px}.ntm-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}
.ntm-form label{display:block;font-weight:700;font-size:12px;margin-bottom:10px;color:#324d41}.ntm-form input,.ntm-form select,.ntm-form textarea,.ntm-mini-form input,.ntm-mini-form select,.ntm-mini-form textarea{display:block;width:100%;margin-top:5px;padding:8px 9px;border:1px solid #cbd6cf;border-radius:5px;background:#fff;font-size:12px}
.ntm-form input:focus,.ntm-form select:focus,.ntm-form textarea:focus{border-color:#5b9275;outline:0;box-shadow:0 0 0 2px rgba(47,128,90,.10)}
.ntm-check{display:flex!important;align-items:center;gap:7px}.ntm-check input{width:auto!important;margin:0!important}

/* ---------- Dashboard criteria ---------- */
.ntm-progress,.ntm-mini-progress{height:6px;background:#e9eeeb;overflow:hidden;margin:8px 0;border-radius:2px}.ntm-progress i,.ntm-mini-progress i{display:block;height:100%;background:var(--ntm-green-600)}
.ntm-mini-progress{width:90px;height:5px;margin:2px 0 4px}
.ntm-criteria-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}
.ntm-criterion-card{display:block;text-decoration:none;color:inherit;transition:border-color .12s ease,box-shadow .12s ease}
.ntm-criterion-card:hover{border-color:#9ebbaa;box-shadow:0 3px 10px rgba(25,57,43,.07);text-decoration:none;color:inherit}
.ntm-criterion-top{display:flex;justify-content:space-between;gap:10px}.ntm-criterion-top h3{font-size:14px;line-height:1.35;margin:0}.ntm-circle{min-width:52px;height:32px;border-radius:5px;display:flex;align-items:center;justify-content:center;background:var(--ntm-green-050);color:var(--ntm-green-800);font-weight:800;font-size:11px;border:1px solid #d5e4da}
.ntm-circle-lg{min-width:66px;height:38px;font-size:13px}.ntm-criterion-meta{display:flex;gap:11px;flex-wrap:wrap;font-size:10.5px;color:#63746b}.ntm-border-danger{border-left:3px solid #c35454}.ntm-border-warning{border-left:3px solid #bf8529}.ntm-border-success{border-left:3px solid #3d8a5e}.ntm-border-info{border-left:3px solid #5f8caf}

/* ---------- Alerts ---------- */
.ntm-alert{padding:10px 12px;border-radius:5px;margin-bottom:12px;border:1px solid;font-size:12px}.ntm-alert-success{background:#edf8f0;border-color:#c1dfca;color:#185b32}.ntm-alert-warning{background:#fff8e6;border-color:#e8d391;color:#6e520b}.ntm-alert-danger{background:#fff0f0;border-color:#e9bdbd;color:#852323}.ntm-alert-info{background:#eef5fa;border-color:#c3d9e9;color:#275778}

/* ---------- Priority/list ---------- */
.ntm-priority-list{padding:4px 12px}.ntm-priority-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1ee}.ntm-priority-item:last-child{border-bottom:0}
.ntm-priority-code{width:34px;height:34px;border-radius:5px;background:#edf4ef;display:flex;align-items:center;justify-content:center;font-weight:800;color:#286344}.ntm-priority-content b{font-size:12px;line-height:1.35;display:block}
.ntm-empty,.ntm-empty-state{text-align:center;color:#76847d;padding:24px!important}.ntm-empty-state{display:flex;flex-direction:column;gap:3px}
.ntm-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ntm-list>div{padding:9px;background:#f6f8f7;border:1px solid #edf1ee;border-radius:5px}.ntm-list b{display:block;font-size:17px;color:var(--ntm-green-800)}.ntm-list span{font-size:10.5px;color:#687a70}.ntm-list-compact{grid-template-columns:1fr}.ntm-list-compact>div{display:flex;justify-content:space-between;align-items:center}.ntm-list-compact b{font-size:14px}.ntm-list-compact span{text-align:right}
.ntm-step{display:flex;align-items:center;gap:9px;padding:7px 0}.ntm-step b{width:25px;height:25px;border-radius:4px;display:flex;align-items:center;justify-content:center;background:var(--ntm-green-800);color:#fff;font-size:11px}
.ntm-target{padding:10px;background:#f4f8f5;border:1px solid #e2ebe5;border-radius:5px;color:#264b39}.ntm-review-box{border-left:3px solid #6b97b7}.ntm-public-box{display:flex;justify-content:space-between;align-items:center;gap:14px;border-left:3px solid #3f8c60}

/* ---------- v1.2/v1.3 dossier helpers ---------- */
.ntm-checklist{display:grid;gap:7px}.ntm-check-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:9px;align-items:start;padding:10px;border:1px solid #e0e7e2;border-radius:5px;background:#fff}.ntm-check-item.done{border-left:3px solid #4c9a68}.ntm-check-item.missing{border-left:3px solid #c45252}.ntm-check-icon{width:26px;height:26px;border-radius:4px;display:flex;align-items:center;justify-content:center;background:#eef3f0;font-weight:800}
.ntm-fieldset{padding:10px;border:1px solid #d9e3dc;border-radius:5px;margin-bottom:10px;background:#fafcfb}.ntm-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}
.ntm-dossier-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:12px 14px;border-bottom:1px solid var(--ntm-line)}.ntm-dossier-toolbar h3{margin:0}.ntm-details summary{cursor:pointer;color:#275c43}.ntm-mini-form{padding:9px 0}.ntm-inline-form{display:inline}.ntm-link-btn{border:0;background:transparent;padding:2px 3px;color:#24568d;font-weight:700;font-size:11px;cursor:pointer}.ntm-link-success{color:#176436}.ntm-link-warn{color:#9a4c00}

/* ---------- Thôn/bản ---------- */
.ntm-village-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.ntm-village-card{display:block;text-decoration:none;color:inherit;min-height:146px}.ntm-village-card:hover{text-decoration:none;color:inherit;border-color:#9ebbaa}.ntm-village-card.active{border:2px solid var(--ntm-green-700);background:#fbfdfc}
.ntm-village-card-top{display:flex;justify-content:space-between;gap:7px;align-items:flex-start}.ntm-village-card h3{margin:0;font-size:14px;line-height:1.3}.ntm-village-metrics{display:flex;gap:9px;flex-wrap:wrap;font-size:10.5px;color:#61766b}.ntm-village-metrics b{color:var(--ntm-green-800)}
.ntm-village-contact-box{border-left:3px solid #4c7fa3}.ntm-contact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ntm-contact-item{padding:10px;border:1px solid #dfe7e2;border-radius:5px;background:#fbfdfc}.ntm-contact-item.primary{border-color:#8db69d;background:#f1f8f3}.ntm-contact-phone{font-weight:700;color:#244f3a;margin-top:6px}

/* ---------- 28 x 43 matrix ---------- */
.ntm-matrix-legend{display:flex;gap:14px;flex-wrap:wrap;align-items:center;background:#fff;border:1px solid var(--ntm-line);padding:8px 10px;margin-bottom:10px;font-size:10.5px}
.ntm-matrix-legend span{display:flex;align-items:center;gap:5px}.ntm-matrix-dot{width:11px;height:11px;border-radius:2px;background:#e4e8e5;border:1px solid #cfd7d2}
.ntm-matrix-dot.met{background:#d7efdf;border-color:#8bc59e}.ntm-matrix-dot.self_met{background:#dcecf7;border-color:#90bad6}.ntm-matrix-dot.in_progress{background:#fff0c9;border-color:#ddbd63}.ntm-matrix-dot.not_met{background:#f6d9d9;border-color:#d89191}.ntm-matrix-dot.at_risk{background:#f9e2cc;border-color:#dcaa77}
.ntm-matrix-card{border-radius:5px}.ntm-matrix-wrap{overflow:auto;max-height:calc(100vh - 205px);position:relative}
.ntm-matrix-table{border-collapse:separate;border-spacing:0;min-width:2500px;width:max-content;font-size:10px;background:#fff}
.ntm-matrix-table th,.ntm-matrix-table td{border-right:1px solid #e2e8e4;border-bottom:1px solid #e2e8e4;text-align:center;height:34px;padding:4px}
.ntm-matrix-table th{position:sticky;top:0;z-index:8;background:#e9f0ec;color:#2c4a3c;font-weight:800}
.ntm-matrix-table .ntm-matrix-code-row th{top:34px;background:#f5f8f6;z-index:8;min-width:48px}
.ntm-matrix-table .ntm-matrix-group-row th{height:34px}.ntm-matrix-table .sticky-col{position:sticky;z-index:12;background:#fff}.ntm-matrix-table thead .sticky-col{background:#e9f0ec;z-index:15}
.ntm-matrix-table .sticky-index{left:0;min-width:44px;width:44px}.ntm-matrix-table .sticky-village{left:44px;min-width:190px;width:190px;text-align:left}.ntm-matrix-table .summary-col{min-width:48px;background:#f7faf8;font-weight:700}.ntm-matrix-table .summary-col span{display:block;font-size:9px;color:#728077}
.ntm-matrix-cell{width:48px;min-width:48px;padding:0!important}.ntm-matrix-cell a{display:flex;width:100%;height:34px;align-items:center;justify-content:center;text-decoration:none;font-size:15px;font-weight:800;color:#68766e}
.ntm-matrix-cell.met{background:#e7f5eb}.ntm-matrix-cell.met a{color:#17623a}.ntm-matrix-cell.self_met{background:#e9f3fa}.ntm-matrix-cell.self_met a{color:#2b658d}.ntm-matrix-cell.in_progress{background:#fff5d8}.ntm-matrix-cell.in_progress a{color:#8a650e}.ntm-matrix-cell.not_met{background:#fae7e7}.ntm-matrix-cell.not_met a{color:#a22d2d}.ntm-matrix-cell.at_risk{background:#fbead9}.ntm-matrix-cell.at_risk a{color:#a05417}.ntm-matrix-cell.not_updated{background:#f5f6f5}

/* ---------- Existing specialized sections ---------- */
.ntm-kpi-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px}.ntm-kpi-form{padding-left:16px;border-left:1px solid #e3e9e5}.ntm-kpi-info h3{margin-bottom:4px}
.ntm-log-list{display:grid;gap:7px}.ntm-log-item{border-left:2px solid #9cb4a6;padding:7px 10px;background:#fafcfb}.ntm-log-item b{font-size:11px}
.ntm-period-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ntm-snapshot-card{border-left:3px solid #5e7b6b}.ntm-snapshot-card.locked{border-left-color:#3f8a5c}.ntm-snapshot-hash{font-family:monospace;font-size:10px;word-break:break-all;background:#f3f5f4;padding:6px}
.ntm-legal-card{border-left:3px solid #6c87a0}.ntm-legal-title{font-size:14px;font-weight:700}.ntm-legal-ref{font-size:11px;color:#5d6f66}.ntm-unit-table .ntm-mini-progress{min-width:90px}

/* ---------- Public main ---------- */
.ntm-public-shell .ntm-kpis{margin-top:0}

/* ---------- Responsive ---------- */
@media(max-width:1250px){
  .ntm-village-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ntm-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1100px){
  :root{--ntm-sidebar:218px}
  .ntm-grid-main{grid-template-columns:1fr}
  .ntm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ntm-kpi-row{grid-template-columns:1fr}.ntm-kpi-form{border-left:0;padding-left:0;border-top:1px solid #e3e9e5;padding-top:12px}
}
@media(max-width:800px){
  .ntm-app-sidebar{position:relative;width:100%;height:auto}.ntm-app{display:block}.ntm-app-main{margin-left:0;width:100%}.ntm-app-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.ntm-app-menu-title{grid-column:1/-1}
  .ntm-app-topbar{position:relative;padding:8px 12px;height:auto;min-height:68px}.ntm-user-meta{display:none}.ntm-app-content{padding:13px}
  .ntm-kpis,.ntm-criteria-dashboard,.ntm-grid-2,.ntm-grid-3,.ntm-grid-4,.ntm-village-grid,.ntm-contact-grid,.ntm-period-grid{grid-template-columns:1fr}
  .ntm-hero{display:block}.ntm-live{display:inline-block;margin-top:10px}.ntm-table{min-width:820px}.ntm-list{grid-template-columns:1fr}.ntm-section-head{display:block}.ntm-pill{display:inline-block;margin-top:6px}
}


/* ============================================================
   v1.4.01 - PALETTE TINH CHỈNH
   Xanh slate + xanh NTM + xám hành chính
   Mục tiêu: tương phản cao, bớt tối, bớt xanh dương lạc tông.
   ============================================================ */
:root{
  --ntm-green-950:#173B3F;
  --ntm-green-900:#1C4647;
  --ntm-green-800:#245B50;
  --ntm-green-700:#2E6E59;
  --ntm-green-600:#3F8167;
  --ntm-green-100:#E8F1EC;
  --ntm-green-050:#F4F7F5;

  --ntm-blue:#3D667A;
  --ntm-amber:#A8792A;
  --ntm-red:#A94040;
  --ntm-orange:#A85F2A;

  --ntm-ink:#27343A;
  --ntm-muted:#6C787D;
  --ntm-line:#DDE3E1;
  --ntm-line-strong:#CCD5D2;
  --ntm-bg:#F5F7F8;
  --ntm-white:#FFFFFF;
}

/* Sidebar: bớt đen, tăng độ tương phản chữ */
.ntm-app-sidebar{
  background:#173B3F !important;
  box-shadow:3px 0 14px rgba(26,55,58,.12) !important;
}
.ntm-app-brand{
  background:#143538 !important;
  border-bottom-color:rgba(255,255,255,.12) !important;
}
.ntm-app-brand-mark{
  background:#EEF4F1 !important;
  color:#245B50 !important;
}
.ntm-app-brand b{
  color:#FFFFFF !important;
}
.ntm-app-brand span{
  color:#C7D7D2 !important;
}

/* Theme gốc đang kéo link về xanh dương, ép lại toàn bộ menu */
.ntm-app-sidebar a,
.ntm-app-menu-item,
.ntm-app-menu-item:link,
.ntm-app-menu-item:visited,
.ntm-app-menu-item:hover,
.ntm-app-sidebar-footer a,
.ntm-app-sidebar-footer a:link,
.ntm-app-sidebar-footer a:visited{
  color:#E6EFEC !important;
}
.ntm-app-menu-item i{
  color:#A9C4BC !important;
}
.ntm-app-menu-title{
  color:#AFC6C0 !important;
}
.ntm-app-menu-item:hover{
  background:#214C4C !important;
  color:#FFFFFF !important;
}
.ntm-app-menu-item:hover i{
  color:#DDEAE5 !important;
}
.ntm-app-menu-item.active,
.ntm-app-menu-item.active:link,
.ntm-app-menu-item.active:visited{
  background:#2D6759 !important;
  color:#FFFFFF !important;
  box-shadow:none !important;
  border-left:3px solid #D6B36A !important;
  padding-left:7px !important;
}
.ntm-app-menu-item.active i{
  color:#FFFFFF !important;
}
.ntm-app-sidebar-footer{
  background:#143538 !important;
  border-top-color:rgba(255,255,255,.12) !important;
}
.ntm-app-sidebar-footer a:hover{
  color:#FFFFFF !important;
  background:rgba(255,255,255,.06) !important;
}

/* Topbar và nền: trung tính hơn */
.ntm-app{
  background:#F5F7F8 !important;
}
.ntm-app-topbar{
  background:#FFFFFF !important;
  border-bottom:1px solid #DDE3E1 !important;
  box-shadow:0 1px 0 rgba(31,52,50,.02) !important;
}
.ntm-app-page-title span{
  color:#788486 !important;
}
.ntm-app-page-title h1{
  color:#173B3F !important;
}
.ntm-year-chip{
  background:#F1F5F3 !important;
  border-color:#D8E1DE !important;
  color:#245B50 !important;
}
.ntm-user-avatar{
  background:#2E6E59 !important;
  color:#FFFFFF !important;
}
.ntm-user-meta b{
  color:#25343A !important;
}
.ntm-user-meta span{
  color:#718084 !important;
}

/* Nội dung chính */
.ntm-app-content{
  background:#F5F7F8 !important;
}
.ntm-card{
  background:#FFFFFF !important;
  border-color:#DDE3E1 !important;
  box-shadow:0 1px 2px rgba(33,50,46,.04) !important;
}
.ntm-card h2,
.ntm-card h3,
.ntm-section-head h2{
  color:#253A36 !important;
}
.ntm-code{
  color:#6D7977 !important;
}
.ntm-small,
.ntm-meta,
.ntm-section-head p{
  color:#6C787D !important;
}

/* KPI: không dùng quá nhiều xanh */
.ntm-stat{
  border-top-color:#487968 !important;
}
.ntm-stat-warn{
  border-top-color:#B68738 !important;
}
.ntm-stat-info{
  border-top-color:#587B8D !important;
}
.ntm-num{
  color:#245B50 !important;
}
.ntm-stat-title{
  color:#3A4D49 !important;
}

/* Bảng: header xám xanh rất nhẹ, hover rõ nhưng không chói */
.ntm-table{
  color:#27343A !important;
}
.ntm-table th{
  background:#EDF1F0 !important;
  color:#344A45 !important;
  border-bottom-color:#CBD5D2 !important;
}
.ntm-table td{
  border-bottom-color:#E8EDEA !important;
}
.ntm-table tbody tr:nth-child(even) td{
  background:#FCFDFD !important;
}
.ntm-table tbody tr:hover td{
  background:#F2F6F4 !important;
}
.ntm-table a:not(.ntm-btn):not(.ntm-link-btn){
  color:#2F6256 !important;
}

/* Progress */
.ntm-progress,
.ntm-mini-progress{
  background:#E5EAE8 !important;
}
.ntm-progress i,
.ntm-mini-progress i{
  background:#4B886F !important;
}

/* Badge: giảm màu neon, tăng cảm giác hành chính */
.ntm-badge.success{
  background:#E5F0E9 !important;
  color:#286044 !important;
  border-color:#C6DACD !important;
}
.ntm-badge.warning{
  background:#F7F0DF !important;
  color:#806024 !important;
  border-color:#E2D2AA !important;
}
.ntm-badge.danger{
  background:#F6E7E7 !important;
  color:#933E3E !important;
  border-color:#E2C1C1 !important;
}
.ntm-badge.risk{
  background:#F5E9DF !important;
  color:#8D552D !important;
  border-color:#DEC7B4 !important;
}
.ntm-badge.info{
  background:#E8EFF2 !important;
  color:#46677A !important;
  border-color:#CCDCE3 !important;
}
.ntm-badge.muted,
.ntm-badge.neutral{
  background:#EEF1F0 !important;
  color:#667270 !important;
  border-color:#DCE3E0 !important;
}

/* Các nút thao tác trong bảng phải đồng nhất, không còn xanh Bootstrap */
.ntm-btn,
.ntm-btn:link,
.ntm-btn:visited{
  border-color:#B8C8C1 !important;
  background:#FFFFFF !important;
  color:#285F50 !important;
  box-shadow:none !important;
}
.ntm-btn:hover{
  background:#EEF5F1 !important;
  border-color:#83A797 !important;
  color:#1F5044 !important;
}
.ntm-btn-primary,
.ntm-btn-primary:link,
.ntm-btn-primary:visited{
  background:#2E6E59 !important;
  border-color:#2E6E59 !important;
  color:#FFFFFF !important;
}
.ntm-btn-primary:hover{
  background:#245B50 !important;
  border-color:#245B50 !important;
  color:#FFFFFF !important;
}
.ntm-btn-warning{
  background:#F7F0DF !important;
  border-color:#D8C08B !important;
  color:#7C5B1C !important;
}

/* Các nút Cập nhật / Minh chứng trong cột xử lý */
.ntm-table td .ntm-btn,
.ntm-table td a.ntm-btn{
  min-width:62px !important;
  text-align:center !important;
  border-color:#AFC5BB !important;
  color:#285F50 !important;
  background:#FBFDFC !important;
}
.ntm-table td .ntm-btn:hover,
.ntm-table td a.ntm-btn:hover{
  background:#E8F2ED !important;
  border-color:#739B89 !important;
}

/* Checklist / priority */
.ntm-priority-code{
  background:#EAF1ED !important;
  color:#2D6759 !important;
}
.ntm-border-danger{border-left-color:#AD5757 !important}
.ntm-border-warning{border-left-color:#B9893A !important}
.ntm-border-success{border-left-color:#4F816B !important}
.ntm-border-info{border-left-color:#658193 !important}

/* Alerts */
.ntm-alert-success{
  background:#EDF5F0 !important;
  border-color:#C6DACE !important;
  color:#28583F !important;
}
.ntm-alert-warning{
  background:#F9F3E5 !important;
  border-color:#E1D0A8 !important;
  color:#705522 !important;
}
.ntm-alert-danger{
  background:#F7EAEA !important;
  border-color:#E3C1C1 !important;
  color:#853737 !important;
}
.ntm-alert-info{
  background:#EDF2F4 !important;
  border-color:#CCD9DF !important;
  color:#456373 !important;
}

/* Matrix */
.ntm-matrix-table th{
  background:#E8EEEC !important;
  color:#334B45 !important;
}
.ntm-matrix-table .ntm-matrix-code-row th{
  background:#F3F6F5 !important;
}
.ntm-matrix-cell.met{background:#E4F0E8 !important}
.ntm-matrix-cell.self_met{background:#E8EFF2 !important}
.ntm-matrix-cell.in_progress{background:#F7F0DE !important}
.ntm-matrix-cell.not_met{background:#F5E5E5 !important}
.ntm-matrix-cell.at_risk{background:#F4E8DE !important}
.ntm-matrix-cell.not_updated{background:#F1F3F2 !important}

/* Public */
.ntm-public-nav a{
  color:#285F50 !important;
}
.ntm-public-nav a:hover{
  background:#EEF4F1 !important;
}


/* ============================================================
   v1.5.00 - Lãnh đạo, giao việc, thông báo, đối chiếu
   ============================================================ */
.ntm-notify-button{position:relative;width:34px;height:34px;border:1px solid var(--ntm-line);background:#fff;color:#4c625a!important;display:flex;align-items:center;justify-content:center;border-radius:6px;text-decoration:none!important}.ntm-notify-button:hover{background:#f1f5f3;color:#245b50!important}.ntm-notify-button b{position:absolute;right:-5px;top:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#a94040;color:#fff;font-size:9px;display:flex;align-items:center;justify-content:center;border:2px solid #fff}
.ntm-leader-header{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid var(--ntm-line);border-left:4px solid #2e6e59;padding:16px 18px;margin-bottom:13px}.ntm-leader-header h2{margin:1px 0 4px;font-size:20px;color:#203d35}.ntm-leader-header p{margin:0;color:#687873;font-size:12px}.ntm-leader-score{text-align:right;min-width:130px}.ntm-leader-score b{display:block;font-size:30px;color:#245b50}.ntm-leader-score span{font-size:11px;color:#6c787d}
.ntm-command-list{padding:4px 12px}.ntm-command-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 2px;border-bottom:1px solid #edf1ef;text-decoration:none!important;color:#27343a!important}.ntm-command-item:last-child{border-bottom:0}.ntm-command-item>i{width:31px;height:31px;border-radius:5px;background:#eef3f0;display:flex;align-items:center;justify-content:center;color:#4c7262}.ntm-command-item b,.ntm-command-item span{display:block}.ntm-command-item b{font-size:12px}.ntm-command-item span{font-size:10.5px;color:#74807c;margin-top:2px}.ntm-command-item strong{font-size:16px}.ntm-command-item strong.danger{color:#a94040}.ntm-command-item strong.warning{color:#9a6a1e}.ntm-command-item strong.info{color:#4a7084}.ntm-command-item strong.muted{color:#738079}
.ntm-inline-select{width:auto!important;display:inline-block!important;margin:0 5px 0 0!important;padding:4px 6px!important;font-size:10.5px!important}
.ntm-notification-list{padding:0}.ntm-notification-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:start;padding:12px 14px;border-bottom:1px solid #e9eeeb}.ntm-notification-item:last-child{border-bottom:0}.ntm-notification-item.unread{background:#f1f7f4;border-left:3px solid #2e6e59}.ntm-notification-icon{width:34px;height:34px;border-radius:6px;background:#edf2ef;display:flex;align-items:center;justify-content:center;color:#426b5a}.ntm-notification-content b{font-size:12.5px;color:#2b4038}.ntm-notification-content p{margin:3px 0;color:#566761;font-size:11.5px}.ntm-notification-content span{font-size:10px;color:#83908b}.ntm-notification-actions{text-align:right;white-space:nowrap}
.ntm-report-card{border-left:3px solid #5d7e70}.ntm-report-card p{font-size:12px;color:#65756f}
.ntm-danger-text{color:#a94040!important;font-weight:700;font-size:10.5px}
@media(max-width:800px){.ntm-leader-header{display:block}.ntm-leader-score{text-align:left;margin-top:10px}.ntm-notification-item{grid-template-columns:34px minmax(0,1fr)}.ntm-notification-actions{grid-column:2;text-align:left}}


/* ============================================================
   v1.6.00 - GIAO BAN NÔNG THÔN MỚI
   ============================================================ */
.ntm-meeting-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--ntm-line);border-left:4px solid #3f8167;padding:14px 16px;margin-bottom:12px;border-radius:var(--ntm-radius)}
.ntm-meeting-header h2{margin:2px 0 5px;font-size:19px;color:#253a36}
.ntm-meeting-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.ntm-meeting-attendees{display:grid;gap:7px}
.ntm-attendee-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 9px;border:1px solid #e2e8e5;background:#fafcfb;border-radius:5px}
.ntm-attendee-row b,.ntm-attendee-row span{display:block}.ntm-attendee-row b{font-size:12px;color:#304b42}.ntm-attendee-row span{font-size:10.5px;color:#6d7a76;margin-top:2px}
.ntm-meeting-note{font-size:12px;color:#52645d;white-space:normal}
.ntm-meeting-item{padding:0!important;overflow:hidden;border-left:4px solid #9ca9a3!important}
.ntm-meeting-item.warning{border-left-color:#b9893a!important}.ntm-meeting-item.danger{border-left-color:#ad5757!important}
.ntm-meeting-item-head{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#fbfcfc;border-bottom:1px solid #e5eae7}
.ntm-meeting-no{width:29px;height:29px;border-radius:5px;background:#eaf1ed;color:#2d6759;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:11px;flex:0 0 auto}
.ntm-meeting-item-title{flex:1;min-width:0}.ntm-meeting-item-title h3{font-size:13px;margin:0 0 3px;color:#263d35}
.ntm-meeting-issue,.ntm-meeting-result{padding:11px 14px;border-bottom:1px solid #edf1ef}.ntm-meeting-issue b,.ntm-meeting-result b{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#667771}.ntm-meeting-issue p,.ntm-meeting-result p{font-size:12px;margin:5px 0 0;color:#344942}
.ntm-meeting-conclusion{padding:12px 14px;background:#fff}.ntm-meeting-close{border-left:4px solid #4f816b!important}
.ntm-inline-select{padding:5px 7px;border:1px solid #c9d4ce;border-radius:4px;background:#fff;font-size:11px;color:#334841}
.ntm-leader-meeting-link{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border:1px solid #dde5e1;background:#fff;margin-bottom:12px;border-left:3px solid #587b8d}
.ntm-leader-meeting-link b{display:block;font-size:12px}.ntm-leader-meeting-link span{font-size:10.5px;color:#6c787d}
@media(max-width:800px){.ntm-meeting-header,.ntm-attendee-row{display:block}.ntm-attendee-row form{margin-top:7px}.ntm-meeting-item-head{align-items:flex-start}}


/* ============================================================
   v1.7.00 - KẾ HOẠCH ĐẠT CHUẨN & DUY TRÌ CHUẨN
   ============================================================ */
.ntm-plan-target{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--ntm-line);border-left:4px solid #4f816b;padding:10px 12px;margin-bottom:12px;border-radius:var(--ntm-radius)}
.ntm-plan-target span,.ntm-plan-target b{display:block}.ntm-plan-target span{font-size:10.5px;color:#6c787d;text-transform:uppercase;letter-spacing:.04em}.ntm-plan-target b{font-size:16px;color:#245b50;margin-top:2px}
.ntm-plan-target form{display:flex;gap:6px;align-items:center}.ntm-plan-target input{padding:6px 8px;border:1px solid #cbd6cf;border-radius:5px;width:125px;font-size:11px}
.ntm-risk-score{display:flex;align-items:center;gap:6px}.ntm-risk-score b{min-width:31px;height:27px;border-radius:5px;display:flex;align-items:center;justify-content:center;background:#edf1ef;font-size:11px}.ntm-risk-score span{font-size:10.5px;color:#65736e}
.ntm-risk-score.success b{background:#e5f0e9;color:#286044}.ntm-risk-score.warning b{background:#f7f0df;color:#806024}.ntm-risk-score.risk b{background:#f5e9df;color:#8d552d}.ntm-risk-score.danger b{background:#f6e7e7;color:#933e3e}
.ntm-date-over{color:#9b3434!important;font-weight:700}
.ntm-plan-editor{border-left:4px solid #4f816b!important}
.ntm-milestone-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf1ee}.ntm-milestone-row:last-child{border-bottom:0}.ntm-milestone-row b,.ntm-milestone-row span{display:block}.ntm-milestone-row b{font-size:12px}.ntm-milestone-row span{font-size:10.5px;color:#6b7873;margin-top:2px}.ntm-milestone-row form{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.ntm-inline-number{width:62px;padding:5px 6px;border:1px solid #c9d4ce;border-radius:4px;font-size:11px}
.ntm-inline-review{display:inline-block;margin-left:4px}.ntm-inline-review summary{font-size:10.5px;color:#2f6256}
.ntm-inline-review .ntm-mini-form{position:absolute;right:22px;z-index:30;width:290px;background:#fff;border:1px solid #d8e2dc;box-shadow:0 5px 18px rgba(30,60,48,.12);padding:10px}
.ntm-leader-plan-strip{display:flex;align-items:center;gap:22px;background:#fff;border:1px solid var(--ntm-line);border-left:4px solid #587b8d;padding:9px 12px;margin-bottom:12px}
.ntm-leader-plan-strip>div{min-width:180px}.ntm-leader-plan-strip span,.ntm-leader-plan-strip b{display:block}.ntm-leader-plan-strip span{font-size:10px;color:#74807c}.ntm-leader-plan-strip b{font-size:14px;color:#2b4940;margin-top:2px}.ntm-leader-plan-strip .ntm-btn{margin-left:auto}
@media(max-width:800px){.ntm-plan-target,.ntm-milestone-row,.ntm-leader-plan-strip{display:block}.ntm-plan-target form,.ntm-milestone-row form{margin-top:8px}.ntm-leader-plan-strip>div{margin-bottom:7px}.ntm-leader-plan-strip .ntm-btn{margin-left:0}}


/* ============================================================
   v1.8.00 - LỘ TRÌNH ĐẠT CHUẨN TOÀN XÃ
   ============================================================ */
.ntm-roadmap-kpis{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:12px}
.ntm-priority-roadmap{display:grid}.ntm-roadmap-priority-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 12px;border-bottom:1px solid #e8eeeb;color:inherit;text-decoration:none}.ntm-roadmap-priority-row:last-child{border-bottom:0}.ntm-roadmap-priority-row:hover{background:#f5f8f6;text-decoration:none;color:inherit}.ntm-roadmap-priority-row>div:nth-child(2) b,.ntm-roadmap-priority-row>div:nth-child(2) span{display:block}.ntm-roadmap-priority-row>div:nth-child(2) b{font-size:11.5px;color:#30463f}.ntm-roadmap-priority-row>div:nth-child(2) span{font-size:10px;color:#6d7975;margin-top:2px}.ntm-roadmap-rank{width:27px;height:27px;display:flex;align-items:center;justify-content:center;border-radius:5px;background:#edf2ef;color:#315f50;font-weight:800;font-size:11px}
.ntm-roadmap-chart{padding:12px}.ntm-roadmap-month{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:center;margin-bottom:8px}.ntm-roadmap-month-label{font-size:10.5px;font-weight:700;color:#60716b}.ntm-roadmap-bars{position:relative;height:31px;background:#f0f3f2;border-radius:4px;overflow:hidden}.ntm-roadmap-bar{position:absolute;left:0;height:14px;min-width:1px}.ntm-roadmap-bar.plan{top:1px;background:#9db3aa}.ntm-roadmap-bar.actual{bottom:1px;background:#4d806c}.ntm-roadmap-bar span{position:absolute;right:4px;top:0;font-size:9px;line-height:14px;color:#fff;font-weight:700}.ntm-roadmap-chart-legend{display:flex;gap:12px;font-size:10px;color:#66756f;margin-top:10px}.ntm-roadmap-chart-legend span{display:flex;align-items:center;gap:5px}.ntm-roadmap-chart-legend i{width:14px;height:8px;display:block}.ntm-roadmap-chart-legend i.plan{background:#9db3aa}.ntm-roadmap-chart-legend i.actual{background:#4d806c}
.ntm-roadmap-editor{border-left:4px solid #587b8d!important}.ntm-roadmap-unit-table{min-width:850px}
@media(max-width:1400px){.ntm-roadmap-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.ntm-roadmap-kpis{grid-template-columns:1fr}.ntm-roadmap-priority-row{grid-template-columns:28px minmax(0,1fr)}.ntm-roadmap-priority-row>.ntm-risk-score{grid-column:2}.ntm-roadmap-month{grid-template-columns:25px minmax(0,1fr)}}


/* ============================================================
   v1.9.00 - KIỂM SOÁT DỮ LIỆU & BÁO CÁO ĐỊNH KỲ
   ============================================================ */
.ntm-quality-critical{border-top-color:#a94040!important}
.ntm-quality-inactive{opacity:.62}
.ntm-quality-inactive td{background:#fafbfa!important}
.ntm-quality-assign{min-width:250px}
.ntm-periodic-selected{border-left:4px solid #4f816b!important;padding:0!important}
.ntm-periodic-kpis{padding:12px 14px}
.ntm-periodic-kpis>div{padding:10px;border:1px solid #e2e8e5;background:#fafcfb;border-radius:5px}
.ntm-periodic-kpis b,.ntm-periodic-kpis span{display:block}.ntm-periodic-kpis b{font-size:18px;color:#245b50}.ntm-periodic-kpis span{font-size:10.5px;color:#6c787d;margin-top:2px}
.ntm-public-report-card{display:block;text-decoration:none;color:inherit;border-left:3px solid #587b8d!important}.ntm-public-report-card:hover{text-decoration:none;color:inherit;border-color:#8eaaa0!important}
.ntm-public-report-card h3{font-size:14px;line-height:1.35;margin:3px 0 7px}.ntm-public-report-hash{font-family:monospace;font-size:10px;color:#72817b;margin-top:8px}
@media(max-width:800px){.ntm-periodic-kpis{grid-template-columns:1fr 1fr}}


/* ============================================================
   v2.0.00 - HỒ SƠ ĐỀ NGHỊ CÔNG NHẬN
   ============================================================ */
.ntm-dossier-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid var(--ntm-line);border-left:4px solid #4f816b;padding:14px 16px;margin-bottom:12px;border-radius:var(--ntm-radius)}
.ntm-dossier-hero h2{font-size:18px;margin:2px 0 5px;color:#253a36}
.ntm-readiness-ring{width:112px;height:72px;border:1px solid #cad9d1;background:#f4f8f5;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto}
.ntm-readiness-ring b{font-size:23px;color:#245b50;line-height:1}.ntm-readiness-ring span{font-size:9.5px;color:#697873;margin-top:5px;text-transform:uppercase;letter-spacing:.04em}
.ntm-dossier-workflow{border-left:4px solid #587b8d!important}
.ntm-dossier-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:12px 0 16px}
.ntm-dossier-step{position:relative;text-align:center;padding-top:23px;font-size:10.5px;color:#7a8581}
.ntm-dossier-step:before{content:"";position:absolute;left:-50%;right:50%;top:8px;height:2px;background:#dce4e0}.ntm-dossier-step:first-child:before{display:none}
.ntm-dossier-step i{position:absolute;top:2px;left:50%;margin-left:-7px;width:14px;height:14px;border-radius:50%;background:#d8dfdc;border:2px solid #fff;box-shadow:0 0 0 1px #c8d2cd}
.ntm-dossier-step.done:before,.ntm-dossier-step.active:before{background:#74a28e}.ntm-dossier-step.done i,.ntm-dossier-step.active i{background:#3f8167;box-shadow:0 0 0 1px #3f8167}.ntm-dossier-step.active span{font-weight:700;color:#245b50}
.ntm-dossier-action-form{background:#fafcfb;border:1px solid #e1e8e4;border-radius:6px;padding:12px;margin-top:12px}
.ntm-recognition-decision{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#edf5f0;border:1px solid #c5dacf;padding:12px;margin-top:12px;border-radius:6px}.ntm-recognition-decision h3{margin:2px 0}.ntm-recognition-decision p{margin:0;font-size:12px}
.ntm-dossier-hash code{display:block;word-break:break-all;background:#f4f6f5;padding:8px;margin:7px 0;font-size:10px}.ntm-dossier-hash span{font-size:10.5px;color:#6c787d}
.ntm-leader-dossier-strip{display:flex;align-items:center;gap:22px;background:#fff;border:1px solid var(--ntm-line);border-left:4px solid #4f816b;padding:9px 12px;margin-bottom:12px}
.ntm-leader-dossier-strip>div{min-width:150px}.ntm-leader-dossier-strip span,.ntm-leader-dossier-strip b{display:block}.ntm-leader-dossier-strip span{font-size:10px;color:#74807c}.ntm-leader-dossier-strip b{font-size:14px;color:#2b4940;margin-top:2px}.ntm-leader-dossier-strip .ntm-btn{margin-left:auto}
.ntm-public-recognition{display:flex;gap:14px;align-items:center;background:#f2f7f4;border:1px solid #cbded3;border-left:4px solid #3f8167;padding:14px 16px;margin:14px 0;border-radius:6px}
.ntm-public-recognition-icon{width:45px;height:45px;border-radius:50%;background:#2e6e59;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;flex:0 0 auto}.ntm-public-recognition h2{font-size:16px;margin:2px 0 4px;color:#21463a}.ntm-public-recognition p{margin:0;font-size:12px;color:#4f635b}
@media(max-width:800px){.ntm-dossier-hero,.ntm-recognition-decision,.ntm-leader-dossier-strip,.ntm-public-recognition{display:block}.ntm-readiness-ring{margin-top:10px}.ntm-dossier-steps{grid-template-columns:1fr}.ntm-dossier-step{text-align:left;padding:5px 0 5px 22px}.ntm-dossier-step:before{display:none}.ntm-dossier-step i{left:6px;top:7px;margin-left:0}.ntm-leader-dossier-strip>div{margin-bottom:6px}.ntm-leader-dossier-strip .ntm-btn{margin-left:0}}


/* ============================================================
   v2.1.00 - PHIÊN THẨM ĐỊNH & KHẮC PHỤC
   ============================================================ */
.ntm-appraisal-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--ntm-line);border-left:4px solid #587b8d;padding:14px 16px;margin-bottom:12px;border-radius:var(--ntm-radius)}
.ntm-appraisal-header h2{font-size:18px;margin:2px 0 5px;color:#253a36}
.ntm-appraisal-dossier-link{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--ntm-line);border-left:4px solid #4f816b;padding:10px 12px;margin-bottom:12px}
.ntm-appraisal-dossier-link span,.ntm-appraisal-dossier-link b,.ntm-appraisal-dossier-link small{display:block}.ntm-appraisal-dossier-link span{font-size:10px;text-transform:uppercase;color:#74807c}.ntm-appraisal-dossier-link b{font-size:13px;margin-top:2px}.ntm-appraisal-dossier-link small{font-size:10px;color:#6e7c76;margin-top:2px}
.ntm-appraisal-finding{padding:0!important;overflow:hidden;border-left:4px solid #b9893a!important}
.ntm-appraisal-finding.danger{border-left-color:#a94040!important}.ntm-appraisal-finding.risk{border-left-color:#a85f2a!important}.ntm-appraisal-finding.info{border-left-color:#587b8d!important}
.ntm-appraisal-finding-head{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:#fbfcfc;border-bottom:1px solid #e5eae7}
.ntm-appraisal-finding-title{flex:1;min-width:0}.ntm-appraisal-finding-title h3{font-size:13px;margin:0 0 3px;color:#263d35}
.ntm-appraisal-detail{padding:11px 14px;border-bottom:1px solid #edf1ef}.ntm-appraisal-detail b{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:#667771}.ntm-appraisal-detail p{font-size:12px;color:#344942;margin:4px 0 9px}
.ntm-appraisal-response{padding:12px 14px;background:#fff}.ntm-appraisal-result{padding:11px 14px;background:#fafcfb}.ntm-appraisal-result b{font-size:10.5px;text-transform:uppercase;color:#687873}.ntm-appraisal-result p{font-size:12px;margin:4px 0}
.ntm-appraisal-conclusion{border-left:4px solid #4f816b!important}.ntm-appraisal-conclusion-read{border-left:4px solid #4f816b!important}.ntm-appraisal-conclusion-read code{display:block;word-break:break-all;background:#f4f6f5;padding:7px;margin-top:8px;font-size:10px}
@media(max-width:800px){.ntm-appraisal-header,.ntm-appraisal-dossier-link{display:block}.ntm-appraisal-dossier-link .ntm-btn{margin-top:8px}}
