@charset "UTF-8";@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:400;src:url("./media/roboto-latin-400-normal-LOX3CHMS.woff2") format("woff2"),url("./media/roboto-latin-400-normal-54N5OGOO.woff") format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url("./media/roboto-latin-500-normal-D6YDQ3CR.woff2") format("woff2"),url("./media/roboto-latin-500-normal-RXEWG4GH.woff") format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:700;src:url("./media/roboto-latin-700-normal-T27NHG46.woff2") format("woff2"),url("./media/roboto-latin-700-normal-MIORRAJE.woff") format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:400;src:url("./media/roboto-latin-ext-400-normal-JLTDD7L3.woff2") format("woff2"),url("./media/roboto-latin-ext-400-normal-UMSBLPTO.woff") format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url("./media/roboto-latin-ext-500-normal-JYCUQIKH.woff2") format("woff2"),url("./media/roboto-latin-ext-500-normal-UGCQCX6A.woff") format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:700;src:url("./media/roboto-latin-ext-700-normal-RZWHNB6B.woff2") format("woff2"),url("./media/roboto-latin-ext-700-normal-NK2J5GTF.woff") format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:400;src:url("./media/roboto-vietnamese-400-normal-KACKQ7ZL.woff2") format("woff2"),url("./media/roboto-vietnamese-400-normal-DDNVJO3T.woff") format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url("./media/roboto-vietnamese-500-normal-VJX2WMYG.woff2") format("woff2"),url("./media/roboto-vietnamese-500-normal-6ESNSBNK.woff") format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:700;src:url("./media/roboto-vietnamese-700-normal-LA5HL3OG.woff2") format("woff2"),url("./media/roboto-vietnamese-700-normal-SU7RGW3X.woff") format("woff")}:root{--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:28px;--s8:32px;--fs-2xs:11px;--fs-xs:12px;--fs-sm:14px;--fs-base:15px;--fs-md:16px;--fs-lg:18px;--fs-xl:21px;--fs-num-sm:22px;--fs-num:26px;--fs-num-lg:32px;--bg:#F7F9FC;--surface:#FFFFFF;--surface-2:#EFF3F9;--border:#E4E9F1;--border-2:#D5DCE7;--row-hover:#EFF3F9;--ink:#16211B;--ink-strong:#3A453E;--ink-2:#6B716B;--ink-3:#A6ABA4;--accent:#166333;--accent-press:#0E4022;--accent-soft:#E2EDE6;--green:#166333;--green-soft:#E2EDE6;--amber:#E5A54B;--amber-soft:#FBF1DD;--blue:#2563EB;--blue-soft:#E7EEFD;--red:#BB202F;--red-soft:#F6E0E2;--gray-soft:#EAEEF4;--hl:#F2D98C;--hl-ink:#6B5300;--shadow-card:0 0 14px rgba(22,33,27,.06);--radius:4px;--radius-sm:3px;--radius-btn:3px;--side-bg:#0E4022;--side-ink:#FFFFFF;--side-ink-2:rgba(248,249,245,.72);--side-label:#9DB3A4;--side-active:rgba(255,255,255,.16);--side-border:rgba(255,255,255,.14);--ease:cubic-bezier(.2,.7,.2,1);--spring:cubic-bezier(.2,.85,.25,1);--shadow-popover:0 12px 32px rgba(0,0,0,.14);--on-accent:#fff}[data-theme=dark]{--bg:#0D0F12;--surface:#15181D;--surface-2:#1C2026;--border:#272C33;--border-2:#363C44;--row-hover:#1C2026;--ink:#E8EAED;--ink-strong:#C8CDD4;--ink-2:#969CA5;--ink-3:#5D636B;--accent:#3FA968;--accent-press:#5FC489;--accent-soft:rgba(63,169,104,.16);--green:#3FA968;--green-soft:rgba(63,169,104,.15);--amber:#E5A54B;--amber-soft:rgba(229,165,75,.15);--blue:#60A5FA;--blue-soft:rgba(96,165,250,.18);--red:#D85563;--red-soft:rgba(216,85,99,.15);--gray-soft:#20252B;--hl:#5A4A12;--hl-ink:#FFE8A3;--shadow-card:0 0 14px rgba(0,0,0,.4);--shadow-popover:0 12px 32px rgba(0,0,0,.4);--side-bg:#0A2415;--side-ink:#E9ECE8;--side-ink-2:rgba(233,236,232,.6);--side-label:#5E6661;--side-active:rgba(63,169,104,.2);--side-border:#1F2A22}*{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:clip}html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{font-family:Roboto,Segoe UI,-apple-system,system-ui,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.55}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.label{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}::selection{background:var(--accent-soft);color:var(--accent-press)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:6px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--ink-3);background-clip:padding-box}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field:focus-within{outline:2px solid var(--accent);outline-offset:2px}.app{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.side{background:var(--side-bg);border-right:1px solid var(--side-border);display:flex;flex-direction:column;padding:var(--s5) var(--s3);position:sticky;top:0;height:100vh;z-index:40;overflow:hidden}.side .label{color:var(--side-label)}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px var(--s4);cursor:pointer}.brand-logo{height:30px;width:auto;max-width:100%;display:block}.side-search{display:flex;align-items:center;gap:8px;height:34px;margin:0 4px var(--s3);padding:0 12px;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:20px;color:var(--side-ink-2);font-size:12.5px;cursor:text;transition:.15s}.side-search:hover{background:#ffffff2e}.side-search svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.8;fill:none;flex:none}.side-search .kbd{margin-left:auto;font-size:9.5px;border:1px solid rgba(255,255,255,.28);border-radius:4px;padding:1px 5px}.side-toggle{display:flex;align-items:center;gap:10px;padding:7px 10px;margin:0 4px var(--s3);color:var(--side-ink-2);font-size:13px;border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.side-toggle svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.6;fill:none}.switch{margin-left:auto;width:32px;height:18px;border-radius:10px;background:#ffffff47;position:relative;flex:none;transition:background .2s}.switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s var(--ease)}.side-toggle.on .switch{background:#ffffff8c}.side-toggle.on .switch:after{transform:translate(14px)}.nav-group{margin-top:var(--s2)}.nav-group>.label{padding:var(--s3) 10px 6px}.nav a{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:var(--radius-sm);color:var(--side-ink-2);text-decoration:none;font-weight:500;font-size:13.5px;margin-bottom:1px;transition:.15s;cursor:pointer}.nav a:hover{background:#ffffff14;color:#fff}.nav a.active{background:var(--side-active);color:#fff;font-weight:600;box-shadow:inset 2px 0 #fff}.nav a.active svg{stroke:#fff}.nav a.soon{opacity:.7;cursor:default}.nav a.soon:hover{background:transparent;color:var(--side-ink-2)}.nav a .tag{margin-left:auto;font-size:9px;font-weight:600;letter-spacing:.04em;color:var(--side-ink-2);background:#ffffff1f;padding:2px 6px;border-radius:var(--radius-sm)}.nav svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.6;fill:none;flex:none}.nav-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.nav-scroll::-webkit-scrollbar{width:8px}.nav-scroll::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:8px}.nav-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff42}.queue{flex:none;border-top:1px solid var(--side-border);padding-top:var(--s3);margin-top:var(--s2)}.queue .label{padding:0 8px 6px}.queue .row{display:flex;align-items:center;gap:8px;padding:0 8px;font-size:12px;color:var(--side-ink-2)}.queue .row b{color:#fff}.queue a.row{text-decoration:none;cursor:pointer;transition:color .15s}.queue a.row:hover{color:#fff}.dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 22%,transparent);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}[data-theme=dark] .nav a.active{background:var(--side-active);color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}[data-theme=dark] .nav a.active svg{stroke:var(--accent)}[data-theme=dark] .nav a:hover{background:#ffffff0d}[data-theme=dark] .side-search,[data-theme=dark] .nav a .tag{background:#ffffff0f;border-color:#ffffff14}[data-theme=dark] .switch{background:#ffffff2e}.main{display:flex;flex-direction:column;min-width:0}.topbar{position:sticky;top:0;z-index:25;height:60px;padding:0 var(--s6);display:flex;align-items:center;gap:var(--s4);background:color-mix(in srgb,var(--surface) 82%,transparent);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--border)}.topbar .ttl{font-size:15px;font-weight:600;color:var(--ink)}.crumb{font-size:12.5px;color:var(--ink-2)}.crumb b{color:var(--ink);font-weight:600}.crumb .sepc{color:var(--ink-3);margin:0 2px}.topbar .sp{flex:1}.iconbtn{position:relative;width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--ink-2);cursor:pointer;display:grid;place-items:center}.iconbtn:hover{background:var(--surface-2);color:var(--ink)}.iconbtn svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.7;fill:none}.dotbadge{position:absolute;top:3px;right:3px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;background:var(--red);color:#fff;font-size:8.5px;font-weight:700;display:grid;place-items:center}.usermenu{position:relative}.user{display:flex;align-items:center;gap:9px;padding:4px 8px 4px 12px;border:0;border-left:1px solid var(--border);background:transparent;cursor:pointer;border-radius:var(--radius-sm);font:inherit;color:var(--ink)}.user:hover{background:var(--surface-2)}.uchev{width:14px;height:14px;stroke:var(--ink-3);stroke-width:2;fill:none;transition:transform .2s}.avatar{width:30px;height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;line-height:1;font-weight:600;font-size:12px;flex:none}.user .who{text-align:left}.user .who b{font-size:12.5px;font-weight:600}.user .who span{display:block;font-size:10px;color:var(--ink-3);letter-spacing:.04em}.udrop{position:absolute;right:0;top:calc(100% + 8px);width:268px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-popover);padding:8px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:.18s;z-index:30}.usermenu.open .udrop{opacity:1;visibility:visible;transform:none}.usermenu.open .uchev{transform:rotate(180deg)}@media(max-width:1023px){.udrop{position:fixed;right:12px;left:auto;top:58px;width:min(300px,calc(100vw - 24px));max-height:calc(100vh - 80px);overflow-y:auto}}.udrop-head{display:flex;gap:10px;align-items:center;padding:6px 8px 12px;border-bottom:1px solid var(--border);margin-bottom:6px}.avatar.lg{width:38px;height:38px;font-size:14px}.uinfo b{font-size:13px;display:block;color:var(--ink)}.uinfo span{font-size:11px;color:var(--ink-3)}.udrop-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);font-weight:600;padding:4px 8px}.udrop-row{display:flex;flex-direction:column;gap:6px;padding:6px 8px;font-size:var(--fs-sm);color:var(--ink-2)}.udrop-row .seg{width:100%}.udrop-divider{height:1px;background:var(--border);margin:8px 4px}.udrop-item{display:flex;align-items:center;gap:10px;padding:8px;border-radius:6px;font-size:13px;color:var(--ink);text-decoration:none;cursor:pointer;width:100%;border:0;background:transparent;text-align:left;font-family:inherit}.udrop-item:hover{background:var(--surface-2)}.udrop-item.danger{color:var(--red)}.udrop-item svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.7;fill:none}.hamburger{display:none;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border-2);background:var(--surface);place-items:center;cursor:pointer;color:var(--ink)}.hamburger svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.8;fill:none}.topnav-burger svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;fill:none}.notif-btn svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.7;fill:none}.submenu-link svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.7;fill:none}.drawer-link svg,.drawer-group svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.7;fill:none;flex:none}.overlay{display:none}.notifmenu{position:relative}.notifmenu .udrop{width:340px;padding:0;overflow:hidden}.notifmenu.open .udrop{opacity:1;visibility:visible;transform:none}.notif-head{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border)}.notif-head b{font-size:13.5px;font-weight:600;color:var(--ink)}.notif-head .sp{flex:1}.notif-markall{border:0;background:transparent;color:var(--accent);font:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm)}.notif-markall:hover{background:var(--surface-2)}.notif-markall:disabled{color:var(--ink-3);cursor:default}.notif-list{max-height:380px;overflow-y:auto}.notif-item{display:flex;gap:11px;align-items:flex-start;padding:11px 14px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s;text-align:left;width:100%;border-left:0;border-right:0;border-top:0;background:transparent;font-family:inherit;color:var(--ink)}.notif-item:hover{background:var(--surface-2)}.notif-item.unread{background:var(--accent-soft)}.notif-item.unread:hover{background:color-mix(in srgb,var(--accent-soft) 70%,var(--surface))}.notif-ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--accent-soft);color:var(--accent)}.notif-ic svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.7;fill:none}.notif-ic.green{background:var(--green-soft);color:var(--green)}.notif-ic.amber{background:var(--amber-soft);color:var(--amber)}.notif-ic.gray{background:var(--gray-soft);color:var(--ink-2)}.notif-body{min-width:0;flex:1}.notif-title{font-size:13px;font-weight:600;color:var(--ink);line-height:1.4}.notif-msg{font-size:12.5px;color:var(--ink-2);line-height:1.45;margin-top:2px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notif-time{font-size:11px;color:var(--ink-3);margin-top:4px}.notif-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none;margin-top:6px}.notif-empty{padding:34px 16px;text-align:center;color:var(--ink-3);font-size:12.5px}.notif-foot{padding:8px;border-top:1px solid var(--border)}.notif-viewall{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;border-radius:6px;font-size:12.5px;font-weight:600;color:var(--accent);text-decoration:none;cursor:pointer;border:0;background:transparent;font-family:inherit}.notif-viewall:hover{background:var(--surface-2)}.notif-page-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.notif-row{display:flex;gap:13px;align-items:flex-start;padding:14px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s}.notif-row:last-child{border-bottom:0}.notif-row:hover{background:var(--row-hover)}.notif-row.unread{background:var(--accent-soft)}.notif-row.unread:hover{background:color-mix(in srgb,var(--accent-soft) 70%,var(--surface))}.notif-row .notif-title{font-size:13.5px}.notif-row .notif-msg{font-size:13px;-webkit-line-clamp:3}.seg{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px;gap:2px}.seg button{border:0;background:transparent;color:var(--ink-2);font:inherit;font-size:12.5px;font-weight:500;padding:5px 11px;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;gap:6px;transition:.18s;white-space:nowrap}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card);font-weight:600}.seg svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.7;fill:none}.seg.sm{padding:2px}.seg.sm button{flex:1;justify-content:center;padding:5px 6px;font-size:11.5px}.seg button.ok.on{background:var(--green-soft);color:var(--green);box-shadow:none;font-weight:600}.seg button.off.on{background:var(--red-soft);color:var(--red);box-shadow:none;font-weight:600}.content{padding:var(--s6) var(--s7) var(--s8);width:100%;min-height:calc(100vh - 60px)}.pagehead{display:flex;align-items:center;gap:var(--s4);margin-bottom:var(--s5)}.pagehead h1{font-size:19px;font-weight:600;letter-spacing:-.02em;color:var(--ink-strong)}.pagehead .sp{flex:1}.pagehead-main{min-width:0}.pagehead-sub{margin:3px 0 0;font-size:13px;font-weight:400;color:var(--ink-3);line-height:1.45}.tab-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--s3);margin-bottom:var(--s4)}.back{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);font-size:13px;font-weight:500;text-decoration:none;margin-bottom:var(--s4);cursor:pointer;background:none;border:0;font-family:inherit;padding:0}.back:hover{color:var(--ink)}.back svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}.btn{font:inherit;font-size:12.5px;font-weight:500;padding:6px 12px;border-radius:var(--radius-btn);border:1px solid var(--border-2);background:var(--surface);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:.15s;white-space:nowrap}.btn:hover{background:var(--surface-2);border-color:var(--ink-3)}.btn:active{transform:scale(.98)}.btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.7;fill:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-press);border-color:var(--accent-press)}.btn.lg{padding:9px 16px;font-size:13.5px}.btn.block{width:100%;justify-content:center}.btn.danger{color:var(--red);border-color:var(--border-2)}.btn.danger:hover{background:var(--red-soft);border-color:var(--red)}.btn:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:var(--radius-sm);white-space:nowrap}.badge .d{width:6px;height:6px;border-radius:50%}.badge.green{background:var(--green-soft);color:var(--green)}.badge.green .d{background:var(--green)}.badge.blue{background:var(--blue-soft);color:var(--blue)}.badge.blue .d{background:var(--blue)}.badge.amber{background:var(--amber-soft);color:var(--amber)}.badge.amber .d{background:var(--amber)}.badge.gray{background:var(--gray-soft);color:var(--ink-2)}.badge.gray .d{background:var(--ink-3);animation:pulse 1.6s infinite}.badge.red{background:var(--red-soft);color:var(--red)}.badge.red .d{background:var(--red)}.who-cell{display:flex;align-items:center;gap:8px}.who-cell .av{width:24px;height:24px;border-radius:50%;background:var(--surface-2);border:1px solid var(--border-2);display:grid;place-items:center;font-size:10.5px;font-weight:600;color:var(--ink-2);flex:none}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);margin-bottom:var(--s5)}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--s5);position:relative}.kpi .t{font-size:13px;color:var(--ink-2);font-weight:500;margin-bottom:10px;display:flex;align-items:center;gap:5px}.kpi .t .q{width:14px;height:14px;border-radius:50%;border:1px solid var(--ink-3);color:var(--ink-3);font-size:9px;display:grid;place-items:center;cursor:help}.kpi .v{font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1.1}.kpi .v.g{color:var(--green)}.kpi .v.b{color:var(--accent)}.kpi .sub{margin-top:8px;font-size:12px;color:var(--ink-3)}.kpi .sub b{color:var(--ink)}.kpi .ic{position:absolute;top:var(--s5);right:var(--s5);width:40px;height:40px;border-radius:50%;display:grid;place-items:center}.kpi .ic svg{width:18px;height:18px;stroke-width:1.8;fill:none}.ic.b{background:var(--accent-soft)}.ic.b svg{stroke:var(--accent)}.ic.g{background:var(--green-soft)}.ic.g svg{stroke:var(--green)}.ic.a{background:var(--amber-soft)}.ic.a svg{stroke:var(--amber)}.chip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:2px 7px;border-radius:var(--radius-sm);background:var(--green-soft);color:var(--green)}.toolbar{display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s4);flex-wrap:wrap}.field{display:flex;align-items:center;gap:8px;height:34px;padding:0 11px;background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-btn);color:var(--ink-2);font-size:12.5px;cursor:pointer}.field svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.7;fill:none;flex:none}.field input{border:0;background:transparent;font:inherit;color:var(--ink);outline:none;width:100%;cursor:text}.field.search{flex:1;max-width:300px;cursor:text}.field.sel{gap:18px;position:relative}.field.sel select{appearance:none;border:0;background:transparent;font:inherit;color:var(--ink);cursor:pointer;outline:none;padding-right:4px}.toolbar .sp{flex:1}.filterbtn{display:none;height:34px;min-width:40px;padding:0 12px;border:1px solid var(--border-2);border-radius:var(--radius-btn);background:var(--surface);color:var(--ink-2);align-items:center;justify-content:center;gap:6px;cursor:pointer;font:inherit;font-size:12.5px}.filterbtn svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.7;fill:none}.filterbtn .fcount{background:var(--accent);color:#fff;font-size:9.5px;font-weight:700;border-radius:8px;min-width:15px;height:15px;padding:0 4px;display:grid;place-items:center}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;background:var(--surface)}thead th{text-align:left;font-size:11.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-strong);padding:8px 12px;border:1px solid var(--border);white-space:nowrap;background:var(--surface-2);position:relative;cursor:pointer;-webkit-user-select:none;user-select:none}thead th.nosort{cursor:default}thead th .so{margin-left:5px;opacity:.4;font-size:10px;transition:color .15s,opacity .15s}thead th:hover .so{opacity:.7}thead th .so.on{opacity:1;color:var(--accent);font-weight:800;font-size:12.5px}thead th .so .so-n{font-size:8.5px;font-weight:800;color:var(--accent);vertical-align:super;line-height:0;margin-left:1px}thead th:has(.so.on){color:var(--accent);background:var(--accent-soft)}thead th.r,tbody td.r{text-align:right}tbody td{padding:8px 12px;border:1px solid var(--border);vertical-align:middle;color:var(--ink-2);height:40px}tbody tr{transition:background .12s;cursor:pointer}tbody tr:hover{background:var(--row-hover)}thead th.selcol,tbody td.selcol{width:38px;text-align:center;padding-left:10px;padding-right:10px;cursor:default}.sel-check{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;margin:0;vertical-align:middle}tbody tr.row-sel{background:var(--accent-soft)}tbody tr.row-sel:hover{background:color-mix(in srgb,var(--accent-soft) 78%,var(--surface))}.bulkbar{display:flex;align-items:center;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s4);padding:8px 14px;background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--radius-btn);transition:opacity .18s var(--ease)}.bulkbar-count{font-size:13px;font-weight:600;color:var(--accent-press)}.bulkbar-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-wrap:wrap}.bulkbar .btn:disabled{opacity:.55;cursor:not-allowed}.sv-wrap{position:relative}.sv-btn{height:34px}.sv-btn.on{border-color:var(--accent);color:var(--accent)}.sv-menu{position:absolute;left:0;top:calc(100% + 6px);z-index:30;min-width:240px;max-width:320px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 32px #00000024;padding:6px;display:flex;flex-direction:column;gap:2px}.sv-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:12.5px;text-align:left;border-radius:var(--radius-sm);cursor:pointer;transition:background .12s}.sv-item:hover{background:var(--surface-2)}.sv-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.sv-item .sv-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sv-item .sv-del{display:grid;place-items:center;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--ink-3);flex:none}.sv-item .sv-del:hover{background:var(--red-soft);color:var(--red)}.sv-empty{padding:10px 9px;font-size:12.5px;color:var(--ink-3);text-align:center}.sv-save{display:flex;align-items:center;gap:6px;width:100%;margin-top:4px;padding:7px 9px;border:0;border-top:1px solid var(--border);background:transparent;color:var(--accent);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;border-radius:0 0 var(--radius-sm) var(--radius-sm)}.sv-save:hover{background:var(--surface-2)}.sv-list-m{display:flex;flex-direction:column;gap:6px}.sv-item-m{display:flex;align-items:center;gap:6px;border:1px solid var(--border-2);border-radius:var(--radius-sm);overflow:hidden}.sv-item-m.active{border-color:var(--accent);background:var(--accent-soft)}.sv-pick-m{flex:1;display:flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:13px;text-align:left;cursor:pointer}.sv-del-m{display:grid;place-items:center;width:40px;min-height:40px;border:0;border-left:1px solid var(--border-2);background:transparent;color:var(--ink-3);cursor:pointer}.sv-del-m:active{background:var(--red-soft);color:var(--red)}.sv-save-m{justify-content:center;min-height:40px}.rec-row-m{display:flex;align-items:flex-start;gap:8px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.rec-row-m>.sel-check-m{display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding-top:8px;flex:none}.sel-check-m .sel-check{appearance:none;-webkit-appearance:none;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--border-2);background:var(--surface);display:grid;place-items:center;transition:background .15s,border-color .15s}.sel-check-m .sel-check:checked{background:var(--accent);border-color:var(--accent)}.sel-check-m .sel-check:checked:after{content:"";width:5px;height:10px;margin-top:-2px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.rec-row-m>app-record-card{flex:1;min-width:0}.rec-row-m.row-sel>app-record-card .rec-card{outline:2px solid var(--accent);outline-offset:-2px}.t-title{font-weight:600;font-size:13px;color:var(--ink)}.t-slug{font-size:11.5px;color:var(--ink-3);margin-left:8px}.t-mtype{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-2);font-size:11px;font-weight:600;white-space:nowrap}.t-mtype.mt-0{background:var(--green-soft);color:var(--green)}.t-mtype.mt-1{background:var(--blue-soft);color:var(--blue)}.t-mtype.mt-2{background:var(--amber-soft);color:var(--amber)}.rowbtn{width:26px;height:26px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--ink-3);cursor:pointer;display:inline-grid;place-items:center}.rowbtn:hover{background:var(--surface-2);color:var(--ink);border-color:var(--border-2)}.rowbtn svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.8;fill:none}tbody td:has(.rowbtn){text-align:center;width:1%;white-space:nowrap}.pager{display:flex;align-items:center;gap:var(--s3);padding:var(--s4) 2px}.pager .info{font-size:12.5px;color:var(--ink-2)}.pager .sp{flex:1}.selsm{height:30px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--surface);font:inherit;font-size:12.5px;color:var(--ink);padding:0 8px;cursor:pointer}.pages{display:flex;gap:5px}.pages a,.pages button{min-width:30px;height:30px;padding:0 8px;display:grid;place-items:center;border-radius:var(--radius-sm);border:1px solid var(--border-2);background:var(--surface);color:var(--ink-2);font:inherit;font-size:12.5px;font-weight:500;text-decoration:none;cursor:pointer}.pages a:hover,.pages button:not(:disabled):hover{background:var(--surface-2)}.pages a.on{background:var(--accent);border-color:var(--accent);color:#fff}.pages button:disabled{opacity:.45;cursor:default}.pager-mobile{display:none}.pg-nav{flex:1;height:40px;border:1px solid var(--border-2);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.pg-nav:disabled{color:var(--ink-3);opacity:.55}.pg-nav svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.8;fill:none}.pg-ind{font-size:12.5px;color:var(--ink-2);white-space:nowrap;text-align:center;padding:0 4px}.pg-ind b{color:var(--ink)}.cards-mobile{display:none}.rec-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px;transition:background .12s}.rec-card:active{background:var(--surface-2)}.rc-top{display:flex;align-items:flex-start;gap:10px}.rc-top>div:first-child{min-width:0}.rc-top .badge{flex:none;align-self:flex-start;margin-left:auto}.rc-title{font-weight:600;font-size:14px;color:var(--ink);line-height:1.3}.rc-slug{font-size:11.5px;color:var(--ink-3);margin-top:2px}.rc-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.mchip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:3px 8px;font-variant-numeric:tabular-nums}.mchip svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.7;fill:none;flex:none;opacity:.7}.rc-foot{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:11px;border-top:1px solid var(--border)}.rec-swipe{position:relative;overflow:hidden;border-radius:8px}.rec-actions{position:absolute;top:0;right:0;bottom:0;display:flex}.rsa{width:62px;border:0;color:#fff;display:grid;place-items:center;cursor:pointer}.rsa svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;fill:none}.rsa-open{background:var(--accent)}.rsa-export{background:#8a93a3}.rsa-del{background:var(--red)}.cards-mobile .rec-card{position:relative;transition:transform .32s var(--spring),background .12s;will-change:transform;touch-action:pan-y}.rec-swipe.open .rec-card{transform:translate(-186px)}.upload-wrap{max-width:680px}.dropzone{border:1.5px dashed var(--border-2);border-radius:var(--radius);background:var(--surface);padding:48px 28px;text-align:center;cursor:pointer;transition:.2s;position:relative}.dropzone:hover{border-color:var(--accent);background:var(--surface-2)}.dropzone.drag{border-color:var(--accent);background:var(--accent-soft)}.dz-ic{width:54px;height:54px;border-radius:50%;background:var(--accent-soft);display:grid;place-items:center;margin:0 auto 14px;color:var(--accent)}.dz-ic svg{width:24px;height:24px;stroke:currentColor;stroke-width:1.8;fill:none}.dz-title{font-size:15px;font-weight:600;color:var(--ink)}.dz-sub{font-size:13px;color:var(--ink-2);margin-top:5px}.dz-sub b{color:var(--accent);font-weight:600}.dz-formats{display:flex;gap:7px;justify-content:center;margin-top:14px}.dz-formats span{font-size:10px;font-weight:600;letter-spacing:.04em;color:var(--ink-3);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 8px}.file-pick{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:var(--radius);padding:13px 15px;background:var(--surface);margin-top:6px}.file-pick .fic{width:38px;height:38px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex:none}.file-pick .fic svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none}.file-pick .fname{font-size:13px;font-weight:600;color:var(--ink)}.file-pick .fmeta{font-size:11.5px;color:var(--ink-3);margin-top:2px}.file-pick .fok{margin-left:auto;color:var(--green)}.file-pick .fok svg{width:20px;height:20px;stroke:currentColor;stroke-width:2;fill:none}.form-row{margin-bottom:var(--s4)}.form-row>label{display:block;font-size:12px;font-weight:600;color:var(--ink-strong);margin-bottom:6px}.input{width:100%;height:36px;padding:0 12px;border:1px solid var(--border-2);border-radius:var(--radius-btn);background:var(--surface);color:var(--ink);font:inherit;font-size:13px;outline:none;transition:.15s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea.input{height:auto;padding:10px 12px;resize:vertical;line-height:1.55}select.input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C757D' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:15px;padding-right:32px}.adv-toggle{display:inline-flex;align-items:center;gap:7px;background:none;border:0;color:var(--accent);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;padding:4px 0}.adv-toggle svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .2s}.adv-toggle.open svg{transform:rotate(90deg)}.adv-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--border)}.queued{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:34px;text-align:center;max-width:520px}.queued .qic{width:60px;height:60px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin:0 auto 16px;position:relative}.queued .qic svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.8;fill:none}.queued .qic:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--accent);opacity:.35;animation:ring 1.8s infinite}@keyframes ring{0%{transform:scale(1);opacity:.35}70%{transform:scale(1.25);opacity:0}to{opacity:0}}.qbar{height:6px;border-radius:6px;background:var(--surface-2);overflow:hidden;margin:18px auto 0;max-width:320px}.qbar i{display:block;height:100%;width:38%;background:var(--accent);border-radius:6px;animation:qmove 1.4s infinite}@keyframes qmove{0%{margin-left:-40%}to{margin-left:100%}}h1.title{font-size:20px;font-weight:600;letter-spacing:-.02em;margin:6px 0 10px}.meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;color:var(--ink-2);font-size:12.5px;padding-bottom:var(--s4);border-bottom:1px solid var(--border)}.meta .sep{color:var(--ink-3)}.meta .who2{color:var(--ink);font-weight:500}.pill{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:var(--radius)}.pill.green{color:var(--green);background:var(--green-soft)}.pill.green .d{background:var(--green)}.pill.blue{color:var(--blue);background:var(--blue-soft)}.pill.blue .d{background:var(--blue)}.pill.amber{color:var(--amber);background:var(--amber-soft)}.pill.amber .d{background:var(--amber)}.pill.red{color:var(--red);background:var(--red-soft)}.pill.red .d{background:var(--red)}.pill.gray{color:var(--ink-2);background:var(--gray-soft)}.pill.gray .d{background:var(--ink-3)}.pill .d{width:6px;height:6px;border-radius:50%}.stepper{display:flex;align-items:center;margin:var(--s5) 0}.step{display:flex;align-items:center;gap:9px}.step .circle{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:600;border:1.5px solid var(--border-2);color:var(--ink-3);background:var(--surface);flex:none}.step.done .circle{background:var(--accent);border-color:var(--accent);color:#fff}.step.active .circle{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.step .stxt{font-size:12.5px;font-weight:500;color:var(--ink-2)}.step.done .stxt,.step.active .stxt{color:var(--ink);font-weight:600}.step .stxt small{display:block;font-size:9.5px;color:var(--ink-3);font-weight:600;letter-spacing:.05em}.step-line{flex:1;height:1.5px;background:var(--border);margin:0 12px;min-width:20px}.step-line.done{background:var(--accent)}.stepper-mobile{display:none}.sm-dots{display:flex;align-items:center}.sm-dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:600;border:1.5px solid var(--border-2);color:var(--ink-3);background:var(--surface);flex:none}.sm-dot.done{background:var(--accent);border-color:var(--accent);color:#fff}.sm-dot.active{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.sm-line{flex:1;height:1.5px;background:var(--border);min-width:14px}.sm-line.done{background:var(--accent)}.sm-cap{font-size:12.5px;color:var(--ink-2);margin-top:9px}.sm-cap b{color:var(--ink)}.barrow{display:flex;align-items:center;gap:var(--s3);margin-bottom:var(--s5)}.barrow .toolbar{margin-left:auto;margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s4);margin-bottom:var(--s5)}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--s5)}.stat .v{font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1.1}.stat.accent .v{color:var(--accent)}.stat .l{margin-top:7px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--s6) var(--s7);margin-bottom:var(--s5)}.note{display:flex;gap:10px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--amber);border-radius:var(--radius-sm);padding:12px 14px;font-size:13px;color:var(--ink-2);margin-bottom:var(--s5)}.note .sw{width:14px;height:14px;border-radius:3px;background:var(--hl);flex:none;margin-top:1px}.note b{color:var(--ink)}mark{background:var(--hl);color:var(--hl-ink);padding:0 4px;border-radius:3px;font-weight:500;-webkit-box-decoration-break:clone;box-decoration-break:clone;cursor:pointer;transition:filter .15s}mark:hover{filter:brightness(.96)}mark.filled{background:transparent;color:var(--ink);box-shadow:inset 0 -2px 0 var(--green);padding:0;font-weight:600}mark .mk-edit{display:inline-flex;width:0;overflow:hidden}.mark-input{font:inherit;font-weight:600;padding:0 4px;border:0;outline:none;background:var(--hl);color:var(--hl-ink);box-shadow:inset 0 -2px 0 var(--accent);border-radius:3px;min-width:80px}.lead-label{margin-bottom:10px}.lead{font-size:15.5px;line-height:1.62;color:var(--ink);max-width:70ch}.lead b{font-weight:600}.divider{height:1px;background:var(--border);margin:var(--s6) 0}.h2{font-size:14px;font-weight:600;letter-spacing:-.01em;margin-bottom:10px}.bullet{display:flex;gap:9px;margin-bottom:8px;max-width:72ch;color:var(--ink);line-height:1.6}.bullet:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);margin-top:8px;flex:none}.mtable{width:100%;border-collapse:collapse;margin:6px 0 4px;max-width:72ch}.mtable th,.mtable td{border:1px solid var(--border);padding:7px 11px;text-align:left;font-size:13px}.mtable th{background:var(--surface-2);font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-strong)}.mtable td{color:var(--ink-2)}.tx{display:flex;gap:var(--s4);padding:var(--s4) 0;border-bottom:1px solid var(--border)}.tx:last-child{border-bottom:0}.tx .side-meta{width:120px;flex:none}.tx .spk{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}.tx .ts{font-size:11.5px;color:var(--ink-3);margin-top:2px}.tx.s2 .spk{color:var(--accent)}.tx.s3 .spk{color:var(--green)}.tx.s4 .spk{color:var(--amber)}.tx .say{font-size:13.5px;line-height:1.65;color:var(--ink-2);max-width:74ch}.tx-search{margin-bottom:var(--s4)}.hidden{display:none}.spk-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--s5);margin-bottom:var(--s3);display:grid;grid-template-columns:auto 1fr;gap:var(--s5)}.spk-card.low{border-left:3px solid var(--amber)}.spk-av{display:flex;flex-direction:column;align-items:center;gap:8px}.spk-av .avatar{width:46px;height:46px;font-size:16px}.spk-tag{font-size:10px;font-weight:600;color:var(--ink-3);letter-spacing:.04em}.spk-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}.conf{display:inline-flex;align-items:center;gap:8px}.conf .bar{width:52px;height:4px;border-radius:3px;background:var(--surface-2);overflow:hidden}.conf .bar i{display:block;height:100%;border-radius:3px}.conf .pct{font-size:11.5px;font-weight:600}.spk-fields{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--s4);margin-bottom:14px}.spk-fields .form-row{margin:0}.quote{display:flex;gap:10px;padding:11px 14px;background:var(--surface-2);border-radius:var(--radius-sm);font-size:13px;color:var(--ink-2);line-height:1.55;border-left:2px solid var(--border-2)}.quote svg{width:15px;height:15px;stroke:var(--ink-3);stroke-width:1.7;fill:none;flex:none;margin-top:2px}.terms{display:flex;flex-wrap:wrap;gap:9px;margin-top:var(--s3)}.term{display:inline-flex;align-items:center;gap:9px;padding:7px 13px 7px 9px;border:1px solid var(--border-2);border-radius:var(--radius-btn);background:var(--surface);cursor:pointer;font-size:13px;transition:.15s;-webkit-user-select:none;user-select:none}.term.on{border-color:var(--accent);background:var(--accent-soft)}.term .tk{width:17px;height:17px;border-radius:3px;border:1.5px solid var(--border-2);display:grid;place-items:center;flex:none;color:#fff;transition:.15s}.term.on .tk{background:var(--accent);border-color:var(--accent)}.term .tk svg{width:11px;height:11px;stroke:currentColor;stroke-width:2.4;fill:none;opacity:0}.term.on .tk svg{opacity:1}.term .heard{text-decoration:line-through;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:12px}.term .arr{color:var(--ink-3)}.term .canon{font-weight:600;color:var(--ink)}.term.on .canon{color:var(--accent)}.sticky-foot{position:sticky;bottom:0;display:flex;align-items:center;gap:var(--s4);padding:var(--s4) 0;margin-top:var(--s4);background:linear-gradient(transparent,var(--bg) 40%)}.sticky-foot .info{font-size:12.5px;color:var(--ink-2)}.sticky-foot .sp{flex:1}.building{max-width:480px;margin:30px auto 0;text-align:center}.building .bic{width:64px;height:64px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin:0 auto 16px;position:relative}.building .bic svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.8;fill:none}.building .bic:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--accent);opacity:.35;animation:ring 1.8s infinite}.phases{margin-top:22px;text-align:left;border-top:1px solid var(--border)}.phase{display:flex;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid var(--border);transition:opacity .3s}.phase .pn{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--border-2);display:grid;place-items:center;flex:none;color:var(--accent)}.phase .pn svg{width:12px;height:12px;stroke:currentColor;stroke-width:2.2;fill:none}.phase.done .pn{background:var(--accent);border-color:var(--accent);color:#fff}.phase .pt{font-size:13.5px;color:var(--ink)}.phase.pending{opacity:.45}.gl-note{display:flex;align-items:center;gap:11px;padding:13px 15px;border-left:3px solid var(--amber);background:var(--amber-soft);border-radius:var(--radius-sm);margin-bottom:var(--s4);font-size:13px;color:var(--ink)}.gl-note svg{width:17px;height:17px;stroke:var(--amber);stroke-width:1.8;fill:none;flex:none}.gtag{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:600;letter-spacing:.03em}.gtag .gd{width:6px;height:6px;border-radius:2px}.gvars{display:flex;flex-wrap:wrap;gap:5px}.gvar{font-family:JetBrains Mono,monospace;font-size:11.5px;color:var(--ink-2);border:1px solid var(--border);border-radius:3px;padding:2px 7px}.fab-wrap{display:none;position:fixed;right:18px;bottom:18px;z-index:31;flex-direction:column;align-items:flex-end;gap:12px}.fab{width:52px;height:52px;border-radius:16px;background:var(--accent);color:#fff;border:0;box-shadow:0 8px 20px #3f80ea73;cursor:pointer;display:grid;place-items:center}.fab:active{transform:scale(.95)}.fab svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .2s}.fab-wrap.open .fab svg{transform:rotate(45deg)}.fab-menu{display:flex;flex-direction:column;align-items:flex-end;gap:10px;opacity:0;transform:translateY(10px) scale(.96);pointer-events:none;transition:.2s var(--ease)}.fab-wrap.open .fab-menu{opacity:1;transform:none;pointer-events:auto}.fab-item{display:inline-flex;align-items:center;gap:10px;border:0;background:transparent;cursor:pointer;font:inherit}.fab-item .lbl{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:5px 10px;font-size:12.5px;font-weight:500;color:var(--ink);box-shadow:0 2px 10px #0000001a}.fab-item .ic2{width:42px;height:42px;border-radius:12px;background:var(--surface);border:1px solid var(--border);display:grid;place-items:center;color:var(--ink-2);box-shadow:0 4px 14px #0000001f}.fab-item.primary .ic2{background:var(--accent);border-color:var(--accent);color:#fff}.fab-item .ic2 svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.9;fill:none}.fab-scrim{position:fixed;inset:0;background:#00000047;z-index:30;opacity:0;visibility:hidden;transition:.2s}.fab-scrim.show{opacity:1;visibility:visible}.sheet-scrim{position:fixed;inset:0;background:#00000073;z-index:45;opacity:0;visibility:hidden;transition:.25s}.sheet-scrim.show{opacity:1;visibility:visible}.sheet{position:fixed;inset:0 0 0 auto;z-index:46;background:var(--surface);border-radius:0;width:min(560px,94vw);padding:18px 20px calc(18px + env(safe-area-inset-bottom));transform:translate(100%);transition:transform .3s var(--ease),display .3s;transition-behavior:allow-discrete;max-height:none;overflow-y:auto}.sheet:not(.show){display:none}@starting-style{.sheet.show{transform:translate(100%)}.sheet.bottom.show{transform:translateY(100%)}}.sheet.show{transform:none;border-left:1px solid var(--border);box-shadow:-16px 0 40px #0f172a29}.sheet.wide{width:min(760px,94vw)}.sheet.xwide{width:min(1040px,96vw)}.sheet.bottom{inset:auto 0 0;width:100%;max-width:none;max-height:85vh;border-radius:16px 16px 0 0;padding-top:8px;transform:translateY(100%)}.sheet.bottom.show{transform:none;border-left:0;border-top:1px solid var(--border);box-shadow:0 -16px 40px #0f172a29}.sheet.bottom .sheet-handle{display:block;width:40px;height:4px;border-radius:999px;background:var(--border);margin:2px auto 12px}.sheet-handle{display:none}.sheet{touch-action:pan-y}.sheet h3{font-size:15px;font-weight:600;margin-bottom:4px}.sheet .sub{font-size:12.5px;color:var(--ink-3);margin-bottom:16px}.sheet-field{margin-bottom:16px}.sheet-field>label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin-bottom:8px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip-opt{padding:8px 14px;border:1px solid var(--border-2);border-radius:var(--radius-btn);background:var(--surface);font-size:13px;color:var(--ink-2);cursor:pointer;transition:.15s}.chip-opt.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.sheet-foot{display:flex;gap:10px;margin-top:8px;padding-top:14px;border-top:1px solid var(--border)}.sheet-foot .btn{flex:1;justify-content:center;height:42px}.settings-card{max-width:560px}.set-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--border)}.set-row:last-child{border-bottom:0}.set-row .st{font-size:13.5px;font-weight:600;color:var(--ink)}.set-row .ss{font-size:12px;color:var(--ink-3);margin-top:2px}.empty-state{max-width:460px;margin:40px auto;text-align:center}.empty-state .eic{width:60px;height:60px;border-radius:50%;background:var(--surface-2);color:var(--ink-3);display:grid;place-items:center;margin:0 auto 16px}.empty-state .eic svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.7;fill:none}.empty-state h3{font-size:16px;font-weight:600;color:var(--ink);margin-bottom:6px}.empty-state p{font-size:13.5px;color:var(--ink-2);line-height:1.6}.hint{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;margin:0 0 var(--s4);background:var(--amber-soft);border:1px solid color-mix(in srgb,var(--amber) 40%,transparent);border-radius:var(--radius-sm);font-size:12.5px;line-height:1.5;color:var(--ink-2)}.hint.accent{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 38%,transparent)}.hint .hint-ic{width:16px;height:16px;flex:none;margin-top:1px;color:var(--amber)}.hint.accent .hint-ic{color:var(--accent)}.hint .hint-ic svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.8;fill:none}.hint .hint-body{flex:1;min-width:0}.hint .hint-body b{color:var(--ink);font-weight:600}.hint .hint-x{flex:none;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-3);cursor:pointer;transition:background .12s,color .12s}.hint .hint-x:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.hint .hint-x svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}.welcome{max-width:560px;margin:48px auto;text-align:center}.welcome .wic{width:64px;height:64px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin:0 auto 18px}.welcome .wic svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.7;fill:none}.welcome h2{font-size:19px;font-weight:600;letter-spacing:-.01em;color:var(--ink);margin-bottom:8px}.welcome p{font-size:13.5px;color:var(--ink-2);line-height:1.65;margin-bottom:22px}.welcome .welcome-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.welcome .welcome-cta .btn{min-height:42px}@media(max-width:520px){.welcome .welcome-cta{flex-direction:column}.welcome .welcome-cta .btn{width:100%;justify-content:center}}.toast{position:fixed;right:16px;top:72px;max-width:calc(100vw - 32px);transform:translate(16px);z-index:60;display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--surface);padding:12px 18px;border-radius:var(--radius);font-size:13px;font-weight:500;box-shadow:0 10px 30px #00000040;opacity:0;visibility:hidden;transition:.25s var(--ease);border-left:3px solid var(--accent)}.toast.show{opacity:1;visibility:visible;transform:none}.toast.ok{border-left-color:var(--green)}.toast.err{border-left-color:var(--red)}.toast svg{width:17px;height:17px;stroke:currentColor;stroke-width:2;fill:none}.toast-action{margin-left:6px;padding:4px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.35);background:transparent;color:var(--accent);font-weight:600;font-size:12px;cursor:pointer}.toast-action:hover{background:#ffffff1a}.rec-card-simple{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.rec-card-simple .rc-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rec-card-simple .rc-meta{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--ink-3)}.rec-card-simple .rc-actions{display:flex;gap:8px;margin-top:4px}.reveal{opacity:1;transform:none}@keyframes rise{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){.reveal{opacity:0;animation:rise .55s var(--ease) forwards}.cards-mobile .rec-swipe{opacity:0;transform:translateY(9px);animation:rise .5s var(--ease) forwards}}[data-motion=off] .reveal,[data-motion=off] .cards-mobile .rec-swipe{opacity:1!important;transform:none!important;animation:none!important}.d1{animation-delay:.04s}.d2{animation-delay:.1s}.d3{animation-delay:.16s}.d4{animation-delay:.22s}.d5{animation-delay:.3s}.cards-mobile .rec-swipe:nth-child(1){animation-delay:.04s}.cards-mobile .rec-swipe:nth-child(2){animation-delay:.09s}.cards-mobile .rec-swipe:nth-child(3){animation-delay:.14s}.cards-mobile .rec-swipe:nth-child(4){animation-delay:.19s}.cards-mobile .rec-swipe:nth-child(5){animation-delay:.24s}.cards-mobile .rec-swipe:nth-child(6){animation-delay:.29s}.fab-wrap.open .fab-item{animation:fabRise .26s var(--ease) both}.fab-wrap.open .fab-item:nth-child(1){animation-delay:0s}.fab-wrap.open .fab-item:nth-child(2){animation-delay:.05s}.fab-wrap.open .fab-item:nth-child(3){animation-delay:.1s}@keyframes fabRise{0%{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:none}}[data-motion=off] *{animation-duration:1ms!important;transition-duration:.05s!important}.rowbtn,.filterbtn,.p-info{transition:transform .12s var(--ease),background .15s,color .15s,border-color .15s}.rowbtn:active,.filterbtn:active,.p-info:active,.chip-opt:active,.tgl:active,.expander:active,.seg button:active,.term:active,.lc-act:active,.notif-item:active{transform:scale(.95)}@media(hover:hover){.kpi,.settings-card{transition:transform .2s var(--spring),box-shadow .2s,border-color .15s}.kpi:hover,.settings-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0f172a1a}.rowbtn:hover,.p-info:hover{transform:scale(1.08)}}@media(prefers-reduced-motion:no-preference){.sheet.show .sheet-field,.sheet.show .set-row,.sheet.show .form-row,.sheet.show .fab-sheet-row,.sheet.show .chips{opacity:0;animation:rise .42s var(--ease) .08s forwards}}[data-motion=off] .sheet .sheet-field,[data-motion=off] .sheet .set-row,[data-motion=off] .sheet .form-row,[data-motion=off] .sheet .fab-sheet-row,[data-motion=off] .sheet .chips{opacity:1!important;animation:none!important}@media(prefers-reduced-motion:no-preference){.grp-body,.job-grp .table-scroll,.job-grp .cards-mobile{animation:rise .3s var(--ease)}}[data-motion=off] .grp-body,[data-motion=off] .job-grp .table-scroll,[data-motion=off] .job-grp .cards-mobile{animation:none!important}.btn:focus-visible,.input:focus-visible,.rowbtn:focus-visible,.filterbtn:focus-visible,.p-info:focus-visible,.chip-opt:focus-visible,.term:focus-visible,.seg button:focus-visible,.tgl:focus-visible,.expander:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}@media(max-width:1180px){.summary{grid-template-columns:repeat(3,1fr)}}@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:980px){.adv-grid{grid-template-columns:1fr}}@media(max-width:860px){.app{grid-template-columns:1fr}.side{position:fixed;left:0;top:0;width:280px;transform:translate(-100%);transition:transform .28s var(--ease)}.side.open{transform:none;box-shadow:0 0 50px #00000059}.overlay{display:block;position:fixed;inset:0;background:#00000073;opacity:0;visibility:hidden;transition:.25s;z-index:38}.overlay.show{opacity:1;visibility:visible}.hamburger{display:grid}.content{padding:var(--s4);padding-bottom:88px}.topbar{padding:0 var(--s4);gap:var(--s3)}.tb-title,.crumb,.user .who{display:none}.notifmenu .udrop{position:fixed;top:64px;left:8px;right:8px;width:auto}.summary{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:var(--s4)}.kpi{padding:11px 10px}.kpi .t{font-size:10.5px;margin-bottom:4px;line-height:1.25}.kpi .t .q{display:none}.kpi .v{font-size:18px}.kpi .ic,.kpi .sub,.pagehead .btn{display:none}.pagehead h1{flex:1 1 auto;font-size:17px}.fab-wrap{display:flex}.toolbar{flex-wrap:nowrap;gap:8px}.toolbar .field.sel,.toolbar .sp,.toolbar .btn{display:none}.toolbar app-company-select,.toolbar .dr-toolbar{display:none}.toolbar .sv-wrap{display:none}.bulkbar{gap:8px;padding:8px 12px}.bulkbar-actions{width:100%;margin-left:0}.bulkbar-actions .btn{flex:1;justify-content:center}.toolbar:has(.filterbtn) app-filter-select,.toolbar:has(.filterbtn) app-company-picker,.toolbar:has(.filterbtn) app-date-range-filter{display:none}.filterbtn{display:inline-flex}.field.search{flex:1;max-width:none}.tab-toolbar:has(.filterbtn) app-filter-select,.tab-toolbar:has(.filterbtn) .dr-toolbar{display:none}.tab-toolbar .field.search{flex:1;max-width:none}.tab-toolbar .btn,.tab-toolbar .sp,.tab-actions.fab-mobile,.table-scroll{display:none}.cards-mobile{display:flex;flex-direction:column;gap:10px}.pager{display:none}.pager-mobile{display:flex;align-items:center;gap:10px;margin-top:6px}h1.title{font-size:19px}.meta .m-dup{display:none}.meta .pill{margin-left:0}.stepper{display:none}.stepper-mobile{display:block;margin:16px 0}.stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:var(--s4)}.stat{padding:12px 14px}.stat .v{font-size:18px}.stat .l{font-size:10px}.barrow{flex-wrap:wrap;gap:10px}.barrow .toolbar{margin-left:0;width:100%}.panel{padding:var(--s5)}.tx{flex-direction:column;gap:6px}.tx .side-meta{width:auto;display:flex;gap:10px;align-items:baseline}.spk-card{grid-template-columns:1fr;gap:var(--s3)}.spk-av{flex-direction:row;justify-content:flex-start}.spk-fields{grid-template-columns:1fr}.upload-wrap{max-width:none}}@media(min-width:861px){.mobile-only{display:none!important}}.btn.sm{padding:4px 9px;font-size:11.5px}.set-sub{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink-2);margin:16px 0 8px;text-transform:uppercase;letter-spacing:.04em}.inline-add{display:flex;gap:8px;align-items:center;margin-top:8px}.inline-add .input{flex:1}.logpre{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto;margin:0}.sk-nav{display:flex;flex-direction:column;gap:8px}.sk{display:block;border-radius:6px;background:linear-gradient(90deg,#ffffff0f 25%,#ffffff29 37%,#ffffff0f 63%);background-size:400% 100%;animation:sk-shimmer 1.4s ease infinite}.sk-label{height:9px;width:38%;margin:8px 0 4px}.sk-item{height:34px;width:100%}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.sk{animation:none}}.skl{display:block;border-radius:6px;background:linear-gradient(90deg,#0f172a0f 25%,#0f172a21 37%,#0f172a0f 63%);background-size:400% 100%;animation:sk-shimmer 1.4s ease infinite}@media(prefers-reduced-motion:reduce){.skl{animation:none}}.ud-head{display:flex;gap:14px;align-items:center;padding:2px 0 16px;border-bottom:1px solid var(--border)}.ud-head+.form-row,.ud-head+.ud-lbl,.ud-head+.ud-sec{margin-top:var(--s4)}.ud-avatar{width:54px;height:54px;border-radius:15px;flex:none;display:grid;place-items:center;font-size:19px;font-weight:700;color:#fff;letter-spacing:.02em;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 62%,#0a3));box-shadow:0 4px 12px -3px color-mix(in srgb,var(--accent) 55%,transparent)}.ud-tile{width:54px;height:54px;border-radius:15px;flex:none;display:grid;place-items:center;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.ud-tile app-icon{width:24px;height:24px;display:inline-flex}.ud-id{min-width:0;flex:1}.ud-name{font-size:17px;font-weight:700;color:var(--ink-strong);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ud-name.code{font-family:JetBrains Mono,ui-monospace,monospace;font-size:15px;color:var(--accent)}.ud-email{font-size:13px;color:var(--ink-2);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ud-meta{display:flex;align-items:center;gap:8px 14px;margin-top:9px;flex-wrap:wrap}.ud-meta-item{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink-2)}.ud-meta-item app-icon{width:14px;height:14px;display:inline-flex;color:var(--ink-3)}.ud-sub{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0 1px}.ud-sub .k{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);flex:none}.ud-sub code{font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:3px 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ud-sec{margin-top:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:13px 14px}.ud-sec-head{display:flex;align-items:center;gap:8px;margin-bottom:11px}.ud-sec-head>app-icon{width:16px;height:16px;color:var(--accent);display:inline-flex;flex:none}.ud-sec-head h4{margin:0;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);flex:1}.ud-count{font-size:11px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:1px 9px;min-width:22px;text-align:center}.ud-kv{display:flex;flex-direction:column}.ud-kv-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--border);font-size:13px}.ud-kv-row:first-child{padding-top:0}.ud-kv-row:last-child{border-bottom:0;padding-bottom:0}.ud-kv-row .k{flex:none;color:var(--ink-3)}.ud-kv-row .v{flex:1;text-align:right;color:var(--ink);font-weight:500;min-width:0;word-break:break-word}.ud-lbl{font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);margin:0 0 7px}.ud-empty{color:var(--ink-3);font-size:12.5px;font-style:italic}.ud-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:11px;padding-top:11px;border-top:1px dashed var(--border)}.ud-hint{font-size:11.5px;color:var(--ink-3);margin-top:10px;line-height:1.5}.pagehead-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pagehead-count{font-size:12px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 10px;line-height:1.5;white-space:nowrap}.input.err{border-color:var(--red)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--red) 18%,transparent)}.fld.err .input,.fld.err ng-select .ng-select-container{border-color:var(--red)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--red) 18%,transparent)}.list-grp{margin-bottom:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.list-grp-head{display:flex;align-items:center;gap:10px;width:100%;flex-wrap:wrap;padding:11px 14px;background:var(--surface-2);border:none;border-left:3px solid var(--accent);cursor:pointer;font:inherit;font-weight:700;font-size:var(--fs-base);color:var(--ink);text-align:left}.list-grp-head .grp-title{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0}.list-grp-head .grp-eyebrow{flex:0 0 auto;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.list-grp-head .ttl{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-grp-head .cnt{background:var(--accent-soft);color:var(--accent-press);font-size:var(--fs-2xs);font-weight:600;border-radius:10px;padding:1px 8px}.list-grp-head .chev{width:16px;height:16px;margin-left:auto;transition:transform .15s;flex:0 0 auto}.list-grp-head.open .chev{transform:rotate(180deg)}@media(max-width:640px){.list-grp-head .grp-title{flex:1 1 100%;order:-1;margin-bottom:2px}.list-grp-head .ttl{white-space:normal;overflow:visible;text-overflow:clip}}.code-chip{font-family:JetBrains Mono,ui-monospace,monospace;font-size:var(--fs-xs);color:var(--accent-press);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);border-radius:6px;padding:2px 8px;display:inline-flex;align-items:center}.list-loading{text-align:center;color:var(--ink-3);padding:24px 0;font-size:var(--fs-sm)}.scope-row,.scope-grid{display:flex;flex-wrap:wrap;gap:8px 16px}.ud-hint.err{color:var(--red)}.usermenu.open .user{background:var(--surface-2)}@media(hover:none){.iconbtn:hover{background:transparent;color:var(--ink-2)}}@media(hover:none){.user:hover{background:transparent}}@media(hover:none){.usermenu.open .user{background:var(--surface-2)}}.input.err:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-soft)}@supports (transition-behavior:allow-discrete){.sheet{transition:transform .5s cubic-bezier(.32,.72,0,1),display .5s allow-discrete}}@supports (transition-behavior:allow-discrete){@starting-style{.sheet.show{transform:translate(100%)}}}@supports (transition-behavior:allow-discrete){@starting-style{.sheet.bottom.show{transform:translateY(100%)}}}.ud-desc{font-size:var(--fs-sm);color:var(--ink-3);margin-top:2px;overflow-wrap:anywhere}.ud-sec-head svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.8;fill:none}.ud-kv-row>.k{flex:none;font-size:var(--fs-sm);color:var(--ink-3)}.ud-kv-row>.v{min-width:0;text-align:right;font-size:var(--fs-sm);font-weight:600;color:var(--ink);overflow-wrap:anywhere}.ud-kv-row>.v.mono{font-family:JetBrains Mono,ui-monospace,monospace;font-weight:500}@media(max-width:860px){.toolbar:has(.filterbtn) app-filter-select,.toolbar:has(.filterbtn) app-company-picker,.toolbar:has(.filterbtn) .select-inline{display:none}}.skl:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(15,23,42,.08),transparent);transform:translate(-100%);animation:sk-slide 1.4s ease infinite}@media(prefers-reduced-motion:reduce){.skl:after{animation:none}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:0}.card table{background:transparent}.card>.table-scroll{margin:0}.kpi .v.a{color:var(--amber)}.kpi .v.r{color:var(--red)}.kpi .v small{font-size:14px;color:var(--ink-3);font-weight:500}.kpi .ic app-icon{width:18px;height:18px}.ic.l{background:var(--blue-soft);color:var(--blue)}.ic.r{background:var(--red-soft);color:var(--red)}.ng-select.ng-select-opened>.ng-select-container{background:#fff;border-color:hsl(0,0%,70%) #ccc hsl(0,0%,85%)}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:rgba(0,0,0,0) rgba(0,0,0,0) #999;border-width:0 5px 5px}.ng-select.ng-select-opened>.ng-select-container .ng-arrow:hover{border-color:rgba(0,0,0,0) rgba(0,0,0,0) #333}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-right-radius:0;border-top-left-radius:0}.ng-select.ng-select-opened.ng-select-right>.ng-select-container{border-top-right-radius:0;border-bottom-right-radius:0}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-left>.ng-select-container{border-top-left-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:#007eff;box-shadow:inset 0 1px 1px #00000013,0 0 0 3px #007eff1a}.ng-select.ng-select-disabled>.ng-select-container{background-color:#f9f9f9}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#333;background-color:#fff;border-radius:4px;border:1px solid #ccc;min-height:36px;align-items:center}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:10px}[dir=rtl] .ng-select .ng-select-container .ng-value-container{padding-right:10px;padding-left:0}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#999}.ng-select.ng-select-single .ng-select-container{height:36px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:5px;left:0;padding-left:10px;padding-right:50px}[dir=rtl] .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{padding-right:10px;padding-left:50px}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#f9f9f9;border:1px solid hsl(0,0%,90%)}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-right:7px;padding-left:0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#333;background-color:#ebf5ff;border-radius:2px;margin-right:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-right:0;margin-left:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:0;padding-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid rgb(183.6,218.88,255)}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-left:1px solid rgb(183.6,218.88,255);border-right:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid rgb(183.6,218.88,255)}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:0;border-right:1px solid rgb(183.6,218.88,255)}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 3px 3px 0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#000}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:5px;padding-bottom:5px;padding-left:3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-right:3px;padding-left:0}.ng-select .ng-clear-wrapper{color:#999}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus{outline:none}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}[dir=rtl] .ng-select .ng-spinner-zone{padding:5px 0 0 5px}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}[dir=rtl] .ng-select .ng-arrow-wrapper{padding-left:5px;padding-right:0}.ng-select .ng-arrow-wrapper:hover .ng-arrow{border-top-color:#666}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#999 rgba(0,0,0,0) rgba(0,0,0,0);border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:1px solid #ccc;box-shadow:0 1px #0000000f;left:0}.ng-dropdown-panel.ng-select-top{bottom:100%;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.ng-dropdown-panel.ng-select-right{left:100%;top:0;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-right .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px}.ng-dropdown-panel.ng-select-bottom{top:100%;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-top-color:#e6e6e6;margin-top:-1px}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.ng-dropdown-panel.ng-select-left{left:-100%;top:0;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-left .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:4px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{color:#0000008a;background-color:#ebf5ff;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#333;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#f5faff;color:#333}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#ccc}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-right:22px;padding-left:0}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{padding-left:5px;padding-right:0}[dir=rtl] .ng-dropdown-panel{direction:rtl;text-align:right}.ng-select{font-family:inherit;font-size:var(--fs-sm)}.ng-select .ng-select-container{min-height:36px;border:1px solid var(--border-2);border-radius:var(--radius-btn);background:var(--surface);color:var(--ink)}.ng-select .ng-select-container:hover{border-color:var(--ink-3);box-shadow:none}.ng-select.ng-select-opened>.ng-select-container,.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:var(--ink-3)}.ng-select .ng-select-container .ng-value-container .ng-input>input{color:var(--ink);font-family:inherit}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-value{color:var(--ink)}.ng-select .ng-clear-wrapper{color:var(--ink-3)}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:var(--ink-3) transparent transparent}.ng-dropdown-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-popover)}.ng-dropdown-panel.ng-select-bottom{margin-top:4px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{background:var(--surface);color:var(--ink);font-size:var(--fs-sm);padding:8px 12px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background:var(--surface-2);color:var(--ink)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{background:var(--accent-soft);color:var(--accent-press);font-weight:600}.ng-select.sm{font-size:var(--fs-xs);width:84px}.ng-select.sm .ng-select-container{min-height:30px}.ng-select.flt{min-width:150px;max-width:200px}.form-pro .ud-head{padding:2px 0 4px;border-bottom:0;align-items:flex-start}.form-pro .ud-name{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.01em}.form-pro .ud-head+.form-row,.form-pro .ud-head+.ud-sub{margin-top:var(--s5)}.form-pro .ud-sub{padding:2px 0}.form-pro .ud-sub+.form-row{margin-top:var(--s5)}.form-pro .form-row{margin-bottom:22px}.form-pro .form-row>label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin-bottom:7px}.form-pro .input{height:44px;padding:0 13px;border-radius:var(--radius-btn);border:1px solid var(--border);background:var(--surface-2);font-size:var(--fs-base);transition:border-color .16s,box-shadow .16s,background .16s}.form-pro textarea.input{height:auto;min-height:92px;padding:11px 13px;line-height:1.5}.form-pro .input::placeholder{color:var(--ink-3)}.form-pro .input:hover{border-color:var(--border-2)}.form-pro .input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.form-pro .seg.sm{padding:3px;border-radius:var(--radius)}.form-pro .seg.sm button{padding:8px 12px;font-size:var(--fs-xs);border-radius:var(--radius-sm)}.form-pro .sheet-foot{margin-top:28px;padding-top:0;gap:10px;border-top:0}.form-pro .sheet-foot .btn{height:44px;border-radius:var(--radius-btn);font-size:var(--fs-base);font-weight:600}.form-pro .sheet-foot .btn.primary{box-shadow:0 6px 16px -8px color-mix(in srgb,var(--accent) 60%,transparent)}.detail-pro .ud-head{padding:2px 0 4px;border-bottom:0;align-items:flex-start}.detail-pro .ud-name{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.01em}.detail-pro .ud-head+.ud-sub,.detail-pro .ud-head+.ud-sec{margin-top:var(--s5)}.detail-pro .ud-sub{padding:2px 0}.detail-pro .ud-sub-start{justify-content:flex-start;gap:var(--s3)}.detail-pro .ud-sub-v{display:inline-flex;align-items:center;gap:8px;min-width:0;color:var(--ink-2);font-size:var(--fs-sm)}.detail-pro .ud-sub-v>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-pro .ud-sec{margin-top:var(--s5)}.detail-pro .ud-sec-head{margin-bottom:8px}.detail-pro .ud-kv{padding:0}.detail-pro .ud-kv-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent)}.detail-pro .ud-kv-row:last-child{border-bottom:0}.detail-pro .ud-kv-row .k{color:var(--ink-3);flex:none}.detail-pro .ud-kv-row .v{text-align:right;color:var(--ink);font-weight:600}.detail-pro .sheet-foot{margin-top:24px;padding-top:0;border-top:0}.detail-pro .sheet-foot .btn{height:44px;border-radius:var(--radius-btn);font-weight:600}.ud-kicker{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);font-weight:700}.chk-row{display:flex;align-items:center;gap:8px;cursor:pointer}.chk-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}@media(min-width:861px){.toolbar.tb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center}.toolbar.tb-grid:has(>:nth-child(5 of:not(.filterbtn,app-filter-sheet)):nth-last-child(1 of:not(.filterbtn,app-filter-sheet))),.toolbar.tb-grid:has(>:nth-child(6 of:not(.filterbtn,app-filter-sheet)):nth-last-child(1 of:not(.filterbtn,app-filter-sheet))),.toolbar.tb-grid:has(>:nth-child(9 of:not(.filterbtn,app-filter-sheet)):nth-last-child(1 of:not(.filterbtn,app-filter-sheet))){grid-template-columns:repeat(3,minmax(0,1fr))}.toolbar.tb-grid>.tb-fill{grid-column:span 2}.toolbar.tb-grid>*{width:100%!important;min-width:0!important;max-width:none!important;margin:0}.toolbar.tb-grid>* .ng-select.flt,.toolbar.tb-grid>* .flt-wide{width:100%;min-width:0;max-width:none}.toolbar .ng-select.ng-select .ng-select-container{min-height:34px!important;height:auto!important}.toolbar .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:50%!important;transform:translateY(-50%);padding-bottom:0!important}.toolbar .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:3px}.toolbar .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-bottom:3px}}.ds-switch{position:relative;flex:none;display:inline-block;width:34px;height:20px;padding:0;border:0;border-radius:999px;background:var(--border-2);cursor:pointer;transition:background .16s}.ds-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px #00000040;transition:transform .16s}.ds-switch.on{background:var(--accent)}.ds-switch.on:after{transform:translate(14px)}.ds-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pager .info{display:flex;align-items:center;gap:6px}.pager .info ng-select{display:inline-block;width:76px;flex:none}.td-clip{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ud-table-wrap{overflow-x:auto;margin:0 -2px}@media(max-width:860px){.ud-table-wrap{overflow-x:visible}.ud-table thead{display:none}.ud-table,.ud-table tbody{display:block}.ud-table tr{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;height:auto;padding:8px 2px;border-bottom:1px solid var(--border)}.ud-table tr:last-child{border-bottom:0}.ud-table td{display:block;height:auto;border:0;padding:0;font-size:var(--fs-xs);color:var(--ink-2);background:none;white-space:nowrap}.ud-table td:first-child{flex:1 1 auto;margin-right:auto;color:var(--ink);font-size:inherit;white-space:normal}.ud-table td:not(:first-child)+td:not(:first-child):before{content:"\b7";margin:0 6px 0 -4px;color:var(--ink-3)}.ud-table td[colspan]{flex:1 1 100%}}tbody tr{transition:none}button,a[href],[role=button],[role=switch],[role=tab]{touch-action:manipulation}.btn:active,.rowbtn:active,.iconbtn:active,.fab:active,.fab-item:active,.lc-act:active,.topnav-link:active,.submenu-link:active{transform:scale(.97)}.iconbtn,.fab,.fab-item,.submenu-link{transition:transform .12s var(--ease)}.dotbadge{animation:ds-pop-in .32s cubic-bezier(.34,1.56,.64,1)}@keyframes ds-pop-in{0%{opacity:0;transform:scale(.5)}}.udrop-item{transition:background-color .15s ease,color .15s ease}.sel-check:checked{animation:ds-check-pop .25s cubic-bezier(.34,1.56,.64,1)}@keyframes ds-check-pop{0%{transform:scale(.8)}}.udrop{transform:scale(.9);transform-origin:top right;transition:opacity .22s cubic-bezier(.215,.61,.355,1),transform .22s cubic-bezier(.215,.61,.355,1),visibility .22s}.skl,.skl-row,.skl-l,.skl-v{position:relative;overflow:hidden;background:none;animation:none}.skl:after,.skl-row:after,.skl-l:after,.skl-v:after{content:"";position:absolute;top:0;bottom:0;left:0;width:400%;background:linear-gradient(90deg,#0f172a0f 25%,#0f172a21 37%,#0f172a0f 63%);transform:translate(-75%);animation:skl-slide 1.4s ease infinite}@keyframes skl-slide{0%{transform:translate(-75%)}to{transform:translate(75%)}}[data-theme=dark] :is(.skl,.skl-row,.skl-l,.skl-v):after{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1f 37%,#ffffff0d 63%)}@media(prefers-reduced-motion:reduce){:is(.skl,.skl-row,.skl-l,.skl-v):after{animation:none;transform:none}}.sheet-field,.form-row{position:relative}.sheet-field:focus-within,.form-row:focus-within{z-index:5}.form-row .ud-hint,.seg+.ud-hint{display:block}@keyframes ds-spin{to{transform:rotate(360deg)}}.spin{display:inline-flex;animation:ds-spin 1s linear infinite}.tgl-btn:not(#_){height:34px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;font:inherit;font-size:var(--fs-xs);line-height:inherit;box-shadow:none;border:1px solid var(--border-2);border-radius:var(--radius-btn);background:var(--surface);color:var(--ink-2)}.tgl-btn:not(#_):hover{border-color:var(--ink-3)}.tgl-btn.on:not(#_){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.tgl-btn app-icon{width:15px;height:15px;display:inline-flex}@media(max-width:860px){.toolbar .tgl-btn:not(#_){display:inline-flex;padding:0 10px}.tgl-btn .tgl-lbl{display:none}.toolbar app-date-range-filter .btn:not(#_){display:inline-flex}}.cell-sub,.sub-line{font-size:var(--fs-xs);color:var(--ink-3);margin-top:2px}.cell-sub b,.sub-line b{color:var(--ink-2);font-weight:600}.cell-line{display:flex;gap:6px;font-size:var(--fs-xs);white-space:nowrap}.flt-wide,.ng-select.flt.flt-wide{min-width:200px;max-width:320px}.matrix-scroll{--c1w: 260px;--c2w: 76px;overflow:auto;max-height:var(--matrix-max-h, none);margin:0 0 var(--s4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);-webkit-overflow-scrolling:touch;scrollbar-width:auto;scrollbar-color:var(--ink-3) var(--surface-2)}.matrix-scroll>table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;margin:0}:where(.matrix-scroll) thead th{position:sticky;top:0;z-index:4;cursor:default;text-align:center;background:var(--surface-2);color:var(--ink-strong)}:where(.matrix-scroll) tbody tr{cursor:default}:where(.matrix-scroll) tbody tr:hover{background:transparent}:where(.matrix-scroll) tbody td{height:auto;padding:8px 12px;white-space:nowrap}.matrix-scroll.sticky-2 tr>:nth-child(1):not([colspan]),.matrix-scroll.sticky-2 tr>:nth-child(2):not([colspan]){position:sticky;z-index:2;background:var(--surface)}.matrix-scroll.sticky-2 tr>:nth-child(1):not([colspan]){left:0;width:var(--c1w);min-width:var(--c1w);max-width:var(--c1w)}.matrix-scroll.sticky-2 tr>:nth-child(2):not([colspan]){left:var(--c1w);width:var(--c2w);min-width:var(--c2w);max-width:var(--c2w);box-shadow:1px 0 0 var(--border)}.matrix-scroll.sticky-2 thead tr>:nth-child(1):not([colspan]),.matrix-scroll.sticky-2 thead tr>:nth-child(2):not([colspan]){z-index:6;background:var(--surface-2)}@media(max-width:860px){.matrix-scroll.sticky-2{--c1w: 170px;--c2w: 56px}}.hint.err{background:var(--red-soft);border-color:color-mix(in srgb,var(--red) 40%,transparent)}.hint.err .hint-ic{color:var(--red)}.ud-hint.warn{color:var(--amber)}.mo-theme{opacity:.55;transition:opacity .15s}.mo-theme:focus-within,.mo-theme:hover{opacity:1}@media(min-width:861px){.toolbar>app-date-range-filter{display:block;flex:0 1 280px;width:280px;min-width:0}}.filterbtn.always{display:inline-flex}.check{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--fs-sm);color:var(--ink);cursor:pointer;min-height:28px}.check input[type=checkbox]{accent-color:var(--accent)}.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:var(--s2) var(--s4);margin-bottom:var(--s3)}.badge.gray .d{animation:none}.badge.live .d{animation:pulse 1.6s infinite}@media(max-width:860px){.ud-table td.act,.ud-table td:has(.rowbtn){width:auto;flex:none;order:1;margin-left:auto;text-align:right;white-space:nowrap}.ud-table td.wrap,.ud-table td.td-clip{flex:1 1 100%;order:2;max-width:100%;white-space:normal;overflow-wrap:anywhere}.ud-table td.td-clip:empty{display:none}.ud-table td.act:before,.ud-table td:has(.rowbtn):before,.ud-table td.wrap:before,.ud-table td.td-clip:before{content:none!important}}.list-grp,.table-scroll,.cards-mobile{scroll-margin-top:calc(var(--topnav-h, 61px) + 8px)}.ctx-path{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ctx-path .sep{color:var(--ink-3);width:14px;height:14px;display:inline-flex}.ctx-pill{display:inline-flex;align-items:center;gap:7px;padding:4px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--ink-strong);font-weight:600;font-size:var(--fs-sm);text-decoration:none;max-width:100%}.ctx-pill .k{font-size:var(--fs-2xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);flex:none}.ctx-pill .v{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctx-pill app-icon{width:14px;height:14px;display:inline-flex;color:var(--accent);flex:none}a.ctx-pill:hover{border-color:var(--accent);color:var(--accent)}.table-scroll.paging,.cards-mobile.paging{opacity:.5;pointer-events:none;cursor:progress;transition:opacity .15s}.list-grp .grp-body{transition:opacity .15s}.list-grp .grp-body.is-loading{opacity:.5;pointer-events:none;cursor:progress}.list-grp .table-scroll{border:0;border-radius:0}.list-grp .cards-mobile{padding:var(--s3)}.list-grp .grp-pager{padding:0 var(--s3) var(--s2)}.list-grp app-table-skeleton .tsk{border:0;border-radius:0}.grp-toggle-row{display:flex;justify-content:flex-end;gap:8px;margin-bottom:var(--s3)}.grp-note{margin:0 0 var(--s2)}.list-grp-head .grp-sum{font-weight:600;color:var(--ink-2)}.unit-flags{display:inline-flex;flex-wrap:wrap;gap:4px;margin-top:4px}@media(min-width:861px){:is(.table-scroll,.ud-table-wrap)>table>thead th{position:sticky;top:0;z-index:3;box-shadow:inset 0 -1px 0 var(--border)}:is(.table-scroll,.ud-table-wrap,.matrix-scroll).ts-fit{overflow:visible}:is(.table-scroll,.ud-table-wrap).ts-fit>table>thead th{top:calc(var(--topnav-h, 61px) - 1px);box-shadow:inset 0 1px 0 var(--border),inset 0 -1px 0 var(--border)}.matrix-scroll.ts-fit>table>thead th{top:var(--topnav-h, 61px)}:is(.table-scroll,.ud-table-wrap):not(.ts-fit){max-height:calc(100vh - var(--topnav-h, 61px) - 16px);overflow:auto}.matrix-scroll:not(.ts-fit){max-height:var(--matrix-max-h, calc(100vh - var(--topnav-h, 61px) - 16px))}app-bottom-sheet :is(.table-scroll,.ud-table-wrap).ts-fit>table>thead th{top:-1px}app-bottom-sheet .matrix-scroll.ts-fit>table>thead th{top:0}app-bottom-sheet :is(.ud-table-wrap,.matrix-scroll):not(.ts-fit){max-height:none}.list-grp{overflow:clip}}.btn app-icon{color:inherit}.sheet,.sheet.bottom{flex-direction:column;overflow:hidden;padding:0}.sheet.show{display:flex}.sheet-top{flex:none;padding:14px 20px 10px;border-bottom:1px solid var(--border);background:var(--surface)}.sheet.bottom .sheet-top{padding-top:8px;border-radius:16px 16px 0 0}.sheet-title{display:flex;align-items:flex-start;gap:12px}.sheet-title-text{flex:1;min-width:0}.sheet-title-text h3{margin-bottom:0}.sheet-title-text .sub{margin:2px 0 0}.sheet-x{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:-4px -6px 0 0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-3);cursor:pointer;transition:.15s}.sheet-x:hover{background:var(--surface-2);color:var(--ink)}@media(max-width:860px){.sheet-x{width:40px;height:40px}}.sheet-x app-icon svg{width:18px;height:18px}.sheet-top>[sheet-head]{margin-top:10px}.sheet-top>[sheet-head]>:last-child{margin-bottom:0}.sheet-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 20px 18px}.sheet-body:before{content:"";display:block;height:16px}.sheet-body .sheet-foot{position:sticky;bottom:-18px;z-index:3;margin-bottom:-18px;padding:12px 0 calc(18px + env(safe-area-inset-bottom));background:var(--surface)}.sheet-top [sheet-head] .ud-head,.sheet-top .ud-head[sheet-head]{border-bottom:0;padding-bottom:0}.sheet-top [sheet-head] .ud-head+.ud-sub{margin-top:8px}.sheet-body>:first-child,.sheet-body>:first-child>:first-child{margin-top:0}.sheet{transition:transform .5s cubic-bezier(.32,.72,0,1),display .5s;transition-behavior:allow-discrete}.sheet:not(.show){transition-duration:.32s}.sheet-scrim{background:#0f172a4d;transition:opacity .5s cubic-bezier(.32,.72,0,1),visibility .5s}.sheet-scrim:not(.show){transition-duration:.32s}app-tabs{display:block;max-width:100%}.ds-tabs{display:inline-flex;max-width:100%;overflow-x:auto;scrollbar-width:none;vertical-align:top}.ds-tabs::-webkit-scrollbar{display:none}.ds-tabs button{flex:none;white-space:nowrap;padding:6px var(--s3);font-size:var(--fs-sm)}.seg{position:relative}.seg>:not(.seg-ind){position:relative;z-index:1}.seg-ind{position:absolute;top:0;left:0;z-index:0;pointer-events:none;opacity:0;background:var(--surface);border-radius:var(--radius-sm);box-shadow:var(--shadow-card)}.seg.has-ind>.seg-ind{opacity:1}.seg.has-ind>button.on{background:transparent;box-shadow:none}.seg.ind-ready>.seg-ind{transition:transform .32s cubic-bezier(.215,.61,.355,1),width .32s cubic-bezier(.215,.61,.355,1),height .32s cubic-bezier(.215,.61,.355,1)}.ds-tab-count{margin-left:2px;min-width:18px;padding:0 5px;border-radius:999px;background:var(--border);color:var(--ink-2);font-size:var(--fs-2xs);font-weight:600;line-height:18px;text-align:center}.ds-tab-tt{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;vertical-align:middle;border-radius:999px;font-size:11px;font-weight:700;line-height:1}.ds-tab-tt.tt-du{width:16px;height:16px;background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green);font-size:10px}.ds-tab-tt.tt-thieu,.ds-tab-tt.tt-loi{min-width:18px;height:18px;padding:0 5px}.ds-tab-tt.tt-thieu{background:var(--amber-soft, #fdf0d5);color:color-mix(in srgb,var(--amber) 70%,#000)}.ds-tab-tt.tt-loi{background:var(--red-soft, #fde4e4);color:color-mix(in srgb,var(--red) 85%,#000)}.ds-tabs button.on .ds-tab-count{background:var(--accent-soft);color:var(--accent)}.sheet-top [sheet-head] .ud-sub{margin-top:8px;padding-top:0}.sheet-top [sheet-head] app-tabs{margin-top:12px}.ds-tabs button app-icon{display:inline-flex;flex:none}.ds-tab-skl{display:inline-block;width:22px;height:12px;border-radius:999px;margin-left:2px}*+:is(.ud-table-wrap,.table-scroll,.matrix-scroll,.ud-kv,.cards-mobile){margin-top:var(--s2, 8px)}.list-grp-head+:is(.ud-table-wrap,.table-scroll,.matrix-scroll,.cards-mobile){margin-top:0}.sheet-top [sheet-head] .ud-sub{justify-content:flex-start;gap:var(--s3)}.nang-cao summary{cursor:pointer;padding:var(--s2) 0;font-weight:700;color:var(--ink-strong)}.nang-cao summary .ud-hint{display:inline;margin:0 0 0 var(--s2);font-weight:400}.nang-cao.card{padding:0 var(--s4)}.nang-cao.card summary{padding:var(--s3) 0}.nang-cao.card[open]{padding-bottom:var(--s4)}.ud-hint.sat-duoi{margin:0 0 var(--s3)}.ud-break{word-break:break-all}:root{--scrim: rgba(15, 23, 42, .4)}.ud-links{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin-top:var(--s3)}@media(max-width:860px){.tb-extra{display:none!important}}.skl-row{display:block;height:44px;margin-bottom:var(--s3);border-radius:6px}.skl-v,.skl-l{display:block;border-radius:6px}.skl-v{height:22px;width:50%}.skl-l{height:12px;width:80%;margin-top:8px}.stat-row,.summary.stat-row{display:grid;grid-template-columns:repeat(var(--n, 4),minmax(0,1fr));gap:var(--s3);margin-bottom:var(--s4)}.stat-row .kpi{padding:var(--s3) var(--s4);min-width:0}.stat-row .kpi .t{margin-bottom:2px;padding-right:34px}.stat-row .kpi .v{font-size:22px}.stat-row .kpi .sub{margin-top:2px}.stat-row .kpi .ic{top:var(--s3);right:var(--s3);width:28px;height:28px}.stat-row .kpi .ic svg,.stat-row .kpi .ic app-icon{width:14px;height:14px}@media(max-width:860px){.stat-row,.summary.stat-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat-row>:last-child:nth-child(odd){grid-column:1/-1}.stat-row .kpi{padding:10px}.stat-row .kpi .t{padding-right:0}}.stat-tile{display:flex;flex-direction:column;gap:4px;min-width:0;padding:var(--s3) var(--s4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.stat-tile .l{font-size:var(--fs-2xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.stat-tile .v{font-size:var(--fs-lg);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.stat-tile .s{font-size:var(--fs-xs);color:var(--ink-3)}.meter{display:block;height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden}.meter>i{display:block;height:100%;border-radius:3px;background:var(--accent)}.meter.warn>i{background:var(--amber)}.meter.bad>i{background:var(--red)}.cell-stack{display:flex;flex-direction:column;gap:2px;min-width:0}.cell-stack>.cell-sub{margin-top:0}.av-img{width:28px;height:28px;flex:none;border-radius:50%;object-fit:cover;background:var(--surface-2)}.sheet-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}.sheet-filters.one{grid-template-columns:1fr}@media(max-width:860px){.sheet-filters{grid-template-columns:1fr}}.msg-cell{max-width:420px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;overflow-wrap:anywhere}.sheet-body .sheet-foot:not(:has(>*)){display:none}tr.ax-child:hover>td{background:var(--row-hover)}table tr[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sheet:focus{outline:none}.who-cell .av-img{width:30px;height:30px}.avatar .av-img{width:100%;height:100%}.ud-add{display:inline-flex;align-items:center;gap:6px;width:auto;margin-top:var(--s2);padding:4px 8px 4px 4px;border:0;border-radius:var(--radius-sm);background:none;color:var(--accent);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer}.ud-add:hover{background:var(--surface-2)}.ud-add:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media(max-width:860px){.ud-table td[data-label]:not(#_):before{content:attr(data-label) ": "!important;margin:0;color:var(--ink-3)}}.tb-chips{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center;margin-bottom:var(--s4)}.sheet-scrim{z-index:calc(43 + var(--sheet-layer, 1) * 2)}.sheet{z-index:calc(44 + var(--sheet-layer, 1) * 2)}.ng-dropdown-panel:not(#_){font-family:Roboto,Segoe UI,-apple-system,system-ui,sans-serif;font-size:var(--fs-sm);line-height:1.55;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-popover);overflow:hidden}.ng-dropdown-panel:not(#_) .ng-dropdown-panel-items,.ng-dropdown-panel:not(#_) .scroll-host{max-height:240px;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.ng-dropdown-panel:not(#_) .ng-dropdown-panel-items .ng-option{min-height:0;padding:8px 12px;font-size:var(--fs-sm);background:var(--surface);color:var(--ink);transition:background-color .15s ease,color .15s ease}.ng-dropdown-panel:not(#_) .ng-dropdown-panel-items .ng-option:hover,.ng-dropdown-panel:not(#_) .ng-dropdown-panel-items .ng-option.ng-option-marked{background:var(--surface-2);color:var(--ink)}.ng-dropdown-panel:not(#_) .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel:not(#_) .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{background:var(--accent-soft);color:var(--accent-press);font-weight:600}.ng-dropdown-panel:not(#_) .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:var(--ink-3)}.ng-dropdown-panel:not(#_) .ng-dropdown-header,.ng-dropdown-panel:not(#_) .ng-dropdown-footer{border-color:var(--border)}.ng-dropdown-panel.ng-select-bottom:not(#_){margin-top:4px}.ng-dropdown-panel.ng-select-top:not(#_){margin-bottom:4px}.ng-dropdown-panel:not(#_){transform-origin:top center;animation:ds-menu-in .22s cubic-bezier(.215,.61,.355,1)}.ng-dropdown-panel.ng-select-top:not(#_){transform-origin:bottom center}@keyframes ds-menu-in{0%{opacity:0;transform:scale(.9)}}[data-motion=off] .ng-dropdown-panel:not(#_){animation:none}body>.ng-dropdown-panel:not(#_){width:max-content!important;min-width:var(--ds-ctl-w, 0)!important;max-width:min(90vw,480px)!important}.ng-select .ng-dropdown-panel:not(#_){min-width:100%;width:max-content;max-width:min(92vw,360px)}@media(max-width:860px){body>.ng-dropdown-panel:not(#_){width:var(--ds-ctl-w, auto)!important;min-width:0!important;max-width:calc(100vw - 32px)!important}body>.ng-dropdown-panel:not(#_) .ng-option{white-space:normal;line-height:1.4}}body:after{content:"";position:fixed;left:0;top:0;z-index:1100;width:100%;height:2px;background:var(--accent);transform-origin:0 50%;transform:scaleX(0);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}body.app-busy:after{opacity:1;animation:app-progress 2.4s cubic-bezier(.1,.7,.2,1) forwards}@keyframes app-progress{0%{transform:scaleX(0)}to{transform:scaleX(.92)}}@media(prefers-reduced-motion:reduce){body.app-busy:after{animation:none;transform:scaleX(1);opacity:.6}}[data-motion=off] body.app-busy:after{animation:none;transform:scaleX(1);opacity:.6;transition-duration:.05s}[data-theme=dark]{color-scheme:dark}::-webkit-scrollbar-track{background:transparent}:root[data-motion=off] .spin{animation-duration:1.6s!important;animation-iteration-count:infinite!important}.toast-container{pointer-events:none;position:fixed;z-index:999999}.toast-container *{box-sizing:border-box}.toast-top-right{top:12px;right:12px}.toast-container .ngx-toastr{position:relative;overflow:hidden;margin:0 0 6px;padding:15px 15px 15px 50px;width:300px;border-radius:3px;background-position:15px center;background-repeat:no-repeat;background-size:24px;box-shadow:0 0 12px #999;color:#fff;background-color:#030303;pointer-events:auto;font-size:var(--fs-sm);line-height:1.45;transition:opacity .3s cubic-bezier(.23,1,.32,1)}.toast-container .ngx-toastr:hover{box-shadow:0 0 12px #000;opacity:1;cursor:pointer}.toast-container .ngx-toastr.ra{opacity:0}td.keo-nam{cursor:grab;color:var(--ink-3);width:28px;-webkit-user-select:none;user-select:none}tr.dang-keo{opacity:.4}tr.keo-toi td{box-shadow:inset 0 2px 0 var(--accent)}.toast-message{word-wrap:break-word}.toast-message .toast-act{margin-left:8px;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.toast-info{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOS4wNDMgOCA4IDExOS4wODMgOCAyNTZjMCAxMzYuOTk3IDExMS4wNDMgMjQ4IDI0OCAyNDhzMjQ4LTExMS4wMDMgMjQ4LTI0OEM1MDQgMTE5LjA4MyAzOTIuOTU3IDggMjU2IDh6bTAgMTEwYzIzLjE5NiAwIDQyIDE4LjgwNCA0MiA0MnMtMTguODA0IDQyLTQyIDQyLTQyLTE4LjgwNC00Mi00MiAxOC44MDQtNDIgNDItNDJ6bTU2IDI1NGMwIDYuNjI3LTUuMzczIDEyLTEyIDEyaC04OGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMjRjMC02LjYyNyA1LjM3My0xMiAxMi0xMmgxMnYtNjRoLTEyYy02LjYyNyAwLTEyLTUuMzczLTEyLTEydi0yNGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDY0YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MTAwaDEyYzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjR6Jy8+PC9zdmc+)}.toast-error{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOSA4IDggMTE5IDggMjU2czExMSAyNDggMjQ4IDI0OCAyNDgtMTExIDI0OC0yNDhTMzkzIDggMjU2IDh6bTEyMS42IDMxMy4xYzQuNyA0LjcgNC43IDEyLjMgMCAxN0wzMzggMzc3LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwyNTYgMzEybC02NS4xIDY1LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwxMzQuNCAzMzhjLTQuNy00LjctNC43LTEyLjMgMC0xN2w2NS42LTY1LTY1LjYtNjUuMWMtNC43LTQuNy00LjctMTIuMyAwLTE3bDM5LjYtMzkuNmM0LjctNC43IDEyLjMtNC43IDE3IDBsNjUgNjUuNyA2NS4xLTY1LjZjNC43LTQuNyAxMi4zLTQuNyAxNyAwbDM5LjYgMzkuNmM0LjcgNC43IDQuNyAxMi4zIDAgMTdMMzEyIDI1Nmw2NS42IDY1LjF6Jy8+PC9zdmc+)}.toast-success{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTE3My44OTggNDM5LjQwNGwtMTY2LjQtMTY2LjRjLTkuOTk3LTkuOTk3LTkuOTk3LTI2LjIwNiAwLTM2LjIwNGwzNi4yMDMtMzYuMjA0YzkuOTk3LTkuOTk4IDI2LjIwNy05Ljk5OCAzNi4yMDQgMEwxOTIgMzEyLjY5IDQzMi4wOTUgNzIuNTk2YzkuOTk3LTkuOTk3IDI2LjIwNy05Ljk5NyAzNi4yMDQgMGwzNi4yMDMgMzYuMjA0YzkuOTk3IDkuOTk3IDkuOTk3IDI2LjIwNiAwIDM2LjIwNGwtMjk0LjQgMjk0LjQwMWMtOS45OTggOS45OTctMjYuMjA3IDkuOTk3LTM2LjIwNC0uMDAxeicvPjwvc3ZnPg==)}.toast-warning{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1NzYgNTEyJyB3aWR0aD0nNTc2JyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTU2OS41MTcgNDQwLjAxM0M1ODcuOTc1IDQ3Mi4wMDcgNTY0LjgwNiA1MTIgNTI3Ljk0IDUxMkg0OC4wNTRjLTM2LjkzNyAwLTU5Ljk5OS00MC4wNTUtNDEuNTc3LTcxLjk4N0wyNDYuNDIzIDIzLjk4NWMxOC40NjctMzIuMDA5IDY0LjcyLTMxLjk1MSA4My4xNTQgMGwyMzkuOTQgNDE2LjAyOHpNMjg4IDM1NGMtMjUuNDA1IDAtNDYgMjAuNTk1LTQ2IDQ2czIwLjU5NSA0NiA0NiA0NiA0Ni0yMC41OTUgNDYtNDYtMjAuNTk1LTQ2LTQ2LTQ2em0tNDMuNjczLTE2NS4zNDZsNy40MTggMTM2Yy4zNDcgNi4zNjQgNS42MDkgMTEuMzQ2IDExLjk4MiAxMS4zNDZoNDguNTQ2YzYuMzczIDAgMTEuNjM1LTQuOTgyIDExLjk4Mi0xMS4zNDZsNy40MTgtMTM2Yy4zNzUtNi44NzQtNS4wOTgtMTIuNjU0LTExLjk4Mi0xMi42NTRoLTYzLjM4M2MtNi44ODQgMC0xMi4zNTYgNS43OC0xMS45ODEgMTIuNjU0eicvPjwvc3ZnPg==)}#toast-container.toast-top-right{top:72px;right:16px}@media(max-width:860px){#toast-container.toast-top-right{top:68px;right:8px}}@media(max-width:480px){.toast-container .ngx-toastr{padding:8px 8px 8px 50px;width:18em}}#toast-container>.toast-success{background-color:var(--green)}#toast-container>.toast-error{background-color:var(--red)}#toast-container>.toast-warning{background-color:var(--amber);color:var(--ink-strong)}#toast-container>.toast-info{background-color:var(--blue)}#toast-container>.ngx-toastr{animation:ds-toast-in .35s cubic-bezier(.23,1,.32,1);transform-origin:top right}@keyframes ds-toast-in{0%{opacity:0;transform:translateY(-8px) scale(.96);filter:blur(4px)}}[data-motion=off] #toast-container>.ngx-toastr{animation:none}.subnav{position:relative;z-index:1;background:var(--surface);border-bottom:1px solid var(--border)}.subnav-inner{display:flex;align-items:stretch;height:39px;padding:0 var(--s7);font-size:var(--fs-sm)}.subnav-spacer{display:flex;align-items:center;flex:none;visibility:hidden;margin-right:calc(var(--s4) * 2 + 13px)}.subnav-picker{position:relative;display:flex;align-items:center}.subnav-pick{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 8px;margin:auto 0 auto -8px;border:0;border-radius:6px;background:none;font:inherit;font-weight:600;color:var(--ink-2);white-space:nowrap;cursor:pointer}.subnav-pick .uchev{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none;color:var(--ink-3);transition:transform .15s var(--ease)}.subnav-pick:hover,.subnav-pick.open{background:var(--surface-2);color:var(--ink)}.subnav-pick.open .uchev{transform:rotate(180deg)}.subnav-pick.static{cursor:default;background:none;color:var(--ink-2)}.subnav-picker:after,.subnav-pick.static:after{content:"";width:1px;height:16px;margin:0 12px 0 10px;background:var(--border-2)}.subnav-pick.static{display:inline-flex;align-items:center}.subnav-pop{position:absolute;left:-8px;top:calc(100% - 2px);z-index:5;min-width:220px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-popover)}.subnav-pop-label{font-size:var(--fs-2xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);padding:6px 10px 4px}.subnav-pop a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;font-weight:500;color:var(--ink-2);text-decoration:none;white-space:nowrap}.subnav-pop a:hover,.subnav-pop a:focus-visible{background:var(--surface-2);color:var(--ink)}.subnav-pop a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.subnav-pop-n{margin-left:auto;font-size:var(--fs-2xs);color:var(--ink-3)}.subnav-tabs{display:flex;align-items:stretch;gap:4px;min-width:0;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none}.subnav-tabs::-webkit-scrollbar{display:none}.subnav-tab{position:relative;display:flex;align-items:center;padding:0 10px;color:var(--ink-3);font-weight:500;text-decoration:none;white-space:nowrap;flex:none}.subnav-tab:hover,.subnav-tab.active{color:var(--ink)}.subnav-tab.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--accent)}.subnav-pick:focus-visible,.subnav-tab:focus-visible,.subnav-pop a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:6px}@media(min-width:861px){:root:has(app-top-nav .subnav){--topnav-h: 101px}}@media(max-width:1599px){.subnav-inner{padding:0 var(--s5)}.subnav-spacer{margin-right:calc(var(--s3) + var(--s2) + 9px)}}@media(max-width:1279px){.subnav-inner{padding:0 var(--s4)}.subnav-spacer{display:none}}@media(max-width:860px){.subnav{display:none}}.sheet-foot{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--s2)}.sheet-foot .btn.danger{margin-right:auto}.form-actions{justify-content:flex-end}.form-actions .btn.danger{margin-right:auto}@media(max-width:767px){.sheet-foot,.form-actions{gap:var(--s2)}.sheet-foot .btn,.form-actions .btn{flex:1 1 0;height:44px}.sheet-foot .btn.primary,.form-actions .btn.primary{flex:2 1 0}.sheet-foot .btn.danger,.form-actions .btn.danger{flex:1 1 100%;order:3;margin-right:0}}@media(max-width:767px){.ds-tabs button,.seg button{min-height:40px}.btn.sm{min-height:36px}.cards-mobile .rowbtn,.lc-top .rowbtn,.sheet .rowbtn{width:40px;height:40px}}.topnav-tim{display:inline-flex;align-items:center;gap:6px;flex:none;height:32px;padding:0 8px 0 10px;border:1px solid var(--border);border-radius:var(--radius-btn);background:var(--surface);color:var(--ink-3);font:inherit;font-size:var(--fs-sm);cursor:pointer}.topnav-tim:hover{color:var(--ink);border-color:var(--border-2)}.topnav-tim:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.topnav-tim kbd{font:inherit;font-size:10.5px;padding:1px 5px;border:1px solid var(--border);border-radius:4px;color:var(--ink-3)}.topnav-tim-chu{display:none}@media(min-width:1500px){.topnav-tim-chu{display:inline}}@media(max-width:1399px){.topnav-tim kbd{display:none}}@media(max-width:1023px){.topnav-tim{width:36px;height:36px;padding:0;justify-content:center}.topnav-tim kbd{display:none}}.drawer-tim{width:100%;border:0;background:none;font:inherit;text-align:left;cursor:pointer;display:flex;align-items:center;gap:8px}@keyframes nhay-vien{0%,50%,to{box-shadow:0 0 0 0 transparent}25%,75%{box-shadow:0 0 0 3px var(--accent)}}.nhay-vien{animation:nhay-vien 1.2s var(--ease) 2;border-radius:var(--radius-sm)}[data-motion=off] .nhay-vien{animation:none;box-shadow:0 0 0 3px var(--accent)}.o-ai{margin-left:6px;padding:1px 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:600;cursor:help;vertical-align:1px}app-root{display:block;min-height:100vh}.frow{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}@media(max-width:720px){.frow{grid-template-columns:1fr}}.khuon-xt__hai>:first-child .frow{grid-template-columns:1fr}.select-inline{height:34px;padding:0 30px 0 10px;border:1px solid var(--border-2);border-radius:var(--radius-btn);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-base);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C757D' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:15px}.select-inline:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}app-shell>.app-h{display:flex;flex-direction:column;min-height:100vh}main.app-main{flex:1;min-width:0;max-width:1920px;margin:0 auto}.drawer-site .ng-select .ng-select-container{min-height:34px;height:34px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-btn);background:#ffffff1f;color:#fff;font-size:var(--fs-sm)}.drawer-site .ng-select .ng-select-container .ng-value{color:#fff}.drawer-site .ng-select .ng-arrow-wrapper .ng-arrow{border-top-color:#ffffffb3}.drawer-site .ng-select.ng-select-focused .ng-select-container{border-color:#ffffff73;box-shadow:none}.loi{color:var(--red);margin:var(--s3) 0;font-size:var(--fs-sm)}.trang-thai{color:var(--ink-2);padding:var(--s6)}.canh-bao-trung{margin:var(--s4) 0;padding:var(--s3) var(--s4);border:1px solid var(--amber);border-left:4px solid var(--amber);border-radius:var(--radius);background:var(--amber-soft);line-height:1.6}.canh-bao-trung p{margin:6px 0 10px;font-size:var(--fs-sm)}.form-actions{display:flex;gap:var(--s2);align-items:center;margin-top:var(--s5)}.den-seo{flex:none;display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;background:var(--border);vertical-align:middle}.den-seo[data-den=tot]{background:var(--green)}.den-seo[data-den=vua]{background:var(--amber)}.den-seo[data-den=kem]{background:var(--red)}.form-actions.dinh-day{position:sticky;bottom:0;z-index:20;flex-wrap:wrap;padding:var(--s3) 0;margin-bottom:calc(-1 * var(--s3));background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--border)}a.btn{text-decoration:none}td .btn+.btn{margin-left:6px}.form-card{margin-bottom:var(--s5);padding:var(--s5)}.sec-title{font-size:var(--fs-lg);font-weight:600;color:var(--ink-strong);margin:0 0 var(--s3)}app-form-section+app-form-section:not(.fs-gon){margin-top:var(--s5)}.khuon-xt>app-form-section+app-form-section,.khuon-xt__hai>app-form-section+app-form-section,.khuon-xt__nho>app-form-section+app-form-section,.frow>app-form-section+app-form-section{margin-top:0}.khuon-xt{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5);margin-top:var(--s4)}.khuon-xt.sat-tren{margin-top:0}.khuon-xt__hai{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s5);align-items:start}.khuon-xt__trai{position:sticky;top:calc(var(--topnav-h, 61px) + var(--s4))}.khuon-xt__cuon{max-height:min(60vh,560px);overflow:auto;border-radius:6px}.khuon-xt__nho{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--s5);align-items:start}.khuon-xt__cot{display:flex;flex-direction:column;gap:var(--s5);min-width:0}.khuon-xt__dinh{position:sticky;top:calc(var(--topnav-h, 61px) + var(--s4))}.xt-the{display:grid;gap:var(--s3);padding:var(--s3);border:1.5px dashed var(--border-2);border-radius:var(--radius-sm);background:var(--surface-2)}.xt-the__nhan{display:grid;gap:2px;font-size:var(--fs-sm);font-weight:600;color:var(--ink-strong)}.xt-the__nhan span{font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.khuon-xt__khung{border-radius:6px;box-shadow:0 0 0 1px var(--border-2);background:var(--surface-2)}.khuon-xt__khung--vua{width:fit-content;max-width:100%;margin-inline:auto;padding:12px}@media(max-width:960px){.khuon-xt__hai{grid-template-columns:minmax(0,1fr)}.khuon-xt__trai{position:static}.khuon-xt__nho{grid-template-columns:minmax(0,1fr)}.khuon-xt__dinh{position:static;order:-1}}.thumb{height:40px;border-radius:var(--radius-sm);display:block}.ghi-chu{color:var(--ink-2);font-size:var(--fs-sm);margin-bottom:var(--s4);line-height:1.6}.frow-them{margin-top:var(--s3)}.td-url{white-space:normal;word-break:break-all}.khoi-rac{margin-bottom:var(--s6)}.form-body{padding:var(--s5) var(--s6) var(--s6)}@media(max-width:720px){.form-body{padding:var(--s4)}}.col-act{width:48px;text-align:right}tbody tr.clickable{cursor:pointer}.toolbar-secondary{display:inline-flex}@media(max-width:860px){.toolbar-secondary{display:none}}select.input{appearance:none;cursor:pointer;padding-right:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C757D' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:15px}.input.mono{font-family:JetBrains Mono,ui-monospace,monospace}.anh-xem{display:block;width:100%;border-radius:var(--radius-sm);border:1px solid var(--border)}.ng-select.ng-select-sel .ng-select-container{min-height:36px;height:36px;border:1px solid var(--border-2);border-radius:var(--radius-btn);background:var(--surface);color:var(--ink);font-size:var(--fs-sm)}.ng-select.ng-select-sel .ng-select-container .ng-value-container,.ng-select.ng-select-sel .ng-select-container .ng-value-container .ng-input{padding-left:12px}.ng-select.ng-select-sel.ng-select-focused .ng-select-container{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.ng-select.ng-select-sel.err .ng-select-container{border-color:var(--red)}.ng-select.ng-select-sel .ng-placeholder{color:var(--ink-3)}.ng-dropdown-panel{z-index:1600}.o-mau{display:inline-block;width:16px;height:16px;margin-right:var(--s2);border:1px solid var(--border-2);border-radius:3px;vertical-align:middle}.fs-nhan{font-size:var(--fs-xs);color:var(--ink-3);white-space:nowrap}.select-site{min-width:220px}.o-nguoi{display:flex;align-items:center;gap:var(--s2)}app-top-nav{view-transition-name:topnav}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s}::view-transition-old(topnav){display:none}::view-transition-new(topnav),::view-transition-group(topnav){animation:none}html.vt-theme app-top-nav{view-transition-name:none}html.vt-theme::view-transition-old(root),html.vt-theme::view-transition-new(root){animation-duration:.4s;animation-timing-function:cubic-bezier(.215,.61,.355,1)}[data-motion=off]::view-transition-group(*),[data-motion=off]::view-transition-old(*),[data-motion=off]::view-transition-new(*){animation:none!important}.iconbtn:active,.fab:active,.topnav-link:active,.submenu-link:active{transform:scale(.97)}.iconbtn,.fab,.submenu-link{transition:transform .12s var(--ease)}.ud-hint.err{animation:ds-err-in .2s cubic-bezier(.23,1,.32,1)}@keyframes ds-err-in{0%{opacity:0;transform:translateY(-4px)}}.empty-state{animation:ds-rise-in .3s cubic-bezier(.23,1,.32,1)}@keyframes ds-rise-in{0%{opacity:0;transform:translateY(6px)}}.scrolltop{position:fixed;right:20px;bottom:20px;z-index:30;width:36px;height:36px;border:0;border-radius:6px;cursor:pointer;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-popover);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s,background-color .2s ease}.scrolltop.on{opacity:1;visibility:visible;transform:none}.scrolltop:hover{background:var(--accent-press)}.scrolltop svg{width:18px;height:18px}@media(max-width:860px){body:has(.fab-wrap) .scrolltop{display:none}}body:has(app-thanh-luu,.form-actions.dinh-day) .scrolltop{bottom:84px}@media(max-width:860px){body:has(app-thanh-luu,.form-actions.dinh-day) .scrolltop{display:none}}@media(max-width:767px){body:has(app-thanh-luu) .fab-wrap{bottom:calc(112px + env(safe-area-inset-bottom))}}html{font-size:13px}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}.lk-nho{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;font-size:12.5px;font-weight:400;color:var(--accent);text-decoration:none;white-space:nowrap;cursor:pointer}.lk-nho:hover{text-decoration:underline}.lk-nho:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.lk-nho:disabled{color:var(--ink-3);cursor:default;text-decoration:none}
