@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(../media/lexend-vietnamese-400-normal.1227gg5uog_pu.woff2)format("woff2"),url(../media/lexend-vietnamese-400-normal.1a8fk3gm170w8.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(../media/lexend-latin-ext-400-normal.08g5hk9uhgsmm.woff2)format("woff2"),url(../media/lexend-latin-ext-400-normal.08f9_pgw66aa0.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(../media/lexend-latin-400-normal.1btqgq6a_l66v.woff2)format("woff2"),url(../media/lexend-latin-400-normal.43sdxf82t8swo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(../media/lexend-vietnamese-500-normal.2fazwi0xsa6vr.woff2)format("woff2"),url(../media/lexend-vietnamese-500-normal.0wn6lh21n_8f-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(../media/lexend-latin-ext-500-normal.30xmwcunjbbnn.woff2)format("woff2"),url(../media/lexend-latin-ext-500-normal.1tdho4y_4lyja.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(../media/lexend-latin-500-normal.2qt-nfumx8a5y.woff2)format("woff2"),url(../media/lexend-latin-500-normal.1ls0znno9wefg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(../media/lexend-vietnamese-600-normal.1vwlf5z6daqlb.woff2)format("woff2"),url(../media/lexend-vietnamese-600-normal.2l0aywk70gvm7.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(../media/lexend-latin-ext-600-normal.34yqa6wurj33u.woff2)format("woff2"),url(../media/lexend-latin-ext-600-normal.0_-3ul2zn2eov.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(../media/lexend-latin-600-normal.2ygncnxsiurn3.woff2)format("woff2"),url(../media/lexend-latin-600-normal.30u_1dyne40-f.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--blue:#005387;--blue-hover:#00446f;--blue-text:#005387;--blue-50:#e8f1f8;--outline:#d3e2ee;--panel:#fff;--surface:#fff;--field:#eef1f4;--text:#151a20;--text-2:#5a636e;--line:#e4e8ec;--danger:#b42318;--danger-50:#fdecea;--radius-xl:32px;--radius-lg:22px;--radius:14px;--ease:cubic-bezier(.2, .8, .2, 1);--font:"Lexend", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--blue-text:#7cb8e6;--blue-50:#13283a;--outline:#2a4256;--panel:#0f161d;--surface:#141d26;--field:#1b2631;--text:#e7edf2;--text-2:#9fb0bf;--line:#233140;--danger:#f97066;--danger-50:#2c1513;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{background:var(--blue);min-height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.55}h1,h2,h3{letter-spacing:-.01em;margin:0;line-height:1.15}h1{color:var(--blue-text);font-size:clamp(1.6rem,1.2rem + 1.2vw,2.1rem);font-weight:600}h2{margin-bottom:12px;font-size:1.15rem;font-weight:600}h3{margin-bottom:6px;font-size:1rem;font-weight:600}p{margin:0 0 12px}a{color:var(--blue-text)}.muted{color:var(--text-2)}.num{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:600}.canvas{background:var(--blue) url(/brand/iso-city.svg) no-repeat;background-position:455px 100%;background-size:1700px;background-attachment:fixed;min-height:100dvh}.shell{grid-template-columns:1fr;min-height:100dvh;display:grid}.sidebar{display:none}.panel{background:var(--panel);border-radius:var(--radius-xl) var(--radius-xl) 0 0;min-height:calc(100dvh - 72px);padding:26px 18px 120px}.mobilebar{color:#fff;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.mobilebar img{filter:brightness(0)invert();height:36px}.bottomnav{left:16px;right:16px;bottom:max(16px, env(safe-area-inset-bottom));z-index:30;background:var(--blue);border-radius:999px;justify-content:space-between;padding:8px;display:flex;position:fixed;box-shadow:0 12px 32px #001e3c59}.bottomnav a{z-index:1;color:#ffffffd9;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:48px;height:48px;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;display:flex;position:relative}.bottomnav a span{display:none}.bottomnav a[aria-current=page]{color:var(--blue)}.bottomnav a[aria-current=page] span{display:inline}.bottomnav .navlight{background:#fff;border-radius:999px}@media (min-width:1000px){.shell{grid-template-columns:250px 1fr}.mobilebar,.bottomnav{display:none}.sidebar{color:#fff;flex-direction:column;height:100dvh;padding:30px 0 26px 24px;display:flex;position:sticky;top:0}.sidebar .logo{filter:brightness(0)invert();width:150px;margin:0 0 30px 10px}.sidebar h6{opacity:.65;letter-spacing:.02em;margin:16px 0 6px 12px;font-size:12px;font-weight:600}.panel{border-radius:var(--radius-xl);min-height:calc(100dvh - 36px);margin:18px 18px 18px 0;padding:30px 34px 40px;position:relative}}.navitem{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:16px 0 0 16px;align-items:center;gap:14px;width:100%;height:50px;margin:2px 0;padding:0 16px;font-family:inherit;font-size:15px;font-weight:500;text-decoration:none;transition:background-color .16s;display:flex;position:relative}.navitem:hover{background:#ffffff1a}.navitem[aria-current=page]{background:var(--panel);color:var(--blue-text);font-weight:600}.navitem[aria-current=page]:before,.navitem[aria-current=page]:after{content:"";pointer-events:none;width:20px;height:20px;position:absolute;right:0}.navitem[aria-current=page]:before{box-shadow:6px 6px 0 6px var(--panel);border-bottom-right-radius:16px;top:-20px}.navitem[aria-current=page]:after{box-shadow:6px -6px 0 6px var(--panel);border-top-right-radius:16px;bottom:-20px}.sidebar .spacer{flex:1}.pagehead{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:22px;display:flex}.pagehead h1{margin-right:auto}.pagehead .tools{flex-wrap:wrap;align-items:center;gap:12px;display:flex;position:relative}.search{background:var(--surface);border:2px solid var(--outline);border-radius:var(--radius);width:min(360px,100%);height:48px;color:var(--text-2);align-items:center;gap:10px;margin:0;padding:0 16px;display:flex}.search input{background:0 0;border:0;height:44px;min-height:0;margin:0;padding:0;font-size:14px}.search input:focus{background:0 0}.iconbtn{background:var(--surface);border:2px solid var(--outline);width:48px;height:48px;min-height:0;color:var(--text);border-radius:50%;padding:0;position:relative}.iconbtn:hover:not(:disabled){background:var(--blue-50);border-color:var(--outline);color:var(--text)}.iconbtn .dot{background:var(--blue);border:2px solid var(--surface);border-radius:50%;width:9px;height:9px;position:absolute;top:9px;right:10px}.mechip{border:2px solid var(--outline);background:var(--surface);border-radius:999px;align-items:center;gap:10px;padding:4px 16px 4px 4px;display:flex}.mechip b{font-size:14px;font-weight:600;line-height:1.2;display:block}.mechip small{color:var(--text-2);font-size:12px;line-height:1.2;display:block}.avatar{background:var(--blue);color:#fff;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:13px;font-weight:600;display:grid}.avatar.soft{background:var(--blue-50);color:var(--blue-text);width:34px;height:34px;font-size:12px}.popover{z-index:40;background:var(--surface);border:2px solid var(--outline);border-radius:var(--radius-lg);width:min(340px,86vw);padding:10px;position:absolute;top:56px;right:0;box-shadow:0 18px 40px #001e3c2e}.popover li{border-radius:12px;padding:10px 12px;font-size:14px;list-style:none}.popover li.unread{background:var(--blue-50)}.popover ul{max-height:360px;margin:0;padding:0;overflow:auto}.banner{isolation:isolate;background:var(--blue);color:#fff;border-radius:var(--radius-lg);min-height:200px;margin-bottom:22px;padding:30px 32px;position:relative;overflow:hidden}.banner:after{content:"";z-index:-1;opacity:.55;background:url(/brand/iso-city.svg) 100% 100%/1100px no-repeat;width:620px;height:360px;position:absolute;bottom:-110px;right:-120px}.banner h2{margin:0;font-size:clamp(1.7rem,1.3rem + 1.4vw,2.5rem);font-weight:600;line-height:1.12}.banner .name{text-underline-offset:8px;-webkit-text-decoration:underline #ffffff73;text-decoration:underline #ffffff73;text-decoration-thickness:4px}.banner p{opacity:.9;max-width:460px;margin:16px 0 20px}.banner .actions{margin:0}.banner button{color:var(--blue);background:#fff;border-color:#fff}.banner button:hover:not(:disabled){background:var(--blue-50);border-color:var(--blue-50);color:var(--blue)}.banner button.secondary{color:#fff;background:0 0;border-color:#fff}.banner button.secondary:hover:not(:disabled){color:#fff;background:#ffffff1f;border-color:#fff}.card{background:var(--surface);border:2px solid var(--outline);border-radius:var(--radius-lg);margin-bottom:18px;padding:22px}.card.warn{background:var(--blue-50);border-color:var(--outline)}.card.tint{background:var(--field);border-color:#0000}.card.blue{border-color:var(--blue)}.tabcard{border:2px solid var(--blue);border-radius:var(--radius-lg);background:var(--surface);padding:62px 18px 12px;position:relative}.tabcard>.tab{background:var(--blue);color:#fff;border-radius:var(--radius-lg) 0 var(--radius-lg) 0;padding:10px 24px 10px 20px;font-size:15px;font-weight:600;position:absolute;top:-2px;left:-2px}.tabcard>.tabtools{max-width:calc(100% - 220px);position:absolute;top:10px;right:14px}@media (max-width:759px){.tabcard{padding-top:104px}.tabcard>.tabtools{max-width:none;top:56px;left:14px;right:14px}}.stats{gap:14px;display:grid}@media (max-width:1099px){.stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}}@media (max-width:640px){.stats{grid-template-columns:1fr 1fr}.stats>.solid{grid-column:1/-1}}.stat{border:2px solid var(--blue);border-radius:var(--radius-lg);color:var(--blue-text);background:var(--surface);padding:16px 20px}.stat.solid{background:var(--blue);color:#fff}.stat small{font-size:13px;font-weight:500;display:block}.stat .value{font-size:2.6rem;line-height:1.1;display:block}.stat p{margin:0;font-size:13px}.idcard{background:var(--blue);color:#fff;border-radius:var(--radius-lg);margin-bottom:18px;padding:20px 22px;position:relative}.idcard small{opacity:.85;font-size:12px}.idcard .no{letter-spacing:.02em;font-size:1.9rem;font-weight:600;display:block}.idcard .tag{position:absolute;top:18px;right:18px}.tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.tile{border:2px solid var(--blue);background:var(--surface);color:var(--text);border-radius:20px;padding:16px;font-weight:600;text-decoration:none;display:block}.tile .ic{background:var(--blue);color:#fff;border-radius:12px;place-items:center;width:40px;height:40px;margin-bottom:12px;display:grid}.tile small{color:var(--text-2);font-size:12px;font-weight:400;display:block}label{color:var(--text-2);margin-bottom:14px;font-size:13px;font-weight:600;display:block}label>input,label>select,label>textarea{margin-top:6px}input,select,textarea{width:100%;min-height:50px;font:inherit;color:var(--text);background:var(--field);border:2px solid #0000;border-radius:10px;padding:12px 16px;font-size:15px;transition:border-color .15s,background-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--blue);background:var(--surface);outline:none}input[type=checkbox]{vertical-align:middle;width:20px;height:20px;min-height:20px;accent-color:var(--blue);margin:0 8px 0 0}input[type=file]{min-height:0;padding:10px}textarea{min-height:96px}fieldset:disabled input,fieldset:disabled select{opacity:.7}button{font:inherit;border:2px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;min-height:48px;transition:transform .18s var(--ease), background-color .15s, border-color .15s, color .15s;-webkit-tap-highlight-color:transparent;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:600;display:inline-flex}button:hover:not(:disabled){background:var(--blue-hover);border-color:var(--blue-hover)}button:active:not(:disabled){transition-duration:70ms;transform:scale(.96)}button:disabled{opacity:.45;cursor:default}button.secondary{background:var(--surface);color:var(--blue-text);border-color:var(--blue)}button.secondary:hover:not(:disabled){background:var(--blue-50);color:var(--blue-text)}button.danger{background:var(--danger);border-color:var(--danger)}button.link{min-height:0;color:var(--blue-text);background:0 0;border:none;padding:0;text-decoration:underline}button.block{width:100%}.chips{scrollbar-width:none;gap:8px;display:flex;overflow-x:auto}.chips button{background:var(--surface);min-height:36px;color:var(--blue-text);border-color:var(--outline);border-radius:999px;flex:none;padding:0 14px;font-size:13px;font-weight:600}.chips button:hover:not(:disabled){background:var(--blue-50);color:var(--blue-text);border-color:var(--outline)}.chips button[aria-pressed=true],.chips button[aria-pressed=true]:hover{background:var(--blue);color:#fff;border-color:var(--blue)}.chip{border:2px solid var(--line);color:var(--text-2);background:var(--surface);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;margin:0 4px 4px 0;padding:3px 12px;font-size:12px;font-weight:600;display:inline-flex}.chip.ok,.chip.solid{background:var(--blue);border-color:var(--blue);color:#fff}.chip.warn,.chip.info{border-color:var(--blue);color:var(--blue-text)}.chip.off{border-color:var(--line);color:var(--text-2)}.idcard .chip{color:var(--blue);background:#fff;border-color:#fff}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;color:var(--text-2);border-bottom:2px solid var(--line);padding:8px 10px;font-size:13px;font-weight:600}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 10px}.table tr.link{cursor:pointer;transition:background-color .12s}.table tr.link:hover td{background:var(--blue-50)}.table tr.link:active td{background:var(--outline)}.person{align-items:center;gap:10px;font-weight:600;display:flex}.rowlist{flex-direction:column;display:flex}.rowlist a{border-bottom:1px solid var(--line);color:var(--text);align-items:center;gap:12px;padding:12px 4px;text-decoration:none;display:flex}.rowlist a:active{background:var(--blue-50)}.rowlist .main{flex:1;min-width:0}.rowlist .title{font-weight:600;display:block}.rowlist .sub{color:var(--text-2);font-size:13px}dl.fields{grid-template-columns:minmax(140px,max-content) 1fr;gap:8px 20px;margin:0;display:grid}dl.fields dt{color:var(--text-2)}dl.fields dd{margin:0;font-weight:500}ul.plain{margin:0;padding:0;list-style:none}ul.plain li{border-bottom:1px solid var(--line);padding:10px 0}ul.plain li:last-child{border-bottom:0}.row{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.row>*{flex:200px}.row>button{flex:none}.actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 18px;display:grid}.split{gap:18px;display:grid}@media (min-width:1100px){.split{grid-template-columns:minmax(0,1fr) 300px;align-items:start}}.error{color:var(--danger);margin:10px 0 0;font-weight:500}.success{color:var(--blue-text);margin:10px 0 0;font-weight:600}.center{text-align:center;padding:56px 16px}.only-lg{display:none}@media (min-width:760px){.only-lg{display:block}table .only-lg{display:table-cell}.only-sm{display:none!important}}.auth{color:#fff;background-position:20% calc(100% + 40px);background-size:1500px;background-attachment:scroll;flex-direction:column;min-height:100dvh;display:flex}@media (min-width:900px){.auth{background-position:50%;background-size:cover}}.auth header{justify-content:space-between;align-items:center;padding:28px 24px;display:flex}.auth header img{filter:brightness(0)invert();height:54px}.auth header span{font-size:14px;font-weight:500}@media (min-width:900px){.auth header{padding:40px 64px}.auth header img{height:72px}}.authcard{background:var(--surface);width:min(520px,100% - 32px);color:var(--text);border-radius:8px;margin:12px auto 48px;padding:36px 26px 28px;box-shadow:0 30px 60px #00142859}@media (min-width:900px){.authcard{margin-top:40px;padding:56px 64px 44px}}.authcard h1{text-align:center;font-size:clamp(2rem,1.6rem + 1.4vw,2.75rem)}.authcard .sub{text-align:center;color:var(--text-2);margin:6px 0 28px}.authcard input{border-radius:4px}.authcard button.block{border-radius:4px;min-height:54px}.authcard .foot{text-align:center;color:var(--text-2);margin:20px 0 0;font-size:13px}.field{margin-bottom:14px;display:block;position:relative}.field svg.lead{color:var(--text);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.field input{min-height:54px;margin:0;padding-left:46px}.field .reveal{width:42px;height:42px;min-height:0;color:var(--text-2);background:0 0;border:0;padding:0;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.field .reveal:hover:not(:disabled){color:var(--text);background:0 0}.field .reveal:active:not(:disabled){transform:translateY(-50%)scale(.9)}.navlight{pointer-events:none;transition:transform .42s cubic-bezier(.3, 1.35, .5, 1), width .3s var(--ease), height .3s var(--ease);position:absolute;top:0;left:0}.bottomnav a:active,.navitem:active,.tile:active{transition:transform 70ms;transform:scale(.95)}.tile{transition:transform .18s var(--ease), background-color .15s}.tile:hover{background:var(--blue-50)}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.panel>*{animation:rise .46s var(--ease) backwards}.panel>:nth-child(2){animation-delay:60ms}.panel>:nth-child(3){animation-delay:.12s}.panel>:nth-child(4){animation-delay:.18s}.authcard{animation:rise .52s var(--ease) backwards}.table tbody tr,.rowlist a{animation:rise .38s var(--ease) backwards;animation-delay:calc(.14s + var(--i,0) * 30ms)}button.busy{position:relative;overflow:hidden}button.busy:disabled{opacity:1}button.busy:after{content:"";width:40%;height:3px;animation:drafting .9s var(--ease) infinite;background:#ffffffd9;position:absolute;bottom:0;left:0}@keyframes drafting{0%{transform:translate(-100%)}to{transform:translate(260%)}}.loading{gap:12px;max-width:520px;margin:0 auto;padding:40px 20px;display:grid}.loading span{background:linear-gradient(90deg,#ffffff40,#ffffff80,#ffffff40) 0 0/200% 100%;border-radius:7px;height:14px;animation:1.2s linear infinite shimmer}.loading span:nth-child(2){width:70%}.loading span:nth-child(3){width:45%}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}@media (min-width:760px){.mechip.only-lg{display:flex}table.only-lg{display:table}}@media (min-width:1000px){.pagehead,.pagehead .tools{flex-wrap:nowrap}.pagehead .search{width:clamp(220px,24vw,340px)}}@media (max-width:640px){.banner{padding:24px 22px}.banner:after{opacity:.3;background-size:760px;width:120%;height:100%;bottom:-35%;right:-45%}}@media (max-width:999px){.pagehead .tools:has(.search){flex-wrap:nowrap;width:100%}.pagehead .tools .search{flex:1;width:auto}}.orgtools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.orgtools .mgr{align-items:center;gap:10px;margin:0;display:flex}.orgtools .mgr select{width:auto;min-height:40px;margin:0;padding:6px 12px}.legend{color:var(--text-2);flex-wrap:wrap;gap:16px;margin-bottom:14px;font-size:13px;display:flex}.legend i{vertical-align:-2px;border:2px solid;border-radius:4px;width:14px;height:14px;margin-right:6px;display:inline-block}.legend .rank-top{background:var(--blue);border-color:var(--blue)}.legend .rank-mid{background:var(--surface);border-color:var(--blue)}.legend .rank-low{background:var(--surface);border-color:var(--outline)}.orgchart{padding:8px 0 16px;overflow-x:auto}.tree,.tree ul{margin:0;padding:0;list-style:none}.nodewrap{flex-direction:column;align-items:center;gap:6px;display:inline-flex}.node{text-align:left;border:2px solid var(--outline);background:var(--surface);width:230px;min-height:0;color:var(--text);border-radius:16px;justify-content:flex-start;gap:10px;padding:10px 14px;font-weight:500}.node:hover:not(:disabled){background:var(--blue-50);border-color:var(--blue);color:var(--text)}.node .txt{min-width:0}.node b{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;display:block;overflow:hidden}.node small{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.node .avatar{width:36px;height:36px;font-size:12px}.node.rank-top{background:var(--blue);border-color:var(--blue);color:#fff}.node.rank-top small{color:#ffffffd9}.node.rank-top .avatar{color:var(--blue);background:#fff}.node.rank-top:hover:not(:disabled){background:var(--blue-hover);color:#fff}.node.rank-mid{border-color:var(--blue)}.node.rank-low .avatar{background:var(--blue-50);color:var(--blue-text)}.node.me{box-shadow:0 0 0 4px var(--blue-50), 0 0 0 6px var(--blue)}.node.dim{opacity:.35}.kids{background:var(--surface);height:26px;min-height:0;color:var(--blue-text);border:2px solid var(--outline);border-radius:999px;gap:4px;padding:0 10px;font-size:12px}.kids:hover:not(:disabled){background:var(--blue-50);color:var(--blue-text);border-color:var(--blue)}.nodecard{max-width:420px;position:relative}.nodecard .close{width:36px;height:36px;position:absolute;top:12px;right:12px}@media (min-width:760px){.tree{justify-content:center;min-width:max-content;display:flex}.tree ul{justify-content:center;padding-top:22px;display:flex;position:relative}.tree li{text-align:center;padding:22px 8px 0;position:relative}.tree>li{padding-top:0}.tree li:before,.tree li:after{content:"";border-top:2px solid var(--outline);width:50%;height:22px;position:absolute;top:0;right:50%}.tree li:after{border-left:2px solid var(--outline);left:50%;right:auto}.tree>li:before,.tree>li:after,.tree li:only-child:before,.tree li:only-child:after{display:none}.tree li:only-child{padding-top:0}.tree li:first-child:before,.tree li:last-child:after{border:0}.tree li:last-child:before{border-right:2px solid var(--outline);border-radius:0 12px 0 0}.tree li:first-child:after{border-radius:12px 0 0}.tree ul:before{content:"";border-left:2px solid var(--outline);height:22px;position:absolute;top:0;left:50%}}@media (max-width:759px){.tree ul{padding-left:22px}.tree li{padding:8px 0 0 18px;position:relative}.tree>li{padding-left:0}.tree ul>li:before{content:"";border-left:2px solid var(--outline);position:absolute;top:0;bottom:0;left:0}.tree ul>li:last-child:before{height:36px;bottom:auto}.tree ul>li:after{content:"";border-top:2px solid var(--outline);width:16px;position:absolute;top:36px;left:0}.nodewrap{flex-direction:row;align-items:center}.node{width:min(260px,100vw - 150px)}}@media print{@page{size:landscape;margin:12mm}html,body,.canvas{background:#fff!important}.sidebar,.mobilebar,.bottomnav,.noprint,.pagehead .tools,.kids{display:none!important}.shell{display:block}.panel{border-radius:0;min-height:0;margin:0;padding:0}.panel>*{animation:none!important}.orgchart{overflow:visible}.node{break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.steps{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.steps span{color:#fff;border:2px solid #ffffff8c;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.steps span.done{color:var(--blue);background:#fff;border-color:#fff}.banner .note{background:#ffffff24;border-radius:12px;padding:10px 14px}.tabcard{margin-bottom:18px}.tabcard h3{margin-top:4px}.bottomnav a{white-space:nowrap;flex:none}@media (max-width:759px){.tabcard{padding-top:62px}.tabcard:has(>.tabtools){padding-top:104px}}.node b,.node small{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;overflow:visible}.node b{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.node{width:240px}input[type=file]{background:var(--surface);border:2px dashed var(--outline);color:var(--text-2);font-size:13px}input[type=file]::file-selector-button{font:inherit;border:2px solid var(--blue);background:var(--surface);color:var(--blue-text);cursor:pointer;border-radius:10px;margin-right:12px;padding:8px 14px;font-size:13px;font-weight:600}input[type=file]::file-selector-button:hover{background:var(--blue-50)}@media (min-width:1000px){.shell.full{grid-template-columns:1fr}.shell.full .mobilebar{padding:22px 40px 0;display:flex}.shell.full .mobilebar img{height:52px}.shell.full .mobilebar .iconbtn{display:none}.shell.full .panel{margin:18px}}button.mechip{min-height:0;font:inherit;color:var(--text);text-align:left;cursor:pointer;gap:10px}button.mechip:hover:not(:disabled){background:var(--blue-50);border-color:var(--outline);color:var(--text)}.mechip.only-lg,.only-lg>.mechip{display:flex}.popover.menu{flex-direction:column;gap:2px;width:220px;padding:8px;display:flex;top:60px}.popover.menu a,.popover.menu button{min-height:44px;color:var(--text);background:0 0;border:0;border-radius:12px;justify-content:flex-start;align-items:center;gap:10px;width:100%;padding:0 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.popover.menu a:hover,.popover.menu button:hover:not(:disabled){background:var(--blue-50);color:var(--blue-text);border:0}@media (prefers-color-scheme:dark){:root{--grid-minor:#7cb8e60d;--grid-major:#7cb8e614}}.panel,.authcard{background-color:var(--panel);background-image:repeating-linear-gradient(30deg, var(--grid-major) 0 1px, transparent 1px 130px), repeating-linear-gradient(150deg, var(--grid-major) 0 1px, transparent 1px 130px), repeating-linear-gradient(30deg, var(--grid-minor) 0 1px, transparent 1px 26px), repeating-linear-gradient(150deg, var(--grid-minor) 0 1px, transparent 1px 26px)}.authcard{background-color:var(--surface)}:root{--grid-minor:#00538709;--grid-major:#0053870f}@media (prefers-color-scheme:dark){:root{--grid-minor:#7cb8e608;--grid-major:#7cb8e60d}}.banner .name{text-decoration:none}h1,h2{font-weight:600}h3{font-weight:500}.banner h2{letter-spacing:-.015em;font-weight:600}.num,.stat .value,.idcard .no{font-weight:600}button,.chips button,label,.tabcard>.tab,.navitem[aria-current=page]{font-weight:500}.navitem{font-weight:400}.mechip b,.person,.rowlist .title,.node b,.tile,.table th,.chip{font-weight:500}.small{font-size:13px}.timecard .statusline{color:var(--blue-text);justify-content:space-between;align-items:center;gap:10px;margin:0 0 14px;font-size:1.05rem;display:flex}.timecard .actions button{flex:140px}.timecard a{color:var(--blue-text);font-weight:500}.timecard .selfie{align-items:center;gap:12px;margin:0 0 12px;display:flex}.timecard .selfie img{object-fit:cover;border:2px solid var(--blue);border-radius:10px;width:56px;height:56px}.timecard .selfie button{flex:1}.stack{flex-direction:column;gap:18px;display:flex}.daylist{flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.daylist li{border:2px solid var(--outline);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;list-style:none;display:flex}.daylist li .main{flex:180px;min-width:0}.daylist li .main b{font-weight:600;display:block}.daylist li .main span{color:var(--text-2);font-size:13px}.daylist li.pending{border-color:var(--blue)}.sheet{border:2px solid var(--blue);border-radius:var(--radius);margin-top:4px;padding:16px}.scrollx{overflow-x:auto}@media (max-width:1099px){.split>aside.stack{order:-1}}.stats.two{grid-template-columns:repeat(2,minmax(0,1fr))}.dayparts{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.dayparts button{border-radius:var(--radius);background:var(--surface);min-height:0;color:var(--blue-text);border-color:var(--outline);flex-direction:column;align-items:flex-start;gap:0;padding:8px 12px;font-size:13px}.dayparts button b{font-weight:600}.dayparts button span{color:var(--text-2);font-size:12px}.dayparts button:hover:not(:disabled){background:var(--blue-50);color:var(--blue-text);border-color:var(--outline)}.dayparts button[aria-pressed=true]{border-color:var(--blue)}.dayparts button[aria-pressed=true] span{color:var(--blue-text);font-weight:600}.tally{border-radius:var(--radius);background:var(--blue-50);color:var(--blue-text);flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 8px;padding:12px 14px;display:flex}.tally b{font-size:1.05rem;font-weight:600}.tally span:not(.chip){flex:1}.upload{border:2px dashed var(--blue);border-radius:var(--radius);color:var(--blue-text);cursor:pointer;align-items:center;gap:10px;padding:14px;display:flex}.upload input{display:none}.stats.two>.solid{grid-column:auto}.stats.two{margin-bottom:0}.certificate{page:letter;color:#111;border:2px solid var(--outline);border-radius:var(--radius);background:#fff;max-width:720px;margin:0 auto;padding:48px 56px;line-height:1.7}.certificate header{text-align:center;border-bottom:2px solid var(--blue);flex-direction:column;align-items:center;margin-bottom:28px;padding-bottom:14px;display:flex}.certificate header b{color:var(--blue);font-size:1.2rem;font-weight:600}.certificate header span{color:#444;font-size:13px}.certificate h1{text-align:center;color:var(--blue);margin:0 0 24px;font-size:1.3rem;font-weight:600}.certificate .sign{flex-direction:column;margin-top:56px;display:flex}.certificate .sign b{font-weight:600}.certificate footer{color:#555;margin-top:40px;font-size:12px}@page letter{size:portrait;margin:18mm}@media print{.certificate{border:0;max-width:none;padding:0}}@media (max-width:640px){.certificate{padding:28px 20px}}.funnelrow{grid-template-columns:130px 1fr 40px 48px;align-items:center;gap:10px;margin-bottom:10px;font-size:14px;display:grid}.funnelrow .bar{background:var(--blue-50);border-radius:999px;height:14px;overflow:hidden}.funnelrow .bar i{background:var(--blue);border-radius:999px;height:100%;display:block}.funnelrow b{text-align:right;font-weight:600}@media (max-width:640px){.funnelrow{grid-template-columns:96px 1fr 32px 40px}}.contracttext{white-space:pre-wrap;color:var(--text);margin:0;font-family:inherit;font-size:14px;line-height:1.7}.dashgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.dashgrid .wide{grid-column:1/-1}.dashstats{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;display:grid}.dashstats div{flex-direction:column;gap:2px;display:flex}.dashstats b{color:var(--blue-text);font-size:1.5rem;font-weight:600}.dashstats small{color:var(--text-2);text-transform:capitalize;font-size:12px}@media (max-width:900px){.dashgrid{grid-template-columns:1fr}}
