@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-cyrillic-ext-800-normal-BZOjs1Xv.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-800-normal-Ca-gJeZY.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-cyrillic-800-normal-C7MGvYyJ.woff2) format("woff2"),url(/assets/inter-cyrillic-800-normal-CCHyn08d.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-greek-ext-800-normal-B--PVpEC.woff2) format("woff2"),url(/assets/inter-greek-ext-800-normal-DUe57HfS.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-greek-800-normal-CLIouy3y.woff2) format("woff2"),url(/assets/inter-greek-800-normal-BU00tryP.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-vietnamese-800-normal-Cm7tD1pz.woff2) format("woff2"),url(/assets/inter-vietnamese-800-normal-DDlpr_Ee.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-ext-800-normal-DZJjya6U.woff2) format("woff2"),url(/assets/inter-latin-ext-800-normal-BOMpwxm3.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-800-normal-BYj_oED-.woff2) format("woff2"),url(/assets/inter-latin-800-normal-D1mf63XC.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-cyrillic-ext-900-normal-buRuWz4h.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-900-normal-BUlv-ou0.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-cyrillic-900-normal-CjyCg421.woff2) format("woff2"),url(/assets/inter-cyrillic-900-normal-BAVML7y5.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-greek-ext-900-normal-voj7phVX.woff2) format("woff2"),url(/assets/inter-greek-ext-900-normal-LVqH4fM3.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-greek-900-normal-Clii5heL.woff2) format("woff2"),url(/assets/inter-greek-900-normal-7n5hB3DA.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-vietnamese-900-normal-C4P836tE.woff2) format("woff2"),url(/assets/inter-vietnamese-900-normal-DBSPUrC7.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-latin-ext-900-normal-ty8Tfvw5.woff2) format("woff2"),url(/assets/inter-latin-ext-900-normal-DG9wZIMw.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-latin-900-normal-D4nM5aha.woff2) format("woff2"),url(/assets/inter-latin-900-normal-EUCDUbiG.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--surface:#fcfcfb;--page:#f4f4f1;--ink:#0b0b0b;--ink2:#52514e;--muted:#898781;--grid:#e1e0d9;--axis:#c3c2b7;--border:rgba(11,11,11,.1);--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s4:#eda100;--s5:#e87ba4;--s6:#008300;--s7:#4a3aa7;--s8:#e34948;--good:#0ca30c;--warn:#fab219;--serious:#ec835a;--crit:#d03b3b;--good-ink:#006300;--crit-nhat:#dd6a6a}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.5}.wrap{max-width:1440px;margin:0 auto;padding:20px 24px 64px}header.top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:16px;border-bottom:1px solid var(--border);flex-wrap:wrap}.brand h1{margin:0 0 4px;font-size:21px;font-weight:650;letter-spacing:-.01em}.brand p{margin:0;color:var(--ink2);font-size:13px}.btn{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:8px;padding:7px 13px;font-size:13px;cursor:pointer;font-family:inherit}.btn:hover{background:#f0efec}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--s1);border-color:var(--s1);color:#fff}.btn.primary:hover:not(:disabled){background:#256abf}nav.tabs{display:flex;gap:4px;margin:18px 0 14px;border-bottom:1px solid var(--border);flex-wrap:wrap}nav.tabs button{background:none;border:none;border-bottom:2px solid transparent;padding:10px 14px;font-size:14px;color:var(--ink2);cursor:pointer;font-family:inherit;font-weight:500}nav.tabs button:hover{color:var(--ink)}nav.tabs button.on{color:var(--s1);border-bottom-color:var(--s1);font-weight:600}nav.tabs button:disabled{opacity:.45;cursor:not-allowed}.filters{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-bottom:18px}.filters .f{display:flex;flex-direction:column;gap:4px}.filters label{font-size:11.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.filters select{font-family:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--axis);border-radius:7px;background:#fff;color:var(--ink);min-width:150px}.filters .spacer{flex:1}.fnote{font-size:12px;color:var(--muted);align-self:center}.grid{display:grid;gap:14px}.tiles{grid-template-columns:repeat(6,1fr);margin-bottom:16px}.tile{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.tile .lbl{font-size:12px;color:var(--ink2);margin-bottom:6px;font-weight:500}.tile .val{font-size:28px;font-weight:640;letter-spacing:-.02em;line-height:1.15}.tile .sub{font-size:12px;color:var(--muted);margin-top:4px}.tile.hero{grid-column:span 2}.tile.hero .val{font-size:40px}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px 18px}.card h3{margin:0 0 2px;font-size:15px;font-weight:620}.card .cap{margin:0 0 12px;font-size:12.5px;color:var(--muted)}.cardhead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.link{background:none;border:none;color:var(--s1);font-size:12.5px;cursor:pointer;font-family:inherit;padding:2px 4px;white-space:nowrap}.link:hover{text-decoration:underline}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-weight:600;color:var(--ink2);font-size:12px;text-transform:uppercase;letter-spacing:.03em;padding:8px 10px;border-bottom:1px solid var(--axis);white-space:nowrap;background:var(--surface)}td{padding:9px 10px;border-bottom:1px solid var(--grid);vertical-align:top}tbody tr:hover{background:#f6f6f3}.num{text-align:right;font-variant-numeric:tabular-nums}th.num{text-align:right}.clickrow{cursor:pointer}.tblwrap{overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.tblwrap thead th{position:sticky;top:0;z-index:2}.tbl-moc th,.tbl-moc td{white-space:nowrap;padding:6px 9px}.tbl-moc td{vertical-align:middle}.tbl-moc .ell{display:block;overflow:hidden;text-overflow:ellipsis}.tbl-moc .w-may{max-width:112px}.tbl-moc .w-tho,.tbl-moc .w-lap{max-width:140px}.tbl-moc .w-nn{max-width:230px}.tbl-moc .mut{color:var(--muted)}.nn-chart{display:flex;flex-direction:column;gap:2px;margin-top:4px}.nn-bar{display:block;width:100%;text-align:left;background:none;border:0;border-radius:8px;padding:7px 8px;font-family:inherit;cursor:pointer}.nn-bar:hover{background:#f6f6f3}.nn-bar:focus-visible{outline:2px solid var(--s1);outline-offset:-2px}.nn-bar .lb{display:flex;gap:12px;align-items:baseline;font-size:12.5px;color:var(--ink2)}.nn-bar .lb .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nn-bar .lb .n{font-weight:600;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}.nn-bar .lb .n .s{font-weight:400;color:var(--muted)}.nn-bar .tr{display:block;margin-top:5px;height:13px;border-radius:4px;background:#f0efec}.nn-bar .tr i{display:block;height:100%;border-radius:4px;min-width:3px}.nn-bar.mo .lb .t,.nn-bar.mo .lb .n{color:var(--muted);font-style:italic}.nn-bar.mo .lb .n{font-weight:600}.tile.nut{display:block;width:100%;text-align:left;font-family:inherit;font-size:inherit;cursor:pointer;transition:border-color .12s,box-shadow .12s}.tile.nut:hover{border-color:var(--axis);box-shadow:0 2px 8px #0b0b0b12}.tile.nut .cog{color:var(--muted);font-size:11px}.tile.nut:hover .cog{color:var(--s1)}.ng-list{display:flex;flex-direction:column;gap:10px;margin-top:4px}.ng-o{display:grid;grid-template-columns:150px 110px 1fr;align-items:center;gap:12px}.ng-n{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.ng-n i{width:11px;height:11px;border-radius:3px;flex:none}.ng-m{font-size:12px;color:var(--muted)}@media(max-width:560px){.ng-o{grid-template-columns:1fr}}.grid.hai-cot{grid-template-columns:repeat(auto-fit,minmax(440px,1fr));margin-bottom:14px;align-items:start}.tbl-moc td.moc{font-variant-numeric:tabular-nums}.tbl-moc .pill{padding:1px 7px;font-size:11px}.tiles.tiles-moc{grid-template-columns:repeat(auto-fit,minmax(140px,230px));gap:10px;justify-content:start}.tiles-moc .tile{padding:11px 13px}.tiles-moc .tile .val{font-size:25px}.tiles-moc .tile .sub{font-size:11.5px}.tiles-moc .tile.hero{grid-column:span 1}.tiles-moc .tile.hero .val{font-size:31px}.segs.wrap{flex-wrap:wrap;margin:0}#tblIssue{min-width:1500px}#tblIssue td,#tblIssue th{white-space:nowrap}#tblIssue td.wrapcell{white-space:normal}#tblYC{min-width:1860px}#tblYC td,#tblYC th{white-space:nowrap}#tblYC td.wrapcell{white-space:normal}#tblNguoi td{white-space:nowrap}#tblNguoi td.wrapcell{white-space:normal}.mono{font-variant-numeric:tabular-nums}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap;font-weight:500}.dot{width:9px;height:9px;border-radius:50%;flex:none}.cdot{width:10px;height:10px;border-radius:2px;display:inline-block;flex:none}.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:600;border:1px solid var(--border);white-space:nowrap}.pill.thieu{background:#fdecec;color:#9c1f1f;border-color:#f3c9c9}.pill.lech{background:#fdf1e6;color:#8a4415;border-color:#f4d6bd}.pill.mesonly{background:#eef2fb;color:#1c4a8a;border-color:#cfdcf3}.pill.chua{background:#fff6e0;color:#7a5400;border-color:#f2dfae}.pill.cho{background:#eef2fb;color:#1c4a8a;border-color:#cfdcf3}.pill.nhan{background:#eaf6ea;color:#0f5c14;border-color:#c8e6c9}.pill.bac{background:#fdecec;color:#9c1f1f;border-color:#f3c9c9}.filters input[type=text],.filters input[type=date]{font-family:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--axis);border-radius:7px;background:#fff;color:var(--ink)}.filters input[type=text]{min-width:180px}.box{background:#f6f6f3;border:1px solid var(--border);border-radius:9px;padding:12px 14px;margin-bottom:14px}.box h4{margin:0 0 8px;font-size:13px;font-weight:640}.hist{font-size:12.5px;color:var(--ink2);border-left:2px solid var(--axis);padding-left:12px;margin-top:6px}.hist div{margin-bottom:4px}.pill.da{background:#eaf6ea;color:#0f5c14;border-color:#c8e6c9}.mbar{width:92px;height:8px;background:#eceae4;border-radius:4px;overflow:hidden;display:inline-block;vertical-align:middle}.mbar i{display:block;height:100%;border-radius:4px}.chartbox{position:relative}svg{display:block;width:100%;height:auto;overflow:visible}.tip{position:absolute;pointer-events:none;background:#fff;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:12.5px;box-shadow:0 4px 14px #0000001a;opacity:0;transition:opacity .1s;z-index:20;white-space:nowrap}.legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:12.5px;color:var(--ink2)}.legend span{display:inline-flex;align-items:center;gap:6px}.ov{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b0b0b59;display:none;align-items:center;justify-content:center;z-index:100;padding:20px}.ov.on{display:flex}.modal{background:var(--surface);border-radius:12px;max-width:640px;width:100%;max-height:88vh;overflow:auto;padding:22px 24px;box-shadow:0 20px 50px #00000038}.modal h3{margin:0 0 4px;font-size:17px}.modal .sub{color:var(--muted);font-size:12.5px;margin-bottom:16px}.fld{margin-bottom:14px}.fld label{display:block;font-size:12px;font-weight:600;color:var(--ink2);margin-bottom:5px}.fld select,.fld textarea,.fld input{width:100%;font-family:inherit;font-size:13.5px;padding:8px 10px;border:1px solid var(--axis);border-radius:8px;background:#fff;color:var(--ink)}.fld textarea{min-height:70px;resize:vertical}.kv{display:grid;grid-template-columns:150px 1fr;gap:6px 14px;font-size:13px;background:#f6f6f3;border-radius:8px;padding:12px 14px;margin-bottom:16px}.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:500}.macts{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.hide{display:none}.note{font-size:12.5px;color:var(--ink2);background:#f6f6f3;border-left:3px solid var(--s1);border-radius:0 8px 8px 0;padding:10px 14px;margin-bottom:16px}.drop{border:2px dashed var(--axis);border-radius:12px;background:var(--surface);padding:34px 24px;text-align:center;cursor:pointer;transition:.15s}.drop:hover,.drop.over{border-color:var(--s1);background:#f2f7fd}.drop b{font-size:15px}.drop p{margin:6px 0 0;color:var(--muted);font-size:13px}.filerow{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface);margin-top:10px;flex-wrap:wrap}.filerow .nm{flex:1;min-width:220px;font-weight:600;font-size:13px;word-break:break-all}.filerow select{font-family:inherit;font-size:12.5px;padding:5px 8px;border:1px solid var(--axis);border-radius:7px;background:#fff}.filerow .meta{font-size:12px;color:var(--muted)}.warnbox{border-radius:10px;padding:12px 14px;margin-bottom:10px;font-size:13px;border:1px solid}.warnbox.CHẶN{background:#fdecec;border-color:#f3c9c9}.warnbox.CẢNHBÁO{background:#fff6e0;border-color:#f2dfae}.warnbox.LƯUÝ{background:#f6f6f3;border-color:var(--border)}.warnbox b{display:block;margin-bottom:2px}.warnbox span{color:var(--ink2)}@media(max-width:1200px){.tiles{grid-template-columns:repeat(3,1fr)}.tile.hero{grid-column:span 3}}@media(max-width:760px){.tiles{grid-template-columns:repeat(2,1fr)}.tile.hero{grid-column:span 2}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px 30px;width:100%;max-width:380px;box-shadow:0 12px 32px #0000000f}.login-card h1{margin:0 0 4px;font-size:19px;font-weight:650}.login-card p.cap{margin:0 0 20px;font-size:12.5px;color:var(--muted)}.err{color:var(--crit);font-size:12.5px;margin:10px 0 0}.userbox{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--ink2)}.userbox b{color:var(--ink)}.runbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0 0}.runbar select{font-family:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--axis);border-radius:7px;background:#fff;color:var(--ink);min-width:200px}.runbar .tag{font-size:12px;color:var(--muted)}.spin{display:inline-block;width:13px;height:13px;border:2px solid var(--axis);border-top-color:var(--s1);border-radius:50%;animation:sp .7s linear infinite;vertical-align:-2px}@keyframes sp{to{transform:rotate(360deg)}}.toast{position:fixed;right:20px;bottom:20px;z-index:200;background:var(--ink);color:#fff;border-radius:9px;padding:11px 15px;font-size:13px;max-width:420px;box-shadow:0 10px 28px #00000040}.toast.err{background:var(--crit);color:#fff}.empty{padding:24px;text-align:center;color:var(--muted)}.ellip{display:block;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.celltip{position:fixed;pointer-events:none;background:#fff;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:12.5px;line-height:1.45;box-shadow:0 4px 14px #0000001a;z-index:300;max-width:420px;white-space:normal}.modal.wide{max-width:1100px}.tiles-4{grid-template-columns:repeat(4,1fr)}.tiles-5{grid-template-columns:repeat(5,1fr)}.tkbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-bottom:14px}.tkbar .spacer{flex:1}.tkday{display:flex;align-items:center;gap:0}.tkday input[type=date]{font-family:inherit;font-size:14px;font-weight:600;padding:6px 10px;border:1px solid var(--axis);border-left:0;border-right:0;background:#fff;color:var(--ink)}.btn.ico{padding:6px 10px;font-size:12px;line-height:1.4}.tkday .btn.ico:first-child{border-radius:8px 0 0 8px}.tkday .btn.ico:last-child{border-radius:0 8px 8px 0}.btn.on{border-color:var(--s1);color:var(--s1);font-weight:600}.tkband{display:grid;grid-template-columns:minmax(200px,1fr) 3fr;gap:14px;margin-bottom:14px}.tktong,.tkstate{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:15px 17px}.tktong .lbl,.tkstate .lbl{font-size:12.5px;color:var(--ink2);font-weight:600;display:flex;align-items:center;gap:7px}.tktong .val{font-size:42px;font-weight:660;letter-spacing:-.03em;line-height:1.1;margin:6px 0 3px}.tktong .sub,.tkstate .sub{font-size:12px;color:var(--muted)}.tkstates{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tkstate .pct{font-size:36px;font-weight:660;letter-spacing:-.03em;line-height:1.1;margin:6px 0 3px}.tkstate .pct small{font-size:17px;font-weight:600;margin-left:1px}.tkgoc{margin-top:12px;border-top:1px solid var(--border);padding-top:9px;display:flex;flex-direction:column;gap:5px}.tkgoc span{display:flex;justify-content:space-between;gap:10px;font-size:11.5px;color:var(--muted)}.tkgoc b{color:var(--ink);font-size:12.5px}.kqgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:10px}.kqo{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 13px;position:relative;overflow:hidden;transition:box-shadow .12s,transform .12s}.kqo:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--mau,transparent)}.kqo:hover{box-shadow:0 3px 12px #0b0b0b12;transform:translateY(-1px)}.kqo .lbl{font-size:12px;color:var(--ink2);font-weight:600;display:flex;align-items:center;gap:6px}.kqo .pct{font-size:26px;font-weight:660;letter-spacing:-.03em;line-height:1.15;margin:4px 0 2px}.kqo .pct small{font-size:14px;font-weight:600;margin-left:1px}.kqo .sub{font-size:11.5px;color:var(--muted)}.tkbar100{margin-bottom:14px;padding:14px 16px}.tkbar100 .dist{height:22px;border-radius:6px}.tkbar100 .legend{margin-top:10px}.ramp{display:inline-flex;align-items:center;gap:4px}.ramp u{width:22px;height:11px;border-radius:3px;text-decoration:none}.ramp i{font-style:normal;color:var(--muted);font-size:11.5px;margin:0 3px}.dist{display:flex;gap:2px;width:100%;min-width:150px;height:14px;background:#f0efec;border-radius:4px;overflow:hidden}.dist i{display:block;height:100%}.sortth{cursor:pointer;-webkit-user-select:none;user-select:none}.sortth:hover{color:var(--ink)}.sortth.on{color:var(--s1)}.sortth .arr{margin-left:5px;font-size:9px;opacity:.5}.sortth.on .arr{opacity:1}td.rank{color:var(--muted);font-weight:600}tfoot td{border-top:2px solid var(--axis);border-bottom:0;background:#f6f6f3;font-weight:600}td.cell2{line-height:1.3;padding:5px 6px}td.cell2 .n{display:block;font-weight:600}td.cell2 .p{display:block;font-size:11.5px;color:var(--muted)}td.cell2 .heat{display:block;min-width:58px;padding:4px 7px;border-radius:6px;transition:background .12s ease}td.cell2 .heat.on .p{color:inherit;opacity:.75}td.cell2 .heat.zero{opacity:.34}.trucsw{display:flex;gap:6px}.trucsw .btn.on{background:var(--s1);border-color:var(--s1);color:#fff;font-weight:600}.trucsw .btn.on:hover{background:#256abf}@media(max-width:1100px){.tkband{grid-template-columns:1fr}}@media(max-width:760px){.tkstates{grid-template-columns:1fr}.kqgrid{grid-template-columns:repeat(2,1fr)}}nav.tabs.sub{margin:0 0 14px;font-size:13px}nav.tabs.sub button{padding:7px 12px;font-size:13px}#tblTK td,#tblTK th{white-space:nowrap}#tblTKChiTiet{min-width:1400px}#tblTKChiTiet td,#tblTKChiTiet th{white-space:nowrap}#tblTKChiTiet td.wrapcell{white-space:normal;min-width:220px}#tblTKNguon{min-width:1180px}#tblTKNguon td,#tblTKNguon th,#tblTKNguonDs td,#tblTKNguonDs th{white-space:nowrap}#tblTKNguon td.wrapcell{white-space:normal;min-width:200px}.filerow a.link{text-decoration:none}@media(max-width:1200px){.modal.wide .grid{grid-template-columns:1fr!important}.modal.wide .grid>.card{grid-column:span 1!important}.tiles-4,.tiles-5{grid-template-columns:repeat(2,1fr)}}:root{--sh1:0 1px 2px rgba(11,11,11,.04), 0 10px 24px -16px rgba(11,11,11,.16);--sh2:0 2px 6px rgba(11,11,11,.06), 0 16px 32px -18px rgba(11,11,11,.22)}.card,.tile,.tblwrap,.tktong,.tkstate,.kqo,.tkbar{border-radius:12px;box-shadow:var(--sh1)}.card,.tile,.tktong,.tkstate,.kqo{border-color:#0b0b0b12}.card:has(.hhm):hover,.card:has(.hdot):hover,.card:has(.hst):hover{box-shadow:var(--sh2)}.tktong .val{font-size:48px}.tile .val,.tile .num,.tktong .val,.tkstate .pct,.kqo .pct,td.num,th.num{font-variant-numeric:tabular-nums}.tblwrap thead th{background:var(--surface);border-bottom:1px solid var(--border)}tbody tr:hover{background:#2a78d60b}tfoot td{background:#f7f7f4}.tip{border-radius:10px;box-shadow:var(--sh2);border-color:#0b0b0b14}.legend{gap:14px}.tkbar{border:1px solid rgba(11,11,11,.07)}.chip{display:inline-flex;align-items:center;gap:5px;background:#f0efec;border-radius:999px;padding:2px 9px;font-size:12px;color:var(--ink2);margin:0 5px 5px 0}.chip.on{background:#2a78d61a;color:#1c5ea8;font-weight:600}.chip .x{border:none;background:none;color:inherit;cursor:pointer;font-size:14px;line-height:1;padding:0;opacity:.6}.chip .x:hover{opacity:1}.themnhan{display:flex;gap:6px;margin-top:4px}.themnhan input{border:1px solid var(--border);border-radius:8px;padding:5px 9px;font-size:12.5px;font-family:inherit;min-width:170px}.filters.sub{background:transparent;border-style:dashed;border-color:var(--axis);margin-top:-6px;padding:10px 14px}.filters .ftag{align-self:center;font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);border-right:1px solid var(--border);padding-right:12px;margin-right:2px}@media(max-width:760px){.filters .ftag{border-right:0;width:100%}}.cellsel,.cellnhap{font-family:inherit;font-size:13px;padding:3px 6px;max-width:170px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ink)}.cellsel:hover,.cellnhap:hover{border-color:var(--border);background:#fff}.cellsel:focus,.cellnhap:focus{outline:none;border-color:var(--s1);background:#fff}.cellsel.trong{color:var(--muted)}.cellnhap{min-width:150px}.cellnhap.moi{border-color:var(--s1);background:#fff}a.btn{text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;gap:6px}a.btn:hover{color:var(--ink)}.tkstate.bamduoc,.tktong.bamduoc{cursor:pointer;transition:border-color .12s,box-shadow .12s}.tkstate.bamduoc:hover,.tktong.bamduoc:hover{border-color:var(--s1);box-shadow:var(--sh2)}.tkstate.bamduoc:focus-visible,.tktong.bamduoc:focus-visible{outline:2px solid var(--s1);outline-offset:2px}.tkstate .xem,.tktong .xem{color:var(--s1);font-weight:600;white-space:nowrap}.bdn{--plane:#F7F8F6;--surface:#FFFFFF;--ink:#111315;--ink2:#4A5157;--muted:#8A9299;--ring:rgba(17,19,21,.12);--grid:#E4E7EA;--red:#C62828;--redbg:#FDEDEA;--amb:#B45309;--ambbg:#FFF7EA;--ok:#1F7A3D;--okbg:#EEF7F0;--okln:#A9D3B6;--blue:#2a78d6;background:var(--plane);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.5;min-height:100vh}.bdn *{box-sizing:border-box}.bdn .page{max-width:1380px;margin:0 auto;padding:20px 22px 80px}.bdn .appbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:14px;margin-bottom:4px}.bdn .appbar .back{background:none;border:none;padding:0;font-family:inherit;font-size:12.8px;font-weight:600;color:var(--ink2);cursor:pointer}.bdn .appbar .back:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.bdn .appbar .who{margin-left:auto;font-size:12.5px;color:var(--muted)}.bdn .appbar .who b{color:var(--ink2);font-weight:600}.bdn header.top{display:block;border-bottom:2px solid var(--ink);padding-bottom:13px}.bdn h1{font-size:22px;margin:0 0 4px;letter-spacing:-.01em;font-weight:700}.bdn .sub{color:var(--ink2);font-size:13.3px;margin:0}.bdn .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:11px;margin-top:16px}.bdn .kpi{background:var(--surface);border:1px solid var(--ring);border-radius:11px;padding:12px 15px}.bdn .kpi.red{border-left:5px solid var(--red)}.bdn .kpi.ok{border-left:5px solid var(--ok)}.bdn .kpi.amb{border-left:5px solid var(--amb)}.bdn .kpi .k{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.bdn .kpi .v{font-size:26px;font-weight:700;letter-spacing:-.02em;margin:3px 0 1px}.bdn .kpi .d{font-size:12.2px;color:var(--ink2)}.bdn .tabs{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0 0;border-bottom:2px solid var(--grid)}.bdn .tabs button{border:none;background:none;font-family:inherit;font-size:13.8px;font-weight:700;color:var(--ink2);padding:10px 16px;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;border-radius:8px 8px 0 0}.bdn .tabs button:hover{background:#eef1f3;color:var(--ink)}.bdn .tabs button[aria-selected=true]{color:var(--red);border-bottom-color:var(--red);background:#fdf5f3}.bdn .tabs button .b{display:inline-block;background:var(--grid);color:var(--ink2);border-radius:999px;font-size:11px;padding:1px 7px;margin-left:6px}.bdn .tabs button[aria-selected=true] .b{background:var(--red);color:#fff}.bdn .panel{padding-top:22px}.bdn .panel[hidden]{display:none}.bdn h2{font-size:17px;margin:0 0 4px}.bdn h3{font-size:14.5px;margin:22px 0 9px}.bdn .lead{color:var(--ink2);font-size:13.3px;margin:4px 0 14px;max-width:1000px}.bdn .card{background:var(--surface);border:1px solid var(--ring);border-radius:12px;padding:16px 18px}.bdn .drop{border:2px dashed #C3CAD0;border-radius:12px;padding:22px;text-align:center;background:var(--surface)}.bdn .drop.over{border-color:var(--blue);background:#f1f6fd}.bdn .btn{border:1px solid var(--ring);background:var(--surface);border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer;font-family:inherit;color:var(--ink);font-weight:600}.bdn .btn:hover{border-color:var(--ink2);background:var(--surface)}.bdn .btn.pri{background:var(--blue);border-color:var(--blue);color:#fff}.bdn .btn.pri:hover{background:#1f66ba}.bdn .btn.dan{color:var(--red);border-color:#e9c0ba}.bdn .btn.dan:hover{background:var(--redbg)}.bdn .btn.sm{padding:4px 9px;font-size:12px}.bdn .srcbar{padding:11px 15px;border-radius:10px;background:#f1f6fd;border:1px solid #CFE0F5;font-size:13px;margin-top:12px}.bdn .srcbar b{color:#14477f}.bdn .srcbar.file{background:var(--okbg);border-color:var(--okln)}.bdn .srcbar.file b{color:#155f30}.bdn .err{background:var(--redbg);border:1px solid #E9C0BA;color:#8c2018;border-radius:10px;padding:12px 15px;font-size:13px;margin-top:12px}.bdn .legend{display:flex;flex-wrap:wrap;gap:13px;margin:0 0 13px;font-size:12.4px;color:var(--ink2)}.bdn .legend i{display:inline-block;width:13px;height:13px;border-radius:4px;margin-right:6px;vertical-align:-2px;border:1.5px solid}.bdn .li-red i{background:var(--redbg);border-color:var(--red)}.bdn .li-amb i{background:var(--ambbg);border-color:var(--amb)}.bdn .li-ok i{background:var(--okbg);border-color:var(--okln)}.bdn .li-n i{background:var(--surface);border-color:var(--grid)}.bdn .dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--red);margin-right:6px}.bdn .mxwrap{overflow-x:auto;padding-bottom:6px}.bdn .mx{display:grid;gap:6px;min-width:1060px}.bdn .mh{font-size:12px;font-weight:700;color:var(--ink2);display:flex;flex-direction:column;justify-content:flex-end;padding:6px 4px 8px;text-align:center;border-bottom:2px solid var(--ink)}.bdn .mh.act{cursor:pointer;background:none;border:none;border-bottom:2px solid var(--red);font-family:inherit;color:var(--red)}.bdn .mh.act:hover{background:#fdf3f1}.bdn .mh .sm{font-size:10.5px;font-weight:600;color:var(--muted);margin-top:3px}.bdn .mh.act .sm{color:var(--red)}.bdn .rh{background:var(--surface);border:1px solid var(--ring);border-radius:9px;padding:9px 11px;text-align:left;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;gap:1px}.bdn .rh:hover{border-color:var(--ink2)}.bdn .rh .c{font-size:13.5px;font-weight:700}.bdn .rh .p{font-size:11.5px;font-weight:700}.bdn .rh .o{font-size:10.5px;color:var(--muted);line-height:1.3}.bdn .rh.bad{border-color:var(--red);background:var(--redbg)}.bdn .rh.bad .p{color:var(--red)}.bdn .rh.good{border-color:var(--okln);background:var(--okbg)}.bdn .rh.good .p{color:var(--ok)}.bdn .cell{border-radius:9px;border:1.4px solid var(--grid);background:var(--surface);min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:inherit;cursor:pointer;position:relative;transition:transform .1s;padding:0}.bdn .cell:hover{transform:scale(1.035);z-index:2;box-shadow:0 4px 14px #1113151f}.bdn .cell .n{font-size:17px;font-weight:700;white-space:nowrap}.bdn .cell .s{font-size:10.5px;color:var(--muted)}.bdn .cell .n em{font-size:12.5px;font-style:normal;font-weight:600;color:var(--muted)}.bdn .cell.bad{border-color:var(--red);background:var(--redbg);border-width:2px}.bdn .cell.bad .n{color:var(--red)}.bdn .cell.good{border-color:var(--okln);background:var(--okbg)}.bdn .cell.good .n{color:var(--ok)}.bdn .cell.empty{background:#fafaf9;border-style:dashed;color:var(--muted);cursor:default;border-color:#e9ecee;padding:0}.bdn .cell.empty:hover{transform:none;box-shadow:none}.bdn .cell .flag{position:absolute;top:5px;right:6px;width:9px;height:9px;border-radius:50%;background:var(--red)}.bdn .cell.tot{background:#f1f3f5;border-color:#d8dde1;cursor:default}.bdn .cell.tot:hover{transform:none;box-shadow:none}.bdn .cell.tot .n{font-size:15.5px}.bdn .flow{display:flex;flex-wrap:wrap;align-items:stretch}.bdn .arw{display:flex;align-items:center;color:var(--muted);font-size:19px;padding:0 7px;align-self:center}.bdn .node{width:212px;min-height:122px;background:var(--surface);border:1.6px solid var(--grid);border-radius:12px;padding:12px 13px;text-align:left;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;gap:3px;transition:transform .12s,box-shadow .12s;margin:5px 0}.bdn .node:hover{transform:translateY(-2px);box-shadow:0 6px 18px #11131517}.bdn .node .num{font-size:11px;font-weight:700;color:#fff;background:#79838a;border-radius:5px;padding:2px 8px;align-self:flex-start}.bdn .node .nm{font-size:13.2px;font-weight:700;line-height:1.32;margin-top:3px}.bdn .node .wh{font-size:11.5px;color:var(--muted);margin-top:auto}.bdn .node .bd{font-size:11.5px;font-weight:700;border-radius:999px;padding:3px 9px;align-self:flex-start;margin-top:5px}.bdn .node.bad{border-color:var(--red);background:var(--redbg);border-width:2.2px}.bdn .node.bad .num{background:var(--red)}.bdn .node.bad .bd{background:var(--red);color:#fff}.bdn .node.warn{border-color:var(--amb);background:var(--ambbg);border-style:dashed;border-width:2px}.bdn .node.warn .num{background:var(--amb)}.bdn .node.warn .bd{background:var(--amb);color:#fff}.bdn .node.good .bd{background:#edf0f2;color:var(--ink2)}.bdn .brow{display:grid;grid-template-columns:118px 1fr 100px;align-items:center;gap:11px;height:34px}.bdn .blab{font-size:12.4px;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bdn .btrack{height:15px;background:#edf0f2;border-radius:4px}.bdn .bfill{height:15px;border-radius:4px;background:var(--blue)}.bdn .bfill.r{background:var(--red)}.bdn .bval{font-size:12.2px;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink2)}.bdn .charts{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:900px){.bdn .charts{grid-template-columns:1fr}}.bdn .frm{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}@media(max-width:900px){.bdn .frm{grid-template-columns:1fr 1fr}}.bdn .fld{display:flex;flex-direction:column;gap:5px;margin-bottom:0}.bdn .fld.c2{grid-column:span 2}.bdn .fld.full{grid-column:1/-1}.bdn .fld label{font-size:12px;font-weight:700;color:var(--ink2);margin-bottom:0;text-transform:none;letter-spacing:normal}.bdn .fld label span{font-weight:400;color:var(--muted)}.bdn input[type=text],.bdn input[type=number],.bdn input[type=date],.bdn select,.bdn textarea,.bdn .fld input,.bdn .fld select,.bdn .fld textarea{font-family:inherit;font-size:13.3px;padding:8px 10px;border:1px solid #C9D0D6;border-radius:8px;background:#fff;color:var(--ink);width:100%;min-width:0}.bdn input:focus,.bdn select:focus,.bdn textarea:focus{outline:2px solid var(--blue);border-color:var(--blue)}.bdn textarea{resize:vertical;min-height:66px;line-height:1.5}.bdn .chk{display:flex;flex-wrap:wrap;gap:6px}.bdn .chk label{display:inline-flex;align-items:center;gap:6px;border:1px solid #C9D0D6;border-radius:7px;padding:5px 10px;font-size:12.5px;font-weight:600;cursor:pointer;background:#fff;margin-bottom:0}.bdn .chk label:has(input:checked){border-color:var(--red);background:var(--redbg);color:var(--red)}.bdn .chk label input{width:auto}.bdn .frow{display:flex;gap:9px;align-items:center;margin-top:13px;flex-wrap:wrap}.bdn .msg{font-size:12.8px;font-weight:600}.bdn .msg.ok{color:var(--ok)}.bdn .msg.bad{color:var(--red)}.bdn .editing{border:2px solid var(--blue)!important;background:#f7fbff}.bdn .filters{display:flex;flex-wrap:wrap;gap:9px;align-items:end;margin-bottom:12px;background:none;border:0;border-radius:0;padding:0}.bdn .filters .fld{min-width:145px}.bdn .filters input[type=text],.bdn .filters select{min-width:0}.bdn table{width:100%;border-collapse:collapse;font-size:13px}.bdn th,.bdn td{padding:8px 9px;border-bottom:1px solid var(--grid);text-align:left;vertical-align:top}.bdn th{font-size:11.2px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);border-bottom:1.5px solid #C3C7CB;white-space:nowrap;background:none;font-weight:700}.bdn th.srt{cursor:pointer}.bdn th.srt:hover{color:var(--ink)}.bdn td.num,.bdn th.num{text-align:right;font-variant-numeric:tabular-nums}.bdn tbody tr:hover{background:#fafbfc}.bdn tfoot td{border-top:0;background:none;font-weight:400}.bdn .tagn{display:inline-block;padding:2px 8px;border-radius:999px;font-size:10.8px;font-weight:700;color:#fff;white-space:nowrap}.bdn .stp{display:inline-block;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700;white-space:nowrap;border:1px solid}.bdn .st0{background:#f2f4f6;color:#5b646b;border-color:#d5dbe0}.bdn .st1{background:#eaf3fc;color:#14477f;border-color:#b9d6f2}.bdn .st2{background:var(--okbg);color:#155f30;border-color:var(--okln)}.bdn .st3{background:var(--ambbg);color:#6e4109;border-color:#e8c99a}.bdn .st4{background:#f2f4f6;color:#8a9299;border-color:#d5dbe0}.bdn .own{font-size:11px;color:var(--muted);font-style:italic}.bdn .lnk{background:none;border:none;padding:0;font-family:inherit;font-size:inherit;color:var(--ink);text-align:left;cursor:pointer;font-weight:700;text-decoration:underline;text-decoration-color:#c9d0d6;text-underline-offset:3px}.bdn .lnk:hover{color:var(--blue);text-decoration-color:var(--blue)}.bdn .lnk.n{font-weight:400;color:var(--ink2)}.bdn .lnk.mut{font-weight:400;color:var(--muted);font-style:italic;text-decoration-style:dashed}.bdn .clamp{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink2);font-size:12.3px;margin-top:3px}.bdn .sev{display:inline-block;padding:2px 9px;border-radius:6px;font-size:11px;font-weight:700;color:#fff;white-space:nowrap}.bdn .sevq{font-size:10.5px;color:var(--amb);margin-left:4px;font-weight:700}.bdn .badges{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}.bdn .badges .bg{font-size:11.5px;font-weight:700;border-radius:7px;padding:4px 10px;border:1px solid var(--grid);background:#f7f8f9;color:var(--ink2)}.bdn .sec{margin:0 0 14px}.bdn .sec h5{margin:0 0 5px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.bdn .sec p{margin:0;font-size:13.4px;line-height:1.6;color:var(--ink)}.bdn .sec.act{background:var(--okbg);border:1px solid var(--okln);border-radius:10px;padding:13px 15px}.bdn .sec.fix{background:#f6faff;border:1px solid #CFE0F5;border-radius:10px;padding:13px 15px}.bdn .sec.none2{background:#fafaf9;border:1px dashed var(--grid);border-radius:10px;padding:13px 15px}.bdn .fq{display:inline-flex;align-items:center;gap:6px}.bdn .fqbar{width:44px;height:7px;background:#edf0f2;border-radius:4px;overflow:hidden;flex:none}.bdn .fqbar i{display:block;height:7px;background:var(--red)}.bdn .fqbar i.ok{background:var(--ok)}.bdn .apr{display:inline-block;padding:2px 9px;border-radius:6px;font-size:11px;font-weight:700;color:#fff;white-space:nowrap}.bdn .note{border-left:4px solid var(--amb);background:var(--ambbg);border-radius:0 9px 9px 0;padding:12px 15px;font-size:13.2px;color:#6e4109;margin:14px 0 0}.bdn .note b{color:#5a3507}.bdn .est{border-left:4px solid var(--blue);background:#f1f6fd;border-radius:0 9px 9px 0;padding:12px 15px;font-size:13.2px;color:#1b3b63;margin-top:14px}.bdn ul.tight{margin:8px 0 0;padding-left:20px}.bdn ul.tight li{margin:6px 0}.bdn.mdov{position:fixed;top:0;right:0;bottom:0;left:0;background:#11131561;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;overflow-y:auto;animation:mdfade .16s ease;min-height:0}@keyframes mdfade{0%{opacity:0}to{opacity:1}}@keyframes mdrise{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}.bdn .mdl{background:var(--surface);border-radius:14px;width:min(620px,100%);margin:auto;box-shadow:0 18px 56px #11131547;display:flex;flex-direction:column;max-height:calc(100vh - 48px);animation:mdrise .18s ease}.bdn .mdl.wide{width:min(940px,100%)}.bdn .mdh{padding:18px 22px 14px;border-bottom:1px solid var(--grid);position:relative;flex:none}.bdn .mdh .tag{font-size:11.2px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.bdn .mdh h4{margin:5px 0 4px;font-size:18.5px;line-height:1.3;padding-right:44px}.bdn .mdh .m{font-size:12.8px;color:var(--ink2)}.bdn .mdx{position:absolute;top:14px;right:16px;border:1px solid var(--ring);background:#fff;border-radius:8px;width:32px;height:32px;font-size:17px;cursor:pointer;color:var(--ink2);font-family:inherit}.bdn .mdx:hover{background:#f1f3f5}.bdn .mdb{padding:17px 22px 20px;overflow-y:auto;flex:1}.bdn .mdf{padding:13px 22px;border-top:1px solid var(--grid);background:#fbfcfc;border-radius:0 0 14px 14px;flex:none}@media(max-width:640px){.bdn.mdov{padding:0}.bdn .mdl,.bdn .mdl.wide{width:100%;max-height:100vh;border-radius:0;min-height:100vh}.bdn .mdf{border-radius:0}}.bdn .iss{border:1px solid var(--ring);border-left:5px solid var(--red);border-radius:0 10px 10px 0;padding:13px 15px;margin-bottom:12px;background:#fff}.bdn .iss .h{font-size:13.8px;font-weight:700;margin-bottom:6px}.bdn .iss .t{font-size:13px;color:var(--ink2);line-height:1.55}.bdn .iss .f{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px;font-size:11.3px}.bdn .iss .f span{background:#f2f4f6;border-radius:5px;padding:3px 9px;color:var(--ink2)}.bdn .none{border:1px dashed var(--grid);border-radius:10px;padding:16px;text-align:center;color:var(--muted);font-size:13px;line-height:1.5}.bdn .kv{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:13.2px;margin:0 0 15px;background:none;border-radius:0;padding:0}.bdn .kv dt{color:var(--muted)}.bdn .kv dd{margin:0;font-weight:600}.bdn footer{margin-top:40px;padding-top:13px;border-top:1px solid var(--grid);font-size:12.2px;color:var(--muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}@media(max-width:640px){.bdn .node{width:100%}.bdn .arw{display:none}}.bdn .drop{cursor:default;transition:none}.bdn .drop p{margin:0;color:inherit;font-size:inherit}.bdn .drop b{font-size:inherit}.bdn .card h3{margin:22px 0 9px;font-size:14.5px;font-weight:700}.bdn .legend span{display:inline;align-items:normal;gap:0}.bdn .legend i,.bdn .legend .dot{display:inline-block}.shell{display:flex;min-height:100vh;align-items:stretch}.side{position:sticky;top:0;align-self:flex-start;height:100vh;flex:none;width:238px;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);z-index:30}.side-brand{padding:18px 18px 14px;border-bottom:1px solid var(--border)}.side-brand b{display:block;font-size:14.5px;font-weight:650;letter-spacing:-.01em;line-height:1.3}.side-brand span{display:block;margin-top:3px;font-size:12px;color:var(--muted)}.side-nav{flex:1;overflow-y:auto;padding:12px 10px}.side-nav button{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:none;border-radius:8px;padding:8px 10px;margin-bottom:2px;font-family:inherit;font-size:13.5px;color:var(--ink2);cursor:pointer;line-height:1.35}.side-nav button:hover{background:#f0efec;color:var(--ink)}.side-nav button.on{background:#eaf1fc;color:var(--s1);font-weight:620}.side-nav .ic{font-style:normal;font-size:12px;opacity:.75;flex:none;width:14px;text-align:center}.side-lbl{margin:14px 10px 6px;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.side-empty{padding:4px 10px;font-size:12.5px;color:var(--muted)}.side-foot{padding:12px 14px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:10px}.side-user{min-width:0}.side-user b{display:block;font-size:12.8px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-user span{font-size:11.5px;color:var(--muted)}.side-foot .btn{flex:none;white-space:nowrap;padding:6px 10px}.side-toggle,.side-scrim{display:none}.main{flex:1;min-width:0;padding:22px 26px 64px;max-width:1460px}.mid{display:flex;justify-content:center;padding:60px 0}.note.err{border-left-color:var(--crit);background:#fdf3f3;color:#8a2020}.pagehead{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid var(--border)}.pagehead h1{margin:0 0 4px;font-size:21px;font-weight:650;letter-spacing:-.01em}.pagehead p{margin:0;color:var(--ink2);font-size:13px}.blk-h{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 12px}.blk-h h2{margin:0;font-size:16px;font-weight:640}.blk-h .desc{font-size:12.5px;color:var(--muted)}.runline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--ink2);background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:9px 13px;margin-bottom:14px}.tiles.t4{grid-template-columns:repeat(5,1fr)}.tiles.t3{grid-template-columns:repeat(4,1fr)}.tile .dv{font-size:17px;font-weight:500;color:var(--muted)}.nm-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(430px,1fr));margin-bottom:16px}.nm-card h3{display:flex;align-items:center;gap:8px}.nm-dot{width:10px;height:10px;border-radius:3px;flex:none}.nm-empty{border:1px dashed var(--axis);border-radius:9px;padding:18px;text-align:center;color:var(--ink2);background:#f8f8f5}.nm-empty b{display:block;font-size:13.5px;margin-bottom:4px}.nm-empty p{margin:0;font-size:12.5px;color:var(--muted)}.nm-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:4px 0 14px}.nm-kpi.k3{grid-template-columns:repeat(3,1fr)}.nm-kpi>div{min-width:0}.nm-kpi .lbl{display:block;font-size:11.5px;color:var(--ink2);margin-bottom:3px}.nm-kpi b{display:block;font-size:22px;font-weight:640;letter-spacing:-.02em;line-height:1.2}.nm-kpi .sub{display:block;font-size:11.5px;color:var(--muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nm-prog{display:flex;flex-direction:column;gap:5px}.nm-prog .pr{display:grid;grid-template-columns:126px 1fr 58px;align-items:center;gap:9px}.nm-prog .pl{font-size:12px;color:var(--ink2)}.nm-prog .pb{height:8px;border-radius:5px;background:var(--grid);overflow:hidden}.nm-prog .pb i{display:block;height:100%;background:var(--s1);border-radius:5px}.nm-prog .pn{font-size:12.5px;text-align:right;font-weight:600}.nm-foot{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:14px;padding-top:11px;border-top:1px solid var(--grid);font-size:12.2px;color:var(--ink2)}.nm-foot .qh{font-style:normal;color:var(--crit);font-weight:600}.nx-card{margin-bottom:16px}.nx{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.nx li{display:flex;align-items:flex-start;gap:9px;font-size:13.2px;color:var(--ink);line-height:1.5}.nx li i{flex:none;width:8px;height:8px;border-radius:50%;margin-top:6px;background:var(--muted)}.nx .nx-tot i{background:var(--good)}.nx .nx-luu_y i{background:var(--warn)}.nx .nx-nang i{background:var(--crit)}.nx .nx-tin i{background:var(--axis)}.nx-sm{margin:2px 0 0;padding-top:11px;border-top:1px solid var(--grid)}.nx-sm li{font-size:12.5px;color:var(--ink2)}.tiles.tt-kpi,.tiles.tt-kh{grid-template-columns:repeat(6,1fr)}.tt-h{margin:18px 0 8px;font-size:15px;font-weight:640;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.tt-h span{font-size:12.2px;font-weight:400;color:var(--muted)}.tt-note{margin:8px 0 4px;line-height:1.55}.tt-2col{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(430px,1fr));margin-top:4px}.tt-mo{opacity:.45}.tile-bam{cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease}.tile-bam:hover{border-color:var(--s1);box-shadow:0 1px 6px #2a78d629}.tt-pct{font-size:12px;color:var(--s1);font-weight:600;cursor:pointer}.tt-pct:hover{text-decoration:underline}.tt-canh{color:var(--crit);font-weight:600}.tt-row-canh{background:#fdf3ec}.tt-row-canh:hover{background:#fbe9dc}.tt-ds{max-height:56vh}.tt-ds table{min-width:900px}.tt-ds td,.tt-ds th{white-space:nowrap}.luat{display:flex;flex-direction:column;gap:10px;max-height:60vh;overflow-y:auto;margin:4px -4px 0;padding:0 4px}.luat-i{border:1px solid var(--border);border-radius:9px;padding:11px 13px;background:var(--surface)}.luat-i.mo{opacity:.62}.luat-h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.luat-bat{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13.5px}.luat-bat input{width:auto;margin:0}.luat-noi{font-size:11.5px;color:var(--muted);white-space:nowrap}.luat-sua{font-style:normal;margin-left:8px;padding:1px 7px;border-radius:999px;background:#fff6e0;color:#7a5400;border:1px solid #f2dfae;font-size:11px;font-weight:600}.luat-gt{margin:6px 0 0;font-size:12.5px;color:var(--ink2);line-height:1.5}.luat-mau{margin:6px 0 0;font-size:12.5px;color:var(--ink2);line-height:1.5;background:#f6f6f3;border-left:3px solid var(--axis);border-radius:0 6px 6px 0;padding:7px 10px}.luat-mau span{font-weight:600;color:var(--muted);text-transform:uppercase;font-size:10.5px;letter-spacing:.04em;margin-right:6px}.luat-an{margin:6px 0 0;font-size:12px;color:#8a4415}.luat-an code{background:#fdf1e6;border-radius:4px;padding:1px 5px}.luat-ng{display:flex;flex-wrap:wrap;gap:14px;margin-top:9px;padding-top:9px;border-top:1px solid var(--grid)}.luat-ng label{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink2)}.luat-ng input{width:78px;font-family:inherit;font-size:13px;padding:5px 7px;border:1px solid var(--axis);border-radius:7px;background:#fff;color:var(--ink);text-align:right}.luat-ng input:disabled{background:#f2f2ef;color:var(--muted)}.luat-ng b{font-size:12px;color:var(--muted);font-weight:600}.luat-ng i{font-style:normal;font-size:11.5px;color:var(--muted)}.segs{display:inline-flex;background:#f0efec;border:1px solid var(--border);border-radius:9px;padding:2px;gap:2px}.segs button{background:none;border:none;border-radius:7px;padding:5px 11px;font-family:inherit;font-size:12.5px;color:var(--ink2);cursor:pointer;white-space:nowrap}.segs button:hover{color:var(--ink)}.segs button.on{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0b0b0b14}.imp-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:2px 0 12px}.imp-row label{font-size:11.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.imp-row select,.inp{font-family:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--axis);border-radius:7px;background:#fff;color:var(--ink)}.imp-row select{min-width:186px;max-width:100%}.imp .drop.sm{padding:18px 14px}.imp .drop.sm b{font-size:13.5px}.imp-run{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.imp-sum{margin-top:12px;max-width:520px}@media(max-width:1080px){.tiles.tt-kpi,.tiles.tt-kh{grid-template-columns:repeat(3,1fr)}.tt-2col,.nm-grid{grid-template-columns:1fr}.tiles.t4,.tiles.t3{grid-template-columns:repeat(2,1fr)}.tile.hero{grid-column:span 2}}@media(max-width:820px){.side{position:fixed;left:0;top:0;transform:translate(-100%);transition:transform .18s ease}.shell.mo .side{transform:none;box-shadow:0 0 0 100vmax #0b0b0b14}.side-toggle{display:block;position:fixed;top:12px;left:12px;z-index:40;width:38px;height:38px;border-radius:9px;border:1px solid var(--border);background:var(--surface);font-size:16px;cursor:pointer}.shell.mo .side-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;background:#0b0b0b47}.main{padding:60px 14px 48px}.nm-kpi,.nm-kpi.k3{grid-template-columns:repeat(2,1fr)}.tiles.t4,.tiles.t3{grid-template-columns:1fr}.tile.hero{grid-column:span 1}}:root{--c-bg: #f8fafc;--c-surface: #ffffff;--c-surface-sunken: #f8fafc;--c-border: #e2e8f0;--c-border-subtle: #f1f5f9;--c-text: #1e293b;--c-text-2: #475569;--c-text-3: #5d6b7d;--c-brand: #116536;--c-brand-dark: #0a4223;--c-brand-hover: #18874a;--c-brand-light: #e6f0eb;--c-brand-bd: #c3ddcd;--c-brand-text: #116536;--c-on-brand: #ffffff;--c-on-brand-2: rgba(255,255,255,.85);--c-on-brand-3: rgba(255,255,255,.72);--c-on-brand-line: rgba(255,255,255,.18);--c-danger: #b91c1c;--c-danger-bg: #fef2f2;--c-danger-bd: #fee2e2;--c-danger-bar: #ef4444;--c-serious: #c2410c;--c-serious-bg: #fff7ed;--c-serious-bd: #fed7aa;--c-serious-bar: #f97316;--c-warn: #b45309;--c-warn-bg: #fffbeb;--c-warn-bd: #fde68a;--c-warn-bar: #f59e0b;--c-ok: #047857;--c-ok-bg: #ecfdf5;--c-ok-bd: #d1fae5;--c-ok-bar: #116536;--c-info: #1d4ed8;--c-info-bg: #eff6ff;--c-info-bd: #bfdbfe;--sh-card: 0 4px 6px -1px rgb(0 0 0 / .05), 0 2px 4px -2px rgb(0 0 0 / .025);--sh-premium: 0 10px 25px -5px rgb(0 0 0 / .05), 0 8px 10px -6px rgb(0 0 0 / .01);--sh-sidebar: 4px 0 24px rgb(0 0 0 / .05);--r-card: 16px;--r-panel: 12px;--r-control: 8px;--r-pill: 9999px;--fs-caption: 11px;--fs-label: 11px;--fs-body: 13px;--fs-title: 15px;--fs-h1: 26px;--fs-kpi: 30px;--content-pad: 24px;--header-overlap: 48px;--font: Inter, "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;--surface: var(--c-surface);--page: var(--c-bg);--ink: var(--c-text);--ink2: var(--c-text-2);--muted: var(--c-text-3);--grid: var(--c-border-subtle);--axis: #cbd5e1;--border: var(--c-border);--s1: #116536;--s2: #b45309;--s3: #0f766e;--s4: #f59e0b;--s5: #a21caf;--s6: #15803d;--s7: #6d28d9;--s8: #b91c1c;--good: #16a34a;--warn: #f59e0b;--serious: #f97316;--crit: #dc2626;--good-ink: var(--c-ok);--crit-nhat: #f87171}@media(min-width:1536px){:root{--fs-label: 12px;--fs-title: 16px;--fs-h1: 28px;--fs-kpi: 34px}}body{background:var(--c-bg);color:var(--c-text);font-family:var(--font);font-size:var(--fs-body);-webkit-font-smoothing:antialiased}.num,.mono{font-variant-numeric:tabular-nums;font-family:var(--font)}.side{width:240px;background:var(--c-brand-dark);border-right:0;box-shadow:var(--sh-sidebar);z-index:50}.side-brand{height:64px;padding:0 18px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--c-on-brand-line)}.side-brand .side-mark{width:36px;height:36px;flex:none;border-radius:var(--r-control);background:#fff;color:var(--c-brand);font-weight:900;letter-spacing:-.02em;display:flex;align-items:center;justify-content:center;font-size:14px}.side-brand .side-mark{width:40px;height:40px;padding:3px;overflow:hidden}.side-brand .side-mark img{width:100%;height:100%;object-fit:contain;display:block}.side-brand-t{min-width:0}.login-logo{display:block;width:96px;height:auto;margin:0 auto 14px}.login-card h1{text-align:center;font-weight:900;letter-spacing:-.02em;color:var(--c-text)}.login-card>.cap{text-align:center}.side-brand-t b{display:block;color:var(--c-on-brand);font-weight:700;font-size:13.5px;letter-spacing:.01em}.side-brand-t span{color:var(--c-on-brand-3);text-transform:uppercase;font-weight:600;letter-spacing:.08em;font-size:10.5px;margin-top:2px}.side-nav{padding:18px 10px}.side-nav button{gap:12px;padding:10px 12px;margin-bottom:4px;border-radius:var(--r-control);color:var(--c-on-brand-3);font-weight:500;font-size:var(--fs-body)}.side-nav button:hover{background:#ffffff1a;color:var(--c-on-brand)}.side-nav button.on{background:var(--c-brand);color:var(--c-on-brand);font-weight:700;box-shadow:0 2px 6px #0003}.side-nav .ic{opacity:.9}.side-lbl{color:var(--c-on-brand-3);font-weight:700;letter-spacing:.08em;font-size:10.5px;margin:18px 10px 8px}.side-empty{color:var(--c-on-brand-3)}.side-foot{border-top:1px solid var(--c-on-brand-line);padding:14px 16px}.side-user b{color:var(--c-on-brand);font-weight:700}.side-user span{color:var(--c-on-brand-3);text-transform:uppercase;font-weight:600;letter-spacing:.06em;font-size:10.5px}.side-foot .btn{background:#0003;border:1px solid var(--c-on-brand-line);color:var(--c-on-brand)}.side-foot .btn:hover{background:#00000052}.side-toggle{background:var(--c-brand-dark);color:#fff}.main{padding:0 0 48px;max-width:none;background:var(--c-bg)}.main>*{margin-left:var(--content-pad);margin-right:var(--content-pad)}.main>.ov{margin:0}.main>.hd{margin:0;padding:22px var(--content-pad) calc(var(--header-overlap) + 16px);background:var(--c-brand);position:relative}.main>.hd:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.06;pointer-events:none;background-image:radial-gradient(circle at 1px 1px,#fff 1px,transparent 0);background-size:24px 24px}.main>.hd>*{position:relative}.main>.hd+*{margin-top:calc(-1 * var(--header-overlap));position:relative;z-index:2}.hd .crumb{color:var(--c-on-brand-3);font-weight:500;font-size:12px;margin-bottom:14px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.hd .crumb b{color:var(--c-on-brand);font-weight:600}.hd .pagehead{border-bottom:0;padding-bottom:0;margin-bottom:18px;align-items:flex-end}.hd .pagehead h1{color:var(--c-on-brand);font-weight:900;letter-spacing:-.02em;font-size:var(--fs-h1);line-height:1.15;margin:0}.hd .pagehead p{color:var(--c-on-brand-2);font-weight:500;margin-top:8px;font-size:var(--fs-body)}.hd .btn{background:#0003;border:1px solid var(--c-on-brand-line);color:var(--c-on-brand);font-weight:600;padding:8px 14px}.hd .btn:hover:not(:disabled){background:#00000052}.hd .btn.primary{background:#fff;color:var(--c-brand);border-color:#fff}.hd .btn.primary:hover:not(:disabled){background:var(--c-brand-light)}.hd nav.tabs{border-bottom:0;margin:0;gap:8px}.hd nav.tabs button{background:#ffffff1a;border:1px solid var(--c-on-brand-line);color:var(--c-on-brand);border-radius:var(--r-panel);padding:10px 18px;font-weight:500;font-size:var(--fs-body)}.hd nav.tabs button:hover{background:#fff3;color:var(--c-on-brand)}.hd nav.tabs button.on{background:#fff;color:var(--c-brand);border-color:#fff;font-weight:700;box-shadow:var(--sh-card)}nav.tabs button.on{color:var(--c-brand-text);border-bottom-color:var(--c-brand)}.card{background:var(--c-surface);border:1px solid var(--c-border-subtle);border-radius:var(--r-card);box-shadow:var(--sh-premium);padding:18px 20px}.card h3{font-size:var(--fs-title);font-weight:800;color:var(--c-text);letter-spacing:-.01em;display:flex;align-items:center;gap:10px}.card>.cardhead h3:before,.card>h3:before{content:"";width:4px;height:18px;border-radius:var(--r-pill);background:var(--c-brand);flex:none}.card .cap{color:var(--c-text-3);font-size:12px}.grid,.tiles{gap:16px}.tile{background:var(--c-surface);border:1px solid var(--c-border-subtle);border-radius:var(--r-card);box-shadow:var(--sh-premium);padding:16px 18px;position:relative;overflow:hidden}.tile:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--tile-bar, var(--c-brand))}.tile .lbl{color:var(--c-text-2);text-transform:uppercase;font-weight:800;letter-spacing:.08em;font-size:var(--fs-label);line-height:1.3;margin-bottom:10px;min-height:28px}.tile .val{font-weight:900;letter-spacing:-.03em;font-size:var(--fs-kpi);line-height:1.05;font-variant-numeric:tabular-nums}.tile .sub{color:var(--c-text-3);font-weight:600;font-size:12px;margin-top:8px}.tile.hero .val{font-size:calc(var(--fs-kpi) * 1.25)}.runline{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-panel);box-shadow:var(--sh-card);padding:14px 16px;margin-bottom:18px;color:var(--c-text-2);font-size:var(--fs-body)}.runline b{color:var(--c-text)}.btn{border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text-2);border-radius:var(--r-control);font-weight:600;padding:8px 14px;font-size:var(--fs-body)}.btn:hover{background:var(--c-surface-sunken);border-color:var(--c-brand-bd)}.btn.primary{background:var(--c-brand);border-color:var(--c-brand);color:#fff}.btn.primary:hover:not(:disabled){background:var(--c-brand-hover)}.link{color:var(--c-brand-text);font-weight:600;font-size:12.5px}.inp,select.inp,input.inp,.filters select,.fld select,.fld input,.fld textarea{background:var(--c-surface-sunken);border:1px solid var(--c-border);border-radius:var(--r-control);padding:7px 10px;color:var(--c-text);font-family:inherit;font-size:var(--fs-body);font-weight:500}.inp:hover,.inp:focus{border-color:var(--c-brand);outline:none}input[type=checkbox]{accent-color:var(--c-brand)}.runline .cap,.cardhead label.cap{color:var(--c-text-3);text-transform:uppercase;font-weight:700;letter-spacing:.06em;font-size:11px}.tblwrap{border:1px solid var(--c-border);border-radius:var(--r-panel);background:var(--c-surface);box-shadow:var(--sh-card)}table{font-size:var(--fs-body)}th{background:var(--c-surface-sunken);color:var(--c-text-2);text-transform:uppercase;font-weight:800;letter-spacing:.08em;font-size:11px;padding:12px 14px;border-bottom:1px solid var(--c-border)}td{padding:10px 14px;border-bottom:1px solid var(--c-border-subtle);color:var(--c-text)}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--c-surface-sunken)}.kv{background:var(--c-surface-sunken);border:1px solid var(--c-border-subtle);border-radius:var(--r-panel);padding:14px 16px}.kv dt{color:var(--c-text-3);font-weight:500}.kv dd{color:var(--c-text);font-weight:600}.mbar{background:var(--c-border-subtle)}.note{background:var(--c-info-bg);border:1px solid var(--c-info-bd);border-left:1px solid var(--c-info-bd);color:var(--c-text-2);border-radius:var(--r-panel);padding:12px 14px;font-size:var(--fs-body)}.note.err{background:var(--c-danger-bg);border-color:var(--c-danger-bd);color:var(--c-danger)}.ov{background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{background:var(--c-surface);border-radius:var(--r-card);box-shadow:var(--sh-premium),0 25px 50px -12px #00000040;padding:0;border:1px solid var(--c-border-subtle)}.modal>h3{margin:0;padding:18px 22px 0;font-size:17px;font-weight:800;color:var(--c-text);display:flex;align-items:center;gap:10px}.modal>h3:before{content:"";width:4px;height:18px;border-radius:var(--r-pill);background:var(--c-brand);flex:none}.modal>.sub{padding:4px 22px 0;margin-bottom:14px;color:var(--c-text-3);font-size:12px}.modal>:not(h3):not(.sub):not(.macts){margin-left:22px;margin-right:22px}.modal>.macts{margin:16px 0 0;padding:12px 22px;border-top:1px solid var(--c-border-subtle);background:var(--c-surface-sunken);border-radius:0 0 var(--r-card) var(--r-card);position:sticky;bottom:0}.tip{border-radius:var(--r-control);border-color:var(--c-border);box-shadow:var(--sh-premium)}.blk-h h2{font-weight:800;font-size:var(--fs-title);color:var(--c-text)}.nm-kpi b{font-weight:900;letter-spacing:-.03em}.nm-kpi .lbl{text-transform:uppercase;font-weight:700;letter-spacing:.06em;font-size:10.5px;color:var(--c-text-2)}.drop{border-radius:var(--r-panel);border-color:var(--c-brand-bd);background:var(--c-surface-sunken)}.drop.over{border-color:var(--c-brand);background:var(--c-brand-light)}.filerow{border-radius:var(--r-control)}
