@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/5662512df8b0ccdf-s.p.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/07ef58f5f6014a87-s.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/5ab5267d02dae909-s.p.woff2) format("woff2");unicode-range:u+00??,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:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cd79e1ff94fa521b-s.p.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/89362aa296165c6d-s.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e11f95d95ac59fa4-s.p.woff2) format("woff2");unicode-range:u+00??,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:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/00f4982f357db61e-s.p.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/62a3c74fa0e47362-s.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8201559e247ad180-s.p.woff2) format("woff2");unicode-range:u+00??,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:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/2173e4bb28c315da-s.p.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c6f81e539d11fc99-s.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/25ab8995c98996d7-s.p.woff2) format("woff2");unicode-range:u+00??,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:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9ddf1512dbee9c99-s.p.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8247d8d2a376ae43-s.woff2) format("woff2");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:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e270c9fc4fe96f5a-s.p.woff2) format("woff2");unicode-range:u+00??,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:Be Vietnam Pro Fallback;src:local("Arial");ascent-override:90.61%;descent-override:24.01%;line-gap-override:0.00%;size-adjust:110.36%}.__className_6335ad{font-family:Be Vietnam Pro,Be Vietnam Pro Fallback;font-style:normal}.__variable_6335ad{--font-be-vietnam-pro:"Be Vietnam Pro","Be Vietnam Pro Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_e896d9{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_e896d9{--font-jetbrains-mono:"JetBrains Mono","JetBrains Mono Fallback"}@font-face{font-family:FPT SongVui;src:url(/fonts/fpt-songvui-regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:FPT SongVui;src:url(/fonts/fpt-songvui-bold.ttf) format("truetype");font-weight:700;font-display:swap}:root{--blue:#0047BB;--blue-dark:#003A99;--blue-tint:#F0F4FF;--blue-line:#CCDAF2;--navy:#0A1F3D;--orange:#FF8206;--orange-dark:#E67304;--orange-tint:#FFE6CD;--orange-ink:#B35A00;--green:#00A838;--green-tint:#E0F8E9;--green-ink:#007A29;--red:#E02B00;--red-tint:#FDE8E4;--red-ink:#B32200;--pink:#F9A1D2;--pink-tint:#FDEDF6;--pink-ink:#B4136F;--ink:#111111;--muted:#5A6070;--faint:#8A90A0;--line:#E3E5EA;--line-strong:#D6D9E0;--bg:#F5F5F5;--white:#FFFFFF;--hover:#F0F2F5;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:10px;--r-bit:20px;--ease:cubic-bezier(.2,.7,.2,1);--sidebar:248px;--reviewbar:0px}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-be-vietnam-pro),system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:"FPT SongVui",var(--font-be-vietnam-pro),sans-serif;font-weight:700;line-height:1.1}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}a{color:var(--blue);text-decoration:none}.mono{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}#review{position:fixed;top:0;left:0;right:0;height:var(--reviewbar);z-index:200;background:var(--ink);color:#fff;display:flex;align-items:center;gap:14px;padding:0 16px;font-size:13px;overflow-x:auto}#review b{font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:11px;color:#8A90A0;white-space:nowrap}#review .rl{display:flex;gap:6px}#review a{background:transparent;border:1px solid #3a3f4a;color:#C3C9D4;border-radius:var(--r-sm);padding:5px 12px;font-size:13px;font-weight:500;white-space:nowrap}#review a:hover{border-color:#5A6070;color:#fff}#review a.on{background:var(--blue);border-color:var(--blue);color:#fff}#review .hint{margin-left:auto;color:#8A90A0;white-space:nowrap}.app{min-height:100vh;padding-top:var(--reviewbar)}.app,.side{display:flex}.side{width:var(--sidebar);flex:0 0 var(--sidebar);background:var(--navy);color:#C3C9D4;position:fixed;top:var(--reviewbar);bottom:0;left:0;flex-direction:column;z-index:100}.brand{display:flex;align-items:center;gap:10px;padding:14px 16px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.bitdot{width:24px;height:24px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);grid-gap:2px;gap:2px;transform:rotate(13deg);flex:0 0 auto}.bitdot i{border-radius:2px;background:#fff}.bitdot i.o{background:var(--orange)}.bitdot i.e{background:transparent}.brand .nm{font-family:FPT SongVui,sans-serif;font-weight:700;font-size:16px;color:#fff;line-height:1.15}.brand .sub{font-size:11px;color:#8A90A0;letter-spacing:.08em;text-transform:uppercase}.nav{padding:4px 10px 16px;overflow-y:auto;flex:1 1}.nav .grp{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#5A6070;padding:12px 10px 6px;font-weight:600}.nav a{position:relative;display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--r-md);color:#C3C9D4;font-size:14px;font-weight:500;margin-bottom:2px}.nav a:hover{background:rgba(255,255,255,.06);color:#fff}.nav a.on{background:var(--blue);color:#fff}.nav a .ic{width:18px;text-align:center;opacity:.85;font-size:15px}.nav a .cnt{margin-left:auto;background:var(--orange);color:var(--ink);font-size:11px;font-weight:600;border-radius:20px;padding:1px 7px;min-width:20px;text-align:center}.nav a.on .cnt{background:#fff;color:var(--blue)}.me{padding:10px 12px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:10px}.av{width:34px;height:34px;border-radius:var(--r-md);background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:600;font-size:13px;flex:0 0 auto}.me .n{font-size:13.5px;color:#fff;font-weight:500;line-height:1.25}.me .r{font-size:11.5px;color:#8A90A0}.me-out{margin-left:auto;background:transparent;border:none;color:#8A90A0;font-size:15px;width:28px;height:28px;border-radius:var(--r-sm);display:grid;place-items:center;flex:0 0 auto;cursor:pointer}.me-out:hover{color:#fff;background:rgba(255,255,255,.08)}.me-out:disabled{opacity:.5;cursor:default}.side-toggle{margin-left:auto;background:transparent;border:none;color:#8A90A0;font-size:15px;width:28px;height:28px;border-radius:var(--r-sm);display:grid;place-items:center;flex:0 0 auto}.side-toggle:hover{background:rgba(255,255,255,.08);color:#fff}.main,.side{transition:width .2s var(--ease),margin-left .2s var(--ease)}body.collapsed{--sidebar:68px}body.collapsed .brand{flex-direction:column;gap:8px;padding:14px 0 12px}body.collapsed .brand>div:not(.bitdot){display:none}body.collapsed .side-toggle{margin-left:0}body.collapsed .nav{padding:4px 10px 16px}body.collapsed .nav .grp{display:none}body.collapsed .nav .grp+a{margin-top:10px}body.collapsed .nav a{justify-content:center;font-size:0;padding:11px 0}body.collapsed .nav a .ic{font-size:16px;width:auto}body.collapsed .nav a .cnt{position:absolute;top:6px;right:12px;min-width:8px;width:8px;height:8px;padding:0;font-size:0;border-radius:50%}body.collapsed .me{justify-content:center;padding:12px 0}body.collapsed .me>div:not(.av){display:none}body.collapsed .me{flex-direction:column;gap:8px}body.collapsed .me-out{margin-left:0}.main{margin-left:var(--sidebar);flex:1 1;min-width:0}.top{position:-webkit-sticky;position:sticky;top:var(--reviewbar);z-index:60;background:rgba(245,245,245,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:10px 20px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.top h1{font-size:24px}.top .eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:4px}.top .sp{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.burger{display:none;background:var(--white);border:1px solid var(--line-strong);border-radius:var(--r-md);width:40px;height:40px;font-size:17px}.wrap{padding:16px 20px 56px;max-width:1440px}.btn{display:inline-flex;align-items:center;gap:8px;border-radius:var(--r-md);font-weight:600;font-size:14px;padding:9px 16px;transition:background .14s var(--ease),border-color .14s var(--ease);background:var(--white);color:var(--ink);border:1px solid var(--line-strong)}.btn:hover{background:var(--hover)}.btn.pri{background:var(--blue);color:#fff;border-color:var(--blue)}.btn.pri:hover{background:var(--blue-dark)}.btn.cta{background:var(--orange);color:#fff;border-color:var(--orange)}.btn.cta:hover{background:var(--orange-dark)}.btn.gh{background:transparent;border-color:transparent;color:var(--blue)}.btn.gh:hover{background:var(--blue-tint)}.btn.sm{font-size:13px;padding:6px 11px}.lien-ket{background:transparent;border:none;padding:0;color:var(--blue);font-size:12px;font-weight:600;cursor:pointer}.lien-ket:hover{text-decoration:underline}.btn:disabled{background:var(--line);color:#A0A0A0;border-color:var(--line);cursor:not-allowed}.btn.dg{color:var(--red)}.btn.dg:hover{background:var(--red-tint)}.btn:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px}.card>h3{font-size:17px;margin-bottom:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card .desc{font-size:13.5px;color:var(--muted);margin-bottom:10px}.card-h{align-items:flex-start;gap:10px;margin-bottom:10px}.card-h,.card-h .sp{display:flex;flex-wrap:wrap}.card-h .sp{margin-left:auto;gap:8px;align-items:center}.grid{display:grid;grid-gap:10px;gap:10px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-32{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.g-23{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}.mb8{margin-bottom:6px}.mb16{margin-bottom:10px}.mb24{margin-bottom:16px}.mt16{margin-top:10px}.mt24{margin-top:16px}.kpi{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:9px 12px}.kpi .lb{font-size:12px;color:var(--muted);font-weight:500;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.kpi .vl{font-family:var(--font-jetbrains-mono),monospace;font-size:22px;font-weight:600;letter-spacing:-.02em;margin:2px 0 1px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi .vl small{font-size:16px;color:var(--faint);font-weight:500}.kpi .dt{font-size:12px;color:var(--muted)}.up{color:var(--green-ink)}.dn,.up{font-weight:600}.dn{color:var(--red-ink)}.kpi.hl{border-color:var(--blue-line);background:linear-gradient(101deg,#F8FAFF,#F0F4FF)}.tag{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:3px 9px;border-radius:var(--r-xs);background:var(--hover);color:var(--muted);white-space:nowrap}.tag.hint{white-space:normal;text-align:left;max-width:100%}.tag.b{background:var(--blue-tint);color:var(--blue)}.tag.o{background:var(--orange-tint);color:var(--orange-ink)}.tag.g{background:var(--green-tint);color:var(--green-ink)}.tag.r{background:var(--red-tint);color:var(--red-ink)}.tag.p{background:var(--pink-tint);color:var(--pink-ink)}.rank{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:var(--r-sm);background:var(--hover);color:var(--muted);font-family:var(--font-jetbrains-mono),monospace;font-size:13px;font-weight:600}.rank.t1{background:var(--orange);color:var(--ink)}.rank.t2{background:var(--blue);color:#fff}.rank.t3{background:var(--blue-line);color:var(--blue)}.rank.me{background:var(--blue);color:#fff}.grade{display:inline-grid;place-items:center;width:auto;min-width:26px;height:26px;padding:0 7px;border-radius:var(--r-md);font-family:FPT SongVui,sans-serif;font-weight:700;font-size:15px}.grade.Ap{background:var(--green-ink);color:var(--white)}.grade.A{background:var(--green-tint);color:var(--green-ink)}.grade.Bp{background:var(--blue);color:var(--white)}.grade.B{background:var(--blue-tint);color:var(--blue)}.grade.C{background:var(--hover);color:var(--muted)}.grade.D{background:var(--orange-tint);color:var(--orange-ink)}.grade.E{background:var(--red-tint);color:var(--red-ink)}table{width:100%;border-collapse:collapse;font-size:14px}.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--white)}.tbl-wrap.flat{border:none;border-radius:0}.tbl-wrap table{min-width:720px}.tbl-wrap.flat table{min-width:520px}th{text-align:left;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-weight:600;padding:8px 12px;border-bottom:1px solid var(--line);white-space:nowrap;background:var(--white)}th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}th.sortable:hover{color:var(--blue)}th.sortable:after{content:"⇅";margin-left:6px;font-size:10px;opacity:.4}th.sortable.asc:after{content:"↑";opacity:1;color:var(--blue)}th.sortable.desc:after{content:"↓";opacity:1;color:var(--blue)}th.sortable.asc,th.sortable.desc{color:var(--blue)}td{padding:8px 12px;border-bottom:1px solid var(--line);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:#FAFBFC}tr.me-row,tr.me-row:hover{background:var(--blue-tint)}td.num,th.num{text-align:right;font-family:var(--font-jetbrains-mono),monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}td.num{font-weight:500}td.strong,tfoot td{font-weight:600}tfoot td{background:#FAFBFC;border-top:1px solid var(--line);border-bottom:none}.sub{font-size:12.5px;color:var(--muted);margin-top:2px}.who{display:flex;align-items:center;gap:10px}.who .av{width:28px;height:28px;font-size:11.5px}.who .nm{font-weight:500;line-height:1.25}.who .dp{font-size:12px;color:var(--faint)}.row-act{display:flex;gap:6px;justify-content:flex-end}.chk{width:16px;height:16px;accent-color:var(--blue)}.bar{height:6px;background:var(--line);overflow:hidden;min-width:80px}.bar,.bar i{border-radius:1px}.bar i{display:block;height:100%;background:var(--blue)}.bar i.o{background:var(--orange)}.bar i.g{background:var(--green)}.bar i.p{background:var(--pink)}.steps{display:flex;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.step{flex:1 1;padding:10px 14px;border-right:1px solid var(--line);min-width:150px}.step:last-child{border-right:none}.step .k{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-weight:600}.step .t{font-weight:600;font-size:14.5px;margin-top:3px}.step .d{font-size:12.5px;color:var(--muted)}.step.done{background:#F8FAFF}.step.done .t{color:var(--blue)}.step.now{background:var(--blue);color:#fff}.step.now .d,.step.now .k{color:rgba(255,255,255,.75)}.step.now .t{color:#fff}.step.todo{opacity:.55}.steps.sm .step{padding:7px 12px;min-width:120px}.steps.sm .step .k{font-size:10px}.steps.sm .step .t{font-size:13px;margin-top:1px}.steps.sm .step .d{font-size:11.5px}.field{margin-bottom:10px}.field label{display:block;font-size:13px;font-weight:600;margin-bottom:4px}.field .help{font-size:12.5px;color:var(--faint);margin-top:5px}.inp{width:100%;padding:8px 11px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--white);outline:none;font-size:14.5px;transition:border-color .14s var(--ease)}.inp:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,71,187,.12)}.inp.w{width:auto}textarea.inp{resize:vertical;min-height:80px;line-height:1.5}.inp.err{border-color:var(--red)}.err-msg{font-size:12.5px;color:var(--red);margin-top:5px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start}.row>*{flex:1 1;min-width:180px}.row.tight>*{flex:0 0 auto;min-width:0}.seg{display:inline-flex;background:var(--white);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:3px;gap:2px}.seg button{border:none;background:transparent;border-radius:var(--r-sm);padding:5px 12px;font-size:13.5px;font-weight:600;color:var(--muted)}.seg button.on{background:var(--blue);color:#fff}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px;overflow-x:auto}.tabs button{background:transparent;padding:8px 14px;font-size:14.5px;font-weight:600;color:var(--muted);border:none;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.tabs button.on{color:var(--blue);border-bottom-color:var(--blue)}.tabpane{display:none}.tabpane.on{display:block}.score-in{width:76px;padding:5px 8px;border:1px solid var(--line-strong);border-radius:var(--r-md);text-align:right;font-family:var(--font-jetbrains-mono),monospace;font-weight:600;font-size:14px;background:var(--white)}.score-in:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(0,71,187,.12)}.score-in.ro{background:var(--hover);color:var(--muted);border-style:dashed}.crit{font-size:13px;color:var(--muted);line-height:1.6;margin-top:4px}.crit .std{color:var(--green-ink)}.crit .plus{color:var(--blue)}.crit .minus{color:var(--red-ink)}.grp-row td{background:#F8FAFF;font-weight:600;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--blue);padding:6px 12px}.delta{font-family:var(--font-jetbrains-mono),monospace;font-weight:600}.delta.p{color:var(--green-ink)}.delta.m{color:var(--red-ink)}.delta.z{color:var(--faint)}.note{border-left:3px solid var(--blue);background:var(--blue-tint);padding:9px 12px;border-radius:0 var(--r-md) var(--r-md) 0;font-size:13.5px;color:var(--muted)}.note.w{border-color:var(--orange);background:#FFF6EC}.note.d{border-color:var(--red);background:var(--red-tint)}.note.s{border-color:var(--green);background:var(--green-tint)}.note b{color:var(--ink)}.note.sm{padding:6px 10px;font-size:12.5px;line-height:1.5}.legend{display:flex;gap:12px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.sw{width:10px;height:10px;border-radius:2px;display:inline-block}.chart{display:flex;align-items:stretch;gap:10px;height:180px;padding-top:8px}.chart .col{flex:1 1;align-items:center;gap:6px;min-width:0;height:100%}.chart .col,.chart .stack{display:flex;flex-direction:column;justify-content:flex-end}.chart .stack{width:100%;max-width:46px;gap:3px;height:calc(100% - 24px)}.chart .b1{background:var(--blue);border-radius:2px}.chart .b2{background:var(--blue-line);border-radius:2px}.chart .b3{background:var(--orange);border-radius:2px}.chart .lb{font-size:11.5px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.hbar{display:flex;align-items:center;gap:12px;margin-bottom:8px}.hbar .nm{width:190px;flex:0 0 auto;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar .bar{flex:1 1}.hbar .vl{width:56px;flex:0 0 auto;text-align:right;font-family:var(--font-jetbrains-mono),monospace;font-size:13.5px;font-weight:600}.empty{text-align:center;padding:32px 16px;color:var(--faint)}.empty .ic{font-size:28px;margin-bottom:10px;opacity:.5}.scrim{position:fixed;inset:0;background:rgba(17,17,17,.4);z-index:150;display:none}.scrim.open{display:block}.panel{position:fixed;top:0;right:0;bottom:0;width:440px;max-width:100%;background:var(--white);z-index:160;display:none;flex-direction:column;box-shadow:-8px 0 32px rgba(17,17,17,.12)}.panel.open{display:flex;animation:slide .32s var(--ease)}@keyframes slide{0%{transform:translateX(100%)}to{transform:translateX(0)}}.panel-h{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;gap:12px}.panel-h>div{min-width:0}.panel-h .eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--orange)}.panel-h h3{font-size:20px;margin-top:3px;overflow-wrap:anywhere}.panel-h .x{margin-left:auto;background:transparent;border:none;font-size:22px;color:var(--faint);line-height:1}.panel-b{padding:16px 18px;overflow-y:auto;flex:1 1}.panel-f{padding:12px 18px;border-top:1px solid var(--line);display:flex;gap:10px;background:var(--white)}.panel-f .btn{flex:1 1;justify-content:center}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;max-width:calc(100% - 32px);max-height:calc(100vh - 88px);background:var(--white);border-radius:var(--r-lg);z-index:160;display:none;flex-direction:column;box-shadow:0 12px 48px rgba(17,17,17,.18)}.modal.open{display:flex}.drop{border:1.5px dashed var(--line-strong);border-radius:var(--r-md);padding:22px;text-align:center;color:var(--muted);background:#FAFBFC}.drop b{color:var(--blue)}.screen{display:none}.screen.on{display:block}@media (max-width:1180px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-23,.g-32{grid-template-columns:minmax(0,1fr)}}@media (max-width:980px){body.collapsed{--sidebar:248px}.side-toggle{display:none}.side{transform:translateX(-100%);transition:transform .22s var(--ease)}.side.open{transform:translateX(0)}.main{margin-left:0}.burger{display:grid;place-items:center}.wrap{padding:14px 12px 56px}.top{padding:8px 12px}.g2,.g3,.g4{grid-template-columns:minmax(0,1fr)}.steps{flex-direction:column}.step{border-right:none;border-bottom:1px solid var(--line)}.step:last-child{border-bottom:none}}@media (max-width:640px){.kpi .vl,.top h1{font-size:20px}.hbar .nm{width:120px}.top .sp{width:100%;margin-left:0}}.monthbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--r-lg);padding:8px 12px;margin-bottom:14px}.mb-nav,.monthbar{background:var(--white)}.mb-nav{width:30px;height:30px;border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--muted);display:grid;place-items:center;font-size:16px;line-height:1;flex:0 0 auto}.mb-nav:hover{background:var(--hover);color:var(--ink)}.mb-nav:disabled{opacity:.35;cursor:not-allowed}.mb-sel{padding:7px 11px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--white);font-size:14px;font-weight:600;min-width:236px}.mb-sel:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(0,71,187,.12)}.mb-flow{margin-left:auto;display:flex;flex-wrap:wrap}.fl,.mb-flow{align-items:center;gap:5px}.fl{display:inline-flex;font-size:12.5px;font-weight:600;color:var(--faint);background:var(--hover);border-radius:20px;padding:4px 11px;white-space:nowrap}.fl.done{background:var(--green-tint);color:var(--green-ink)}.fl.now{background:var(--blue);color:#fff}.fl.no{background:var(--red-tint);color:var(--red-ink)}.mb-flow .sep{color:var(--line-strong);font-size:11px}@media (max-width:980px){.mb-flow{margin-left:0;width:100%}.mb-sel{min-width:0;flex:1 1}}td.c-self,th.c-self{background:#FFFCF2}td.c-boss,th.c-boss{background:#F4FAF6}td.c-bgd,th.c-bgd{background:#F5F8FF}tbody tr:hover td.c-self{background:#FFF8E6}tbody tr:hover td.c-boss{background:#EDF6F0}tbody tr:hover td.c-bgd{background:#EDF3FF}.ro{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;font-family:var(--font-jetbrains-mono),monospace;font-weight:600;color:var(--muted)}.ro .lk{font-size:10.5px;opacity:.55;font-family:var(--font-be-vietnam-pro),sans-serif}.ro.wait{color:var(--faint);font-weight:500}.decide{border:1px solid var(--blue-line);border-radius:var(--r-lg);background:linear-gradient(101deg,#F8FAFF,#F0F4FF);padding:14px}.decide h3{font-size:17px;margin-bottom:4px}.decide .desc{font-size:13.5px;color:var(--muted);margin-bottom:10px}.opt{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.opt label{flex:1 1;min-width:190px;display:flex;gap:10px;align-items:flex-start;background:var(--white);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:9px 12px;cursor:pointer;font-size:14px;line-height:1.4}.opt label:hover{border-color:var(--blue)}.opt label input{accent-color:var(--blue);margin-top:3px;flex:0 0 auto}.opt label b{display:block;font-weight:600}.opt label .h{font-size:12.5px;color:var(--muted)}.opt label.ok{border-color:var(--green);background:var(--green-tint)}.opt label.no{border-color:var(--red);background:var(--red-tint)}.verdict{display:flex;align-items:flex-start;gap:12px;border-radius:var(--r-lg);padding:12px 14px;margin-bottom:14px;border:1px solid var(--line)}.verdict .ic{width:36px;height:36px;border-radius:var(--r-md);display:grid;place-items:center;font-size:18px;flex:0 0 auto;color:#fff}.verdict .t{font-weight:600;font-size:15px}.verdict .d{font-size:13.5px;color:var(--muted);margin-top:2px}.verdict .sp{margin-left:auto;flex:0 0 auto}.verdict.ok{background:var(--green-tint);border-color:#B6E7C8}.verdict.ok .ic{background:var(--green)}.verdict.no{background:var(--red-tint);border-color:#F5C4B8}.verdict.no .ic{background:var(--red)}.verdict.wait{background:#FFF6EC;border-color:var(--orange-tint)}.verdict.wait .ic{background:var(--orange)}.auth{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.auth-l{background:var(--navy);color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-l .deco{position:absolute;right:-70px;bottom:-70px;width:340px;height:340px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);grid-gap:12px;gap:12px;transform:rotate(13deg);opacity:.16}.auth-l .deco div{border-radius:28px}.auth-r{background:var(--white);padding:48px;display:flex;flex-direction:column;justify-content:center;align-items:center}.auth-box{width:100%;max-width:392px}.auth-box h1{font-size:30px;margin:6px 0}.auth-box .lead{font-size:14.5px;color:var(--muted);margin-bottom:26px}.pw{position:relative}.pw .eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--faint);font-size:15px;padding:6px 8px;border-radius:var(--r-sm)}.pw .eye:hover{color:var(--ink);background:var(--hover)}@media (max-width:900px){.auth{grid-template-columns:1fr}.auth-l{padding:32px 20px;min-height:auto}.auth-l .deco{display:none}.auth-r{padding:32px 20px}}.req{display:flex;flex-direction:column;gap:7px;font-size:13px;color:var(--muted)}.req span{display:flex;gap:8px}.req i,.req span{align-items:center}.req i{width:16px;height:16px;border-radius:50%;display:inline-flex;justify-content:center;font-size:10px;font-style:normal;background:var(--line-strong);color:#fff;flex:0 0 auto}.req i.ok{background:var(--green)}.req i.no{background:var(--red)}.inp:disabled{background:var(--hover);color:var(--faint);cursor:not-allowed}.spin{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;display:inline-block;animation:sp .62s linear infinite}.btn:disabled .spin{border-color:#A0A0A0 rgba(0,0,0,.18) rgba(0,0,0,.18)}.okpage{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--white);padding:32px 20px}.okbox{max-width:392px;width:100%;text-align:center}.okbox .bitdot i{background:var(--navy)}.okbox .bitdot i.o{background:var(--orange)}.okbox .bitdot i.e{background:transparent}.okmark{width:56px;height:56px;border-radius:50%;background:var(--green-tint);color:var(--green-ink);display:flex;align-items:center;justify-content:center;font-size:26px;margin:0 auto 20px}.okbox h1{font-size:28px;margin-bottom:10px}.okbox .lead{font-size:14.5px;color:var(--muted);margin-bottom:26px}.cfg{--faint:#5F6473;--orange-ink:#9A4E00;--line-input:#8B8D91}.cfg .btn.cta,.cfg .btn.cta:hover{color:var(--ink)}.cfg .btn,.cfg .inp,.cfg .score-in,.cfg select.inp,.cfg textarea.inp{border-color:var(--line-input)}.cfg .btn.pri{border-color:var(--blue)}.cfg .btn.cta{border-color:var(--orange)}.cfg .btn.gh{border-color:transparent}.cfg .btn:disabled{border-color:var(--line)}.cfg .grade{font-size:14px}.cfg .tl{padding:0;margin:0;list-style:none}.cfg .tl-i{position:relative;border-left:2px solid var(--line);padding:0 0 16px 20px}.cfg .tl-i:last-child{border-left-color:transparent;padding-bottom:0}.cfg .tl-i:before{content:"";position:absolute;left:-9px;top:4px;width:16px;height:16px;border-radius:50%;background:var(--white);border:2px solid var(--line-strong)}.cfg .tl-i.pub:before{border-color:var(--green);border-width:4px}.cfg .tl-when{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-size:12.5px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cfg .tl-who{font-size:13.5px;font-weight:600;margin-top:2px}.cfg .tl-what{font-size:13.5px;color:var(--muted);margin-top:4px}.cfg .tl-box{background:var(--bg);border-radius:var(--r-md);padding:6px 10px;margin-top:6px}.cfg .diff{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.cfg .diff .o{color:var(--faint);text-decoration:line-through}.cfg .diff .ar{color:var(--faint);font-family:var(--font-be-vietnam-pro),sans-serif}.cfg .diff .n{color:var(--blue);font-weight:600}.cfg tr.chg td{background:var(--blue-tint)}.cfg tr.chg:hover td{background:var(--blue-line)}.cfg tr.chg td:first-child{box-shadow:inset 3px 0 0 var(--blue)}.cfg .formbar{position:-webkit-sticky;position:sticky;bottom:0;z-index:70;display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px -20px -56px;padding:9px 20px;border-top:1px solid var(--line);background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.cfg .formbar .st{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted)}.cfg .formbar .sp{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}@media (max-width:980px){.cfg .formbar{margin:16px -12px -56px;padding:9px 12px}.cfg .formbar .sp{margin-left:0;width:100%}.cfg .formbar .sp .btn{flex:1 1;justify-content:center}}.cfg .sum{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:9px 14px;border-radius:var(--r-md);background:var(--green-tint);border:1px solid var(--green)}.cfg .sum.bad{background:var(--red-tint);border-color:var(--red)}.cfg .sum .m{font-size:13.5px;font-weight:600;color:var(--green-ink)}.cfg .sum.bad .m{color:var(--red-ink)}.cfg .sum .sp{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.cfg .sum ul{margin:6px 0 0;padding-left:18px;font-size:13px;color:var(--muted);font-weight:400}.cfg .ro-val{display:inline-block;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-weight:600;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cfg .ro-txt{font-size:14px}.cfg .spin{display:inline-block;width:14px;height:14px;border-radius:50%;border:2px solid rgba(17,17,17,.3);border-top:2px solid var(--ink);animation:sp .7s linear infinite}@media (prefers-reduced-motion:reduce){.cfg .spin{animation:none}}.sr-only{display:inline-block;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;vertical-align:middle}.noperm{text-align:center;padding:32px 20px}.noperm .ic{width:56px;height:56px;margin:0 auto 12px;border-radius:var(--r-lg);background:var(--hover);color:var(--faint);display:grid;place-items:center;font-size:24px}.noperm h3{font-size:20px;margin-bottom:6px}.noperm p{font-size:14px;color:var(--muted);max-width:560px;margin:0 auto 16px}.cfg .inp.err,.cfg .score-in.err{border-color:var(--red)}.cfg .err-o{display:block;margin-top:4px;font-size:12px;color:var(--red-ink);max-width:220px}.tc{--faint:#5F6473;--orange-ink:#9A4E00;--line-input:#8B8D91;--row-hover:#FAFBFC;--warn-bg:#FFF6EC;--grp-bg:#F8FAFF}.tc .btn.cta,.tc .btn.cta:hover{color:var(--ink)}.tc .btn.pri{border-color:var(--blue)}.tc .btn.cta{border-color:var(--orange)}.tc .btn.gh{border-color:transparent}.tc .btn:disabled{border-color:var(--line)}.tc .dc{position:relative;display:inline-block}.tc .dc .score-in{width:88px;padding-right:26px}.tc .dc:after{content:"đ";position:absolute;right:10px;top:50%;transform:translateY(-50%);font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;color:var(--faint);pointer-events:none}.tc .dc.bad .score-in{border-color:var(--red)}.tc .sum{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:9px 14px;border-radius:var(--r-md);background:var(--green-tint);border:1px solid var(--green)}.tc .sum.bad{background:var(--red-tint);border-color:var(--red)}.tc .sum .n{font-family:JetBrains Mono,ui-monospace,monospace;font-size:20px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.tc .sum .m{font-size:13.5px;font-weight:600;color:var(--green-ink)}.tc .sum.bad .m{color:var(--red-ink)}.tc .sum .sp{margin-left:auto;gap:8px}.tc .formbar,.tc .sum .sp{display:flex;flex-wrap:wrap}.tc .formbar{position:-webkit-sticky;position:sticky;bottom:0;z-index:70;align-items:center;gap:16px;margin:16px -20px -56px;padding:9px 20px;border-top:1px solid var(--line);background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tc .formbar .st{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted)}.tc .formbar .sp{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.tc .g-32{align-items:start}.tc .avs{display:flex;align-items:center}.tc .avs .av{width:28px;height:28px;font-size:11px;margin-left:-8px;border:2px solid var(--white)}.tc .avs .av:first-child{margin-left:0}.tc .avs .av.more{background:var(--hover);color:var(--muted)}.tc .setc{display:flex;flex-direction:column;gap:10px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px}.tc .setc.on{border-color:var(--blue-line);background:linear-gradient(101deg,#F8FAFF,#F0F4FF)}.tc .setc .nm{font-family:FPT SongVui,Be Vietnam Pro,sans-serif;font-weight:700;font-size:17px;line-height:1.2}.tc .setc .meta{font-size:12.5px;color:var(--muted);margin-top:4px}.tc .setc .hd{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.tc .setc .hd .sp{margin-left:auto}.tc .setc .ft,.tc .setc .hd .sp{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tc .setc .ft{padding-top:10px;border-top:1px solid var(--line);margin-top:auto}.tc .setc.on .ft{border-top-color:var(--blue-line)}.tc .setc .ft .sp{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.tc .statbar{display:flex;flex-wrap:wrap;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:6px 4px}.tc .statbar .st{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;padding:3px 12px;font-size:13px;color:var(--muted);border-right:1px solid var(--line)}.tc .statbar .st:last-child{border-right:none}.tc .statbar .st b{font-family:JetBrains Mono,ui-monospace,monospace;font-size:18px;font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.tc .statbar .st s{font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;color:var(--faint);text-decoration:none;margin-left:-4px}.tc .statbar .st i{font-style:normal;font-size:12.5px;color:var(--faint)}.tc .statbar .st.warn b{color:var(--orange-ink)}@media (max-width:780px){.tc .statbar .st{border-right:none;border-bottom:1px solid var(--line);width:100%}.tc .statbar .st:last-child{border-bottom:none}}.tc .startbar{padding:9px 12px}.tc .sb-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tc .sb-lb{font-size:13px;font-weight:600;color:var(--muted);flex:0 0 auto}.tc .sb-opt{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid var(--line-input);border-radius:var(--r-md);background:var(--white);font-size:13.5px;white-space:nowrap;cursor:pointer;flex:0 0 auto}.tc .sb-opt.on,.tc .sb-opt:hover{border-color:var(--blue);background:var(--blue-tint)}.tc .sb-opt.on{color:var(--blue);font-weight:600}.tc .sb-opt input{accent-color:var(--blue);margin:0;flex:0 0 auto}.tc .sb-opt:focus-within{outline:2px solid var(--blue);outline-offset:2px}.tc .sb-hint{font-size:12.5px;color:var(--faint);flex:1 1 240px;min-width:0}.tc .sb-extra:empty{display:none}.tc .sb-extra{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.tc .idcard{padding:12px 14px}.tc .idcard .help{margin-top:4px}.tc .tabs .tag{margin-left:6px;vertical-align:middle}.tc .scale{display:flex;gap:6px;flex-wrap:wrap}.tc .sc{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:76px;padding:8px;border:1px solid var(--line-input);border-radius:var(--r-md);background:var(--white)}.tc .sc .v{font-family:JetBrains Mono,ui-monospace,monospace;font-size:20px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tc .sc .k{font-size:11.5px;font-weight:600;text-align:center;line-height:1.3}.tc .sc.minus{border-color:var(--red);background:var(--red-tint);color:var(--red-ink)}.tc .sc.std{border-color:var(--green);background:var(--green-tint);color:var(--green-ink)}.tc .sc.plus{border-color:var(--blue-line);background:var(--blue-tint);color:var(--blue)}.tc .scale.mini{align-items:stretch}.tc .scale.mini .sc{flex-direction:row;align-items:baseline;gap:6px;min-width:0;padding:5px 10px}.tc .scale.mini .sc .v{font-size:15px}.tc .scale.mini .sc .k{font-size:11.5px;text-align:left}.tc .cwrap{display:block}.tc .cgrp{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--white);overflow:hidden;margin-bottom:10px}.tc .cgrp-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 12px;background:var(--grp-bg);border-bottom:1px solid var(--line)}.tc .cgrp-h .k{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);flex:0 0 auto}.tc .cgrp-h .gname{flex:1 1;min-width:180px;max-width:400px;width:auto;padding:7px 10px;font-size:14px;font-weight:600}.tc .cgrp-h .gsum{font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:600;color:var(--blue);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-left:auto;white-space:nowrap}.tc .cgrp-f{padding:6px 12px;background:var(--grp-bg);border-top:1px solid var(--line)}.tc .cgrp-b{display:block;padding:8px;display:flex;flex-direction:column;gap:6px}.tc .crow{border:1px solid var(--line);border-radius:var(--r-md);background:var(--white);padding:9px}.tc .crow:hover{border-color:var(--line-input)}.tc .crow.open{border-color:var(--blue-line);background:var(--grp-bg)}.tc .crow-1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tc .crow-1 .cname{flex:1 1;min-width:220px;width:auto;font-weight:500}.tc .crow .ord{flex-direction:row;gap:4px;flex:0 0 auto}.tc .crow .ord button{width:28px;height:28px}.tc .std-chip{flex:0 0 auto;font-size:12.5px;color:var(--muted);background:var(--hover);border-radius:var(--r-sm);padding:6px 10px;white-space:nowrap}.tc .std-chip b{font-family:JetBrains Mono,ui-monospace,monospace;color:var(--ink)}.tc .cdet{margin-top:2px}.tc .cdet>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:6px 4px 2px;border-radius:var(--r-sm)}.tc .cdet>summary::-webkit-details-marker{display:none}.tc .cdet>summary:hover .cap{color:var(--blue)}.tc .cdet>summary:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.tc .cdet>summary .cap{font-size:12.5px;font-weight:600;color:var(--muted);flex:0 0 auto}.tc .cdet>summary .cap:before{content:"▶";display:inline-block;margin-right:6px;font-size:9px;transition:transform .14s var(--ease)}.tc .cdet[open]>summary .cap{color:var(--blue)}.tc .cdet[open]>summary .cap:before{transform:rotate(90deg)}.tc .cdet>summary .dsum{font-size:12.5px;color:var(--muted)}.tc .cdet>summary .dsum .miss{color:var(--faint)}.tc .cdet-b{padding:8px 4px 2px}.tc .crow-2{margin-bottom:8px}.tc .crow-3{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.tc .fl-lb{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:4px}.tc .fl-lb.plus{color:var(--blue)}.tc .fl-lb.minus{color:var(--red-ink)}@media (prefers-reduced-motion:reduce){.tc .cdet>summary .cap:before{transition:none}}.tc .cempty{padding:14px 12px;text-align:left;font-size:13.5px;color:var(--muted);background:#FAFBFC;border:1.5px dashed var(--line-input);border-radius:var(--r-md);margin:12px}.tc .cempty b{color:var(--ink)}.tc .grpbar{display:flex;gap:8px;flex-wrap:wrap}.tc .grp-del{background:transparent;border:1px solid transparent;border-radius:var(--r-sm);color:var(--muted);font-size:12.5px;font-weight:600;padding:6px 10px;white-space:nowrap;flex:0 0 auto}.tc .grp-del:hover{background:var(--red-tint);color:var(--red-ink);border-color:var(--red)}.tc .grp-del.arm{background:var(--red);color:var(--white);border-color:var(--red)}.tc .grp-del:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media (max-width:780px){.tc .crow-3{grid-template-columns:1fr}.tc .cgrp-h .gsum{margin-left:0;width:100%;order:9}.tc .cdet>summary{min-height:44px;align-items:center}}.tc .grp-row td{padding:6px 12px}.tc .grp-row .gwrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.tc .grp-row .gwrap .inp{width:auto;min-width:280px;flex:1 1;max-width:420px;padding:6px 10px;letter-spacing:.04em;text-transform:uppercase}.tc .grp-row .gsum,.tc .grp-row .gwrap .inp{font-size:13px;font-weight:600;color:var(--blue)}.tc .grp-row .gsum{margin-left:auto;font-family:JetBrains Mono,ui-monospace,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0}.tc .ord{display:flex;flex-direction:column;gap:2px}.tc .ord button{width:28px;height:22px;border:1px solid var(--line-input);background:var(--white);border-radius:var(--r-xs);color:var(--muted);font-size:11px;line-height:1;padding:0;display:grid;place-items:center}.tc .ord button:hover:not(:disabled){background:var(--hover);color:var(--ink)}.tc .ord button:disabled{opacity:.35;cursor:not-allowed}.tc .ord button:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.tc .toast{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:180;display:none;align-items:flex-start;gap:12px;width:max-content;max-width:calc(100% - 32px);padding:11px 16px;border:1px solid var(--green);border-radius:var(--r-lg);background:var(--green-tint);box-shadow:0 12px 48px rgba(17,17,17,.18)}.tc .toast.open{display:flex}.tc .toast.st{position:static;transform:none;display:flex;max-width:none}.tc .toast .tt{font-weight:600;font-size:14px;color:var(--green-ink)}.tc .toast .td{font-size:13px;color:var(--muted);margin-top:2px}.tc .toast .x{margin-left:16px;background:transparent;border:none;color:var(--muted);font-size:18px;line-height:1}.tc .skel{display:block;height:12px;border-radius:var(--r-xs);background:var(--hover);animation:sk 1.4s var(--ease) infinite}.tc .skel.t{height:16px}.tc .skel.w30{width:30%}.tc .skel.w50{width:50%}.tc .skel.w70{width:70%}.tc .skel.w90{width:90%}@keyframes sk{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.tc .skel{animation:none}}.tc .spin{display:inline-block;width:14px;height:14px;border-radius:50%;border:2px solid rgba(17,17,17,.3);border-top:2px solid var(--ink);animation:sp .7s linear infinite}@keyframes sp{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.tc .spin{animation:none}}.tc .pick{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:6px;cursor:pointer}.tc .pick.on,.tc .pick:hover{border-color:var(--blue);background:var(--blue-tint)}.tc .pick.off{opacity:.6;cursor:not-allowed;background:var(--bg)}.tc .pick.off:hover{border-color:var(--line);background:var(--bg)}.tc .pick .sp{margin-left:auto;flex:0 0 auto}.tc .pick input{margin:0;flex:0 0 auto}.tc .whocard{display:flex;align-items:center;gap:10px;padding:9px 10px;margin-bottom:10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg)}.tc .pick .bnm{font-weight:500;line-height:1.3}.tc .pick .bdp{font-size:12.5px;color:var(--muted);margin-top:2px}.tc .pick .bmo{font-size:12.5px;color:var(--faint);margin-top:4px}.tc .st-blk{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--white);padding:14px;margin-bottom:10px}.tc .st-blk>.hd{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}.tc .st-blk>.hd b{font-family:FPT SongVui,Be Vietnam Pro,sans-serif;font-size:16px}.tc .st-blk>.hd .k{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--orange-ink)}.tc .st-blk>.hd .h{margin-left:auto;font-size:12.5px;color:var(--faint)}@media (max-width:1180px){.tc .setc{gap:8px}}@media (max-width:980px){.tc .formbar{margin:16px -12px -56px;padding:9px 12px}.tc .formbar .sp{margin-left:0;width:100%}.tc .formbar .sp .btn{flex:1 1;justify-content:center}.tc .grp-row .gwrap .inp{min-width:0;max-width:none;width:100%}.tc .grp-row .gsum{margin-left:0}}@media (max-width:640px){.tc .btn,.tc .btn.sm{min-height:44px}.tc .crow .ord button,.tc .ord button{width:44px;height:44px}.tc .cdet>summary{min-height:44px}.tc .burger{width:44px;height:44px}.tc .seg button{min-height:44px}.tc .monthbar>.sub{width:100%;order:3}.tc .toast{left:16px;right:16px;transform:none;width:auto}.tc .sc{min-width:0;flex:1 1}.tc .scale.mini .sc{flex-direction:column;align-items:center}.tc .idcard .row>.field{flex:1 1 100%}.tc .setc .ft .sp{margin-left:0;width:100%}.tc .setc .ft .sp .btn{flex:1 1;justify-content:center}}.mk{display:inline-block;min-width:46px;padding:4px 9px;border-radius:var(--r-sm);font-family:var(--font-jetbrains-mono),monospace;font-weight:700;font-size:14px;text-align:right;border:1px solid transparent}.mk.over{background:var(--red-tint);color:var(--red-ink);border-color:#F3B7A8}.mk.under{background:var(--green-tint);color:var(--green-ink);border-color:#A9DCBC}.mk.same{background:var(--white);color:var(--muted);border-color:var(--line-strong)}.mk.none{background:transparent;color:var(--faint);font-weight:500}tr.exp{cursor:pointer}tr.exp .caret{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:var(--r-sm);background:var(--hover);color:var(--muted);font-weight:700;font-size:12px;vertical-align:-4px;transition:transform .14s var(--ease),background .14s var(--ease)}tr.exp:hover .caret{background:var(--blue-tint);color:var(--blue)}tr.exp.open .caret{transform:rotate(90deg);background:var(--blue);color:#fff}table.ruled tr.exp>td:first-child{font-weight:500;color:var(--ink)}tr.det{display:none}tr.det.open{display:table-row}tr.det>td{padding:0;background:#FAFBFC}.det-b{display:grid;grid-gap:10px;gap:10px;padding:10px 12px 12px 37px;border-left:3px solid var(--blue-line)}.det-b .lb{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--faint);margin-bottom:4px}.det-b .tx{font-size:13.5px;color:var(--muted);line-height:1.65}.det-b .tx.plus{color:var(--green-ink)}.det-b .tx.minus{color:var(--red-ink)}@media (min-width:900px){.det-b{grid-template-columns:1.5fr 1fr 1fr}}table.ruled{border-collapse:separate;border-spacing:0}table.ruled td,table.ruled th{border-right:1px solid var(--line)}table.ruled td:last-child,table.ruled th:last-child{border-right:none}table.ruled thead th{background:#EAEFF7;color:var(--navy);font-size:12px;font-weight:700;letter-spacing:.06em;padding:9px 12px;border-bottom:2px solid #c9d2e0}table.ruled thead th.c-self{background:#FFE7C2;color:var(--orange-ink)}table.ruled thead th.c-boss{background:#D5EFDF;color:var(--green-ink)}table.ruled thead th.sortable:hover{color:var(--blue)}table.ruled td{padding:9px 12px;font-size:14.5px}table.ruled tbody tr:last-child td,table.ruled td{border-bottom:1px solid var(--line-strong)}table.ruled td.num{font-weight:600;color:var(--ink)}table.ruled tbody td:last-child.num{font-size:15.5px;color:var(--navy)}table.ruled td.c-self{background:#FFF6E4}table.ruled td.c-boss{background:#E9F5ED}table.ruled tbody tr.exp:hover>td{background:#F1F6FE}table.ruled tbody tr.exp:hover>td.c-self{background:#FFEFD1}table.ruled tbody tr.exp:hover>td.c-boss{background:#DEF0E5}table.ruled .grp-row td{background:#DDE6F5;color:var(--blue-dark);font-size:12.5px;font-weight:700;letter-spacing:.06em;padding:7px 12px;border-right:none;border-top:1px solid #c2d0e8;border-bottom:1px solid #c2d0e8;box-shadow:inset 4px 0 0 var(--blue)}table.ruled tr.det>td{border-right:none}table.ruled td.c-boss,table.ruled td.c-boss+td,table.ruled td.c-self,table.ruled th.c-boss,table.ruled th.c-boss+th,table.ruled th.c-self{border-left:2px solid #c9d2e0}table.ruled thead tr:first-child th:first-child{border-top-left-radius:var(--r-lg)}table.ruled thead tr:first-child th:last-child{border-top-right-radius:var(--r-lg)}tr.sub-total td{font-weight:700;border-top:2px solid #c2d0e8}tr.sub-total td,tr.sub-total:hover td{background:#EDF2FC}table.ruled tr.sub-total td{color:var(--navy)}table.ruled tr.sub-total td.c-self{background:#FBF1E2}table.ruled tr.sub-total td.c-boss{background:#E4F0E9}tfoot tr.xh-row td{border-top:1px dashed var(--line-strong);padding-top:7px;padding-bottom:7px}table.ruled tfoot tr.xh-row td{font-size:12.5px;letter-spacing:.04em}.xh-the{display:inline-flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:wrap}.xh-mo{font-weight:500;font-family:var(--font-be-vietnam-pro),sans-serif;letter-spacing:0;text-transform:none}.nk-chip,.xh-mo{font-size:12px;color:var(--muted)}.nk-chip{margin-left:10px;border:1px solid var(--line-strong);background:var(--white);border-radius:20px;padding:3px 10px;font-weight:600;white-space:nowrap;vertical-align:1px}.nk-chip:hover{border-color:var(--blue)}.nk-chip.has,.nk-chip:hover{background:var(--blue-tint);color:var(--blue)}.nk-chip.has{border-color:var(--blue-line)}.nk-chip.no{color:var(--faint)}.nx-chip{margin-left:7px;border:1px solid var(--line-strong);background:var(--white);color:var(--muted);border-radius:20px;padding:3px 9px;font-size:12px;font-weight:600;white-space:nowrap;vertical-align:1px;cursor:pointer}.nx-chip:hover{border-color:var(--green)}.nx-chip.has,.nx-chip:hover{background:var(--green-tint);color:var(--green-ink)}.nx-chip.has{border-color:var(--green-tint)}.nx-chip.no{color:var(--faint)}.nk-list{display:grid;grid-gap:8px;gap:8px}.nk-item{border:1px solid var(--line);border-left:3px solid var(--blue-line);border-radius:var(--r-md);padding:10px 12px}.nk-item .hd{display:flex;align-items:center;gap:9px;margin-bottom:5px}.nk-item .dt{font-family:var(--font-jetbrains-mono),monospace;font-size:12px;color:var(--faint)}.nk-item .tt{font-weight:500;font-size:14.5px;line-height:1.45;margin-bottom:5px}.nk-item .mt{font-size:13px;color:var(--muted);line-height:1.55}.nk-item .ft{margin-top:7px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12.5px}.nk-item.warn{border-left-color:var(--red)}.nx-list{display:grid;grid-gap:10px;gap:10px}.nx-o{background:var(--white);border:1px solid var(--line);border-left:3px solid var(--green);border-radius:var(--r-md);padding:9px 12px}.nx-o.toi{border-left-color:var(--orange)}.nx-o .ai{display:flex;align-items:center;gap:8px;margin-bottom:7px}.nx-o .ai .nm{font-size:12.5px;font-weight:700;color:var(--ink)}.nx-o .ai .kh{font-family:var(--font-jetbrains-mono),monospace;font-size:11.5px;color:var(--faint)}.nx-o .tx{font-size:13.5px;color:var(--muted);line-height:1.6}.nx-o .tx.trong{color:var(--faint);font-style:italic}.nx-o textarea.inp{font-size:13.5px;padding:9px 11px}:root{--row-wait:#FFFDF9}.viec{display:grid;grid-gap:10px;gap:10px}.viec .it{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;background:var(--white)}.viec .it .tx{flex:1 1;min-width:0;font-size:14px}.viec .it .tx .sub{font-size:12px;color:var(--faint);margin-top:2px}.viec .it .btn{flex:0 0 auto}.viec .it.gap{border-color:var(--orange-tint);background:var(--row-wait);box-shadow:inset 3px 0 0 var(--orange)}.viec .it.cho{background:var(--hover);border-style:dashed;color:var(--faint)}@media (max-width:640px){.viec .it{flex-wrap:wrap}.viec .it .tx{flex:1 1 100%;order:2}.viec .it .btn{order:3;flex:1 1;justify-content:center}}.grade.sm{min-width:22px;height:22px;padding:0 5px;font-size:12px;border-radius:var(--r-sm)}.golink{display:flex;align-items:flex-start;gap:12px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px;color:var(--ink);transition:border-color .14s var(--ease),background .14s var(--ease)}.golink:hover{border-color:var(--blue-line);background:var(--blue-tint)}.golink:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.golink .ic{width:36px;height:36px;flex:0 0 auto;border-radius:var(--r-md);background:var(--blue-tint);color:var(--blue);display:grid;place-items:center;font-size:17px}.golink .tx{flex:1 1;min-width:0}.golink .nm{font-weight:600;font-size:14.5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.golink .dt{font-size:12.5px;color:var(--muted);margin-top:2px;line-height:1.45}.golink .go{flex:0 0 auto;align-self:center;color:var(--faint);font-size:16px}.golink:hover .go{color:var(--blue)}.golink .cnt{background:var(--orange);color:var(--ink);font-size:11px;font-weight:600;border-radius:20px;padding:1px 7px;min-width:20px;text-align:center}.golink.off{background:var(--hover);border-style:dashed;color:var(--faint);cursor:not-allowed}.golink.off .ic{background:var(--line);color:var(--faint)}.golink.off:hover{border-color:var(--line);background:var(--hover)}.golink.off:hover .go{color:var(--faint)}.bar.moc{overflow:visible;position:relative}.bar.moc u{position:absolute;top:-3px;bottom:-3px;left:var(--moc,50%);width:2px;background:var(--navy);border-radius:1px}.bcrumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;margin-bottom:10px}.bcrumb a{color:var(--blue);font-weight:500}.bcrumb a:hover{text-decoration:underline}.bcrumb a:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:var(--r-xs)}.bcrumb .sep{color:var(--faint);font-size:12px}.bcrumb .now{color:var(--ink);font-weight:600}.bcrumb .ell{display:none;color:var(--faint)}@media (max-width:980px){.bcrumb a{display:inline-flex;align-items:center;min-height:44px}}@media (max-width:640px){.bcrumb .mid{display:none}.bcrumb .ell{display:inline}}.sect{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:20px 0 10px;padding-bottom:8px;border-bottom:1px solid var(--line)}.sect:first-child{margin-top:0}.sect h2{font-size:17px}.sect .dt{font-size:12.5px;color:var(--muted)}.sect .sp{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media (max-width:640px){.sect .sp{margin-left:0;width:100%}}.empty h3{font-size:20px;color:var(--ink);margin-bottom:8px}.empty p{font-size:14px;color:var(--muted);max-width:520px;margin:0 auto 16px}.empty p:last-of-type{margin-bottom:24px}.chart.bac{height:224px}.chart.bac .col{gap:5px}.chart.bac .stack{height:calc(100% - 64px)}.chart .vlb{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-size:12.5px;font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:640px){.chart.bac{height:200px}.chart.bac .stack{height:calc(100% - 60px)}.chart .vlb{font-size:11.5px}}.hbar.pp{gap:10px;margin-bottom:9px;flex-wrap:wrap}.hbar.pp>.nm{width:236px;display:flex;align-items:center;gap:8px}.hbar.pp .who{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:0}.hbar.pp .who>.dp,.hbar.pp .who>.nm{width:auto;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbar.pp .who>.nm{font-size:13.5px;font-weight:500;line-height:1.3}.hbar.pp .who>.dp{font-size:11.5px;color:var(--faint);line-height:1.3}.hbar.pp .gr{width:36px;flex:0 0 auto;display:flex;align-items:center}.hbar.pp .vl{width:50px}.hbar.pp .ac{width:84px;flex:0 0 auto;display:flex;justify-content:flex-end}.hbar.pp .bar{height:14px}.hbar.pp .bar,.hbar.pp .bar i{border-radius:var(--r-xs)}.hbar.pp.wait .bar{background:var(--row-wait);box-shadow:inset 0 0 0 1px var(--line-strong)}@media (max-width:980px){.hbar.pp{padding-bottom:9px;border-bottom:1px solid var(--line)}.hbar.pp>.nm{width:100%}.hbar.pp .ac{width:auto}}.grid.top{align-items:start}.tclist .hbar{margin-bottom:8px}.tclist .hbar>.nm{flex:0 1 268px;width:auto;min-width:0}.tclist .hbar>.vl{width:64px}.tclist .grid{grid-template-columns:repeat(auto-fit,minmax(min(520px,100%),1fr))}.hgrp{display:flex;align-items:baseline;gap:10px;margin:14px 0 9px;padding-bottom:5px;border-bottom:1px solid var(--line-strong)}.hgrp:first-child{margin-top:0}.hgrp .nm{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--blue-dark)}.hgrp .vl{margin-left:auto;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-weight:600;font-size:13.5px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hgrp.tong{border-bottom-width:2px;border-bottom-color:var(--navy);margin-top:14px}.hgrp.tong .nm,.hgrp.tong .vl{color:var(--navy);font-size:14px}@media (max-width:640px){.tclist .hbar{flex-wrap:wrap}.tclist .hbar>.nm{width:100%}.tclist .hbar>.bar{flex:1 1}}.panel .tclist .hbar{flex-wrap:wrap;row-gap:2px}.panel .tclist .hbar>.nm{flex:1 1 100%}.panel .tclist .hbar>.bar{flex:1 1}.pbb .hbar .vl{width:82px}.chart.gop{height:288px}.chart.gop .stack{gap:2px}.chart .s1,.chart .s2,.chart .s3{display:grid;place-items:center;border-radius:2px;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-size:12px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart .s1{background:var(--green);color:var(--ink)}.chart .s2{background:var(--blue);color:var(--white)}.chart .s3{background:var(--orange);color:var(--ink)}@media (max-width:640px){.chart .s1,.chart .s2,.chart .s3{font-size:11px}}.kq{align-items:center;gap:26px;flex-wrap:wrap;background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:12px 16px}.kq,.kq .it{display:flex}.kq .it{align-items:baseline;gap:9px}.kq .lb{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:rgba(255,255,255,.62)}.kq .vl{font-family:var(--font-jetbrains-mono),monospace;font-weight:700;font-size:20px}.kq .sp{margin-left:auto}.kq .tag{background:rgba(255,255,255,.14);color:rgba(255,255,255,.82)}.verdict{flex-wrap:wrap}@media (max-width:640px){.verdict .sp{margin-left:0;width:100%}.verdict .sp .btn{width:100%;justify-content:center}}@media (max-width:980px){.seg button,.tabs button{min-height:44px}}@media (max-width:640px){.seg{display:flex;flex-wrap:wrap;width:100%}.seg button{flex:1 1 auto}.card-h .sp .seg{width:100%}}