:root{--brand:#1f3bb3;--brand-hover:#182f91;--brand-active:#13267a;--brand-soft:#eef1fb;--brand-soft-2:#dde3f7;--brand-ink:#13267a;--bg:#f3f4f7;--surface:#fff;--surface-2:#f8f9fb;--border:#e1e4ea;--border-strong:#cdd2db;--text:#1c2230;--text-2:#4a5263;--muted:#6b7384;--faint:#9aa1ae;--ok:#16794a;--ok-soft:#e6f4ec;--warn:#9a5b00;--warn-soft:#fdf3e1;--bad:#b3261e;--bad-soft:#fcebea;--info:#1f5fa8;--info-soft:#e8f0fa;--radius:6px;--radius-lg:8px;--shadow-sm:0 1px 2px #1018280f;--shadow-md:0 4px 12px #1018281a;--sidebar-w:248px;--topbar-h:56px;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.45}h1,h2,h3,h4{color:var(--text);margin:0;font-weight:600}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.mobile-only{display:none}.desktop-only{display:contents}@media (width<=1024px){.mobile-only{display:contents}.desktop-only{display:none}}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 14px;font-size:14px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex;text-decoration:none!important}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-hover)}.btn-primary:active:not(:disabled){background:var(--brand-active)}.btn-outline{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn-outline:hover:not(:disabled){background:var(--surface-2);border-color:var(--faint)}.btn-ghost{color:var(--text-2);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.btn-sm{height:30px;padding:0 10px;font-size:13px}.btn-block{width:100%}.btn-lg{height:42px;font-size:15px}.icon-btn{border-radius:var(--radius);width:36px;height:36px;color:var(--text-2);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field-label{color:var(--text-2);justify-content:space-between;align-items:baseline;font-size:13px;font-weight:500;display:flex}.req{color:var(--bad);margin-left:2px}.input-wrap{align-items:center;display:flex;position:relative}.input-wrap>.lead-icon{color:var(--faint);pointer-events:none;position:absolute;left:11px}.input{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:100%;height:42px;color:var(--text);font:inherit;padding:0 12px;font-size:14px;transition:border-color .12s,box-shadow .12s}.input.has-lead{padding-left:38px}.input.has-trail{padding-right:42px}.input::placeholder{color:var(--faint)}.input:hover{border-color:var(--faint)}.input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft-2);outline:none}.input.input[aria-invalid=true]{border-color:var(--bad)}.input.input[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--bad-soft)}.input-wrap>.trail-btn{width:36px;height:36px;position:absolute;right:3px}.field-error{color:var(--bad);font-size:12.5px}.field-hint{color:var(--warn);align-items:center;gap:4px;font-size:12.5px;display:flex}select.input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7384' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}.check{color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13.5px;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--brand)}.alert{border-radius:var(--radius);border:1px solid;align-items:flex-start;gap:10px;margin-bottom:16px;padding:10px 12px;font-size:13.5px;display:flex}.alert svg{flex-shrink:0;margin-top:1px}.alert-error{background:var(--bad-soft);color:#8c1d17;border-color:#f1c4c1}.alert-success{background:var(--ok-soft);color:#0f5c38;border-color:#b9dfc9}.alert-info{background:var(--info-soft);color:#174a85;border-color:#c4d8f0}.alert-warn{background:var(--warn-soft);color:#7a4800;border-color:#efd9ad}.login{background:var(--surface);grid-template-columns:minmax(360px,44%) 1fr;min-height:100%;display:grid}.login-aside{background:var(--brand);color:#fff;flex-direction:column;padding:40px 48px;display:flex}.login-brand{align-items:center;gap:12px;display:flex}.login-logo{width:44px;height:44px;color:var(--brand);letter-spacing:.02em;background:#fff;border-radius:8px;place-items:center;font-size:15px;font-weight:700;display:grid}.login-brand-name{font-size:17px;font-weight:600}.login-brand-sub{opacity:.75;font-size:12.5px}.login-aside-body{max-width:440px;margin-top:auto;margin-bottom:auto;padding:48px 0}.login-aside-body h1{color:#fff;margin-bottom:12px;font-size:28px;font-weight:600;line-height:1.25}.login-aside-body p{opacity:.82;margin:0 0 28px;font-size:15px}.login-modules{grid-template-columns:1fr 1fr;gap:10px 20px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.login-modules li{opacity:.92;align-items:center;gap:8px;display:flex}.login-modules svg{opacity:.75}.login-aside-foot{opacity:.7;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:12.5px;display:flex}.login-main{justify-content:center;align-items:center;padding:40px 24px;display:flex}.login-card{width:100%;max-width:400px}.login-card h2{margin-bottom:4px;font-size:22px}.login-card .lead{color:var(--muted);margin:0 0 24px}.account-list{gap:10px;display:grid}.account-option{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:100%;color:var(--text);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.account-option:hover:not(:disabled),.account-option:focus-visible{border-color:var(--brand);background:var(--brand-soft);box-shadow:var(--shadow-sm);outline:none}.account-option:disabled{cursor:progress;opacity:.75}.account-option-icon{border-radius:var(--radius);background:var(--brand-soft-2);width:38px;height:38px;color:var(--brand-ink);flex:none;place-items:center;display:grid}.account-option-text{flex:1;gap:2px;min-width:0;display:grid}.account-option-text strong{font-size:14.5px;font-weight:600}.account-option-text small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.account-option-go{color:var(--muted);flex:none}.account-option .spinner{color:var(--brand)}.login-row{justify-content:space-between;align-items:center;margin:-4px 0 20px;font-size:13.5px;display:flex}.link-btn{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:0;font-size:13.5px;font-weight:500}.link-btn:hover{text-decoration:underline}.login-help{border-top:1px solid var(--border);color:var(--muted);margin-top:28px;padding-top:18px;font-size:13px}.back-link{color:var(--text-2);align-items:center;gap:4px;margin-bottom:20px;display:inline-flex}.demo-box{border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-2);background:var(--surface-2);margin-top:20px;padding:10px 12px;font-size:12.5px}.demo-box strong{color:var(--text)}.demo-box table{border-collapse:collapse;width:100%;margin-top:6px}.demo-box td{padding:3px 0}.demo-box button{font-size:12px}@media (width<=900px){.login{grid-template-columns:1fr}.login-aside{padding:20px 24px}.login-aside-body,.login-aside-foot{display:none}}.shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100%;display:grid}.shell.collapsed{--sidebar-w:64px}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:30;flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-head{height:var(--topbar-h);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:0 16px;display:flex}.sidebar-logo{background:var(--brand);color:#fff;border-radius:6px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:11.5px;font-weight:700;display:grid}.sidebar-title{white-space:nowrap;font-size:14.5px;font-weight:600;line-height:1.2}.sidebar-title small{color:var(--muted);font-size:11.5px;font-weight:400;display:block}.nav{flex:1;padding:10px 10px 20px;overflow-y:auto}.nav-section{text-transform:uppercase;letter-spacing:.06em;color:var(--faint);white-space:nowrap;padding:14px 10px 6px;font-size:11px;font-weight:600}.nav-item,.nav-group-btn{border-radius:var(--radius);width:100%;height:36px;color:var(--text-2);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:10px;padding:0 10px;font-size:13.5px;font-weight:500;display:flex;text-decoration:none!important}.nav-item svg,.nav-group-btn svg{flex-shrink:0}.nav-item:hover,.nav-group-btn:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:var(--brand-soft);color:var(--brand-ink)}.nav-item.active svg{color:var(--brand)}.nav-group-btn .chev{color:var(--faint);margin-left:auto;transition:transform .15s}.nav-group-btn[aria-expanded=true] .chev{transform:rotate(90deg)}.nav-group-btn.has-active{color:var(--brand-ink)}.nav-sub{border-left:1px solid var(--border);margin-left:18px;padding:2px 0 6px 20px}.nav-sub .nav-item{height:32px;font-size:13px;font-weight:400}.shell.collapsed .nav-label,.shell.collapsed .nav-section,.shell.collapsed .sidebar-title,.shell.collapsed .chev,.shell.collapsed .nav-sub{display:none}.shell.collapsed .nav-item,.shell.collapsed .nav-group-btn,.shell.collapsed .sidebar-head{justify-content:center;padding:0}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:0 20px 0 12px;display:flex;position:sticky;top:0}.search{flex:0 380px;position:relative}.search svg{color:var(--faint);position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search input{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);width:100%;height:36px;font:inherit;color:var(--text);padding:0 60px 0 34px;font-size:13.5px}.search input:focus{background:var(--surface);border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft-2);outline:none}.search kbd{color:var(--muted);border:1px solid var(--border);background:var(--surface);border-radius:4px;padding:1px 5px;font-family:inherit;font-size:11px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.topbar-right{align-items:center;gap:4px;margin-left:auto;display:flex}.topbar-session{color:var(--muted);border-right:1px solid var(--border);white-space:nowrap;margin-right:6px;padding:0 10px;font-size:12.5px}.topbar-session strong{color:var(--text-2);font-weight:500}.badge-dot{position:relative}.badge-dot:after{content:"";background:var(--bad);border:2px solid var(--surface);border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:8px}.user-menu{position:relative}.user-btn{border-radius:var(--radius);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;height:40px;padding:0 8px 0 4px;display:flex}.user-btn:hover{background:var(--surface-2)}.avatar{background:var(--brand-soft-2);width:32px;height:32px;color:var(--brand-ink);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;display:grid}.user-meta{line-height:1.2}.user-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13.5px;font-weight:500;overflow:hidden}.user-role{color:var(--muted);font-size:11.5px}.menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--shadow-md);z-index:50;padding:6px;position:absolute;top:calc(100% + 6px);right:0}.menu-head{border-bottom:1px solid var(--border);color:var(--muted);margin-bottom:6px;padding:8px 10px 10px;font-size:12.5px}.menu-head strong{color:var(--text);font-size:13.5px;font-weight:500;display:block}.menu-item{width:100%;height:34px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:10px;padding:0 10px;font-size:13.5px;display:flex;text-decoration:none!important}.menu-item:hover{background:var(--surface-2);color:var(--text)}.menu-item.danger{color:var(--bad)}.menu-sep{background:var(--border);height:1px;margin:6px 0}.content{width:100%;max-width:1480px;padding:20px 24px 40px}@media (width<=1024px){.shell{grid-template-columns:1fr}.sidebar{width:272px;box-shadow:var(--shadow-md);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.shell.mobile-open .sidebar{transform:none}.shell.collapsed .nav-label,.shell.collapsed .nav-section,.shell.collapsed .sidebar-title,.shell.collapsed .chev{display:initial}.scrim{z-index:25;background:#10182859;position:fixed;inset:0}.topbar-session,.user-meta,.search kbd{display:none}.content{padding:16px}.toolbar .seg{width:100%;overflow-x:auto}.seg button{white-space:nowrap;flex:1 0 auto}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.crumbs{color:var(--muted);margin-bottom:4px;font-size:12.5px}.crumbs span+span:before{content:"/";color:var(--faint);margin:0 6px}.page-title{font-size:20px}.page-sub{color:var(--muted);margin-top:2px;font-size:13.5px}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:10px 12px;display:flex}.toolbar-label{color:var(--muted);font-size:12.5px;font-weight:500}.seg{border:1px solid var(--border-strong);border-radius:var(--radius);display:inline-flex;overflow:hidden}.seg button{border:0;border-right:1px solid var(--border-strong);background:var(--surface);height:30px;color:var(--text-2);cursor:pointer;padding:0 12px;font-size:13px}.seg button:last-child{border-right:0}.seg button:hover{background:var(--surface-2)}.seg button[aria-pressed=true]{background:var(--brand-soft);color:var(--brand-ink);font-weight:500}.toolbar .updated{color:var(--muted);align-items:center;gap:8px;margin-left:auto;font-size:12.5px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 12px;display:flex}.card-title{font-size:14.5px;font-weight:600}.card-sub{color:var(--muted);margin-top:1px;font-size:12.5px}.card-body{padding:16px}.card-body.flush{padding:0}.card-foot{border-top:1px solid var(--border);padding:10px 16px;font-size:13px}.grid{gap:16px;display:grid}.kpis{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:16px}.kpis.four{grid-template-columns:repeat(4,minmax(0,1fr))}.row-2-1{grid-template-columns:minmax(0,2fr) minmax(0,1fr);margin-bottom:16px}.row-1-1{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.row-3-2{grid-template-columns:minmax(0,3fr) minmax(0,2fr);margin-bottom:16px}@media (width<=1280px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1024px){.row-2-1,.row-1-1,.row-3-2{grid-template-columns:1fr}.kpis.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.kpis,.kpis.four{grid-template-columns:1fr 1fr}}.kpi{color:inherit;flex-direction:column;gap:6px;padding:14px 16px;transition:border-color .12s;display:flex;text-decoration:none!important}a.kpi:hover{border-color:var(--brand)}.kpi-label{color:var(--muted);align-items:center;gap:8px;font-size:12.5px;font-weight:500;display:flex}.kpi-icon{background:var(--brand-soft);width:26px;height:26px;color:var(--brand);border-radius:6px;place-items:center;display:grid}.kpi-icon.ok{background:var(--ok-soft);color:var(--ok)}.kpi-icon.warn{background:var(--warn-soft);color:var(--warn)}.kpi-icon.bad{background:var(--bad-soft);color:var(--bad)}.kpi-value{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:24px;font-weight:600;line-height:1.15}.kpi-foot{color:var(--muted);font-size:12.5px}.kpi-foot a{font-weight:500}.table-wrap{overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:13.5px}table.data th{text-align:left;color:var(--muted);background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 16px;font-size:12px;font-weight:500}table.data td{white-space:nowrap;border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 16px}table.data tr:last-child td{border-bottom:0}table.data tbody tr:hover td{background:#fafbfc}table.data .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cell-main{color:var(--text);font-weight:500}.cell-sub{color:var(--muted);font-size:12px}.pill{white-space:nowrap;border-radius:11px;align-items:center;gap:5px;height:22px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.info{background:var(--info-soft);color:var(--info)}.pill.neutral{background:var(--surface-2);color:var(--text-2);border:1px solid var(--border)}.bar{background:var(--surface-2);border:1px solid var(--border);border-radius:3px;min-width:60px;height:6px;overflow:hidden}.bar>span{background:var(--brand);height:100%;display:block}.breakdown{margin:0;padding:0;list-style:none}.breakdown li{border-bottom:1px solid var(--border);grid-template-columns:150px 1fr auto;align-items:center;gap:12px;padding:8px 0;font-size:13.5px;display:grid}.breakdown li:last-child{border-bottom:0}.breakdown .bd-label{color:var(--text-2)}.breakdown .bd-value{font-variant-numeric:tabular-nums;text-align:right;min-width:90px;font-weight:500}.breakdown .bd-value small{color:var(--muted);font-size:11.5px;font-weight:400;display:block}.stat-list{margin:0;padding:0;list-style:none}.stat-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:9px 16px;font-size:13.5px;display:flex}.stat-list li:last-child{border-bottom:0}.stat-list .count{font-variant-numeric:tabular-nums;font-weight:600}.feed{margin:0;padding:0;list-style:none}.feed li{border-bottom:1px solid var(--border);grid-template-columns:28px 1fr;gap:10px;padding:11px 16px;display:grid}.feed li:last-child{border-bottom:0}.feed-icon{background:var(--surface-2);width:28px;height:28px;color:var(--text-2);border:1px solid var(--border);border-radius:50%;place-items:center;display:grid}.feed-text{color:var(--text);font-size:13.5px}.feed-meta{color:var(--muted);margin-top:2px;font-size:12px}.quick{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.quick a{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.quick a:hover{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-ink)}.quick a svg{color:var(--brand);flex-shrink:0}.chart{position:relative}.chart svg{width:100%;display:block;overflow:visible}.chart .grid-line{stroke:var(--border);stroke-width:1px}.chart .axis-text{fill:var(--muted);font-size:11px;font-family:var(--font)}.chart .bar-mark{fill:var(--brand)}.chart .bar-mark.dim{fill:var(--brand-soft-2)}.chart .hit{fill:#0000;cursor:default}.tooltip{pointer-events:none;background:var(--text);color:#fff;border-radius:var(--radius);white-space:nowrap;box-shadow:var(--shadow-md);z-index:5;padding:7px 10px;font-size:12px;line-height:1.5;position:absolute;transform:translate(-50%,calc(-100% - 8px))}.tooltip strong{font-weight:600}.tooltip .t-muted{opacity:.7}.chart-summary{flex-wrap:wrap;gap:28px;margin-bottom:14px;display:flex}.chart-summary div{color:var(--muted);font-size:12.5px}.chart-summary strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:18px;font-weight:600;display:block}.skeleton{background:linear-gradient(90deg, var(--surface-2) 25%, #eceef2 37%, var(--surface-2) 63%);background-size:400% 100%;border-radius:4px;animation:1.3s infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.empty{text-align:center;color:var(--muted);padding:28px 16px;font-size:13.5px}.empty svg{color:var(--faint);margin-bottom:6px}.inline-error{color:var(--bad);align-items:center;gap:8px;padding:16px;font-size:13px;display:flex}.notice{border-radius:var(--radius-lg);background:var(--warn-soft);color:#7a4800;border:1px solid #efd9ad;align-items:center;gap:12px;margin-bottom:16px;padding:10px 14px;font-size:13.5px;display:flex}.notice a{color:#7a4800;white-space:nowrap;margin-left:auto;font-weight:500;text-decoration:underline}.placeholder-page{text-align:center;max-width:560px;margin:40px auto}.placeholder-page .ph-icon{background:var(--brand-soft);width:48px;height:48px;color:var(--brand);border-radius:10px;place-items:center;margin:0 auto 14px;display:grid}.placeholder-page h1{margin-bottom:6px;font-size:18px}.placeholder-page p{color:var(--muted);margin:0 0 20px}.full-center{min-height:100%;color:var(--muted);place-items:center;gap:10px;display:grid}.btn-danger{background:var(--bad);color:#fff}.btn-danger:hover:not(:disabled){background:#97201a}.btn-danger-outline{background:var(--surface);color:var(--bad);border-color:#e7b3af}.btn-danger-outline:hover:not(:disabled){background:var(--bad-soft)}.icon-btn-sm{width:30px;height:30px}.input-sm{height:34px;font-size:13.5px}.input-sm.has-lead{padding-left:32px}.filter .lead-icon{left:10px}.input-lg{height:46px;font-size:15px}.textarea{resize:vertical;height:auto;padding:9px 12px;line-height:1.45}.optional{color:var(--faint);font-weight:400}.field-hint-muted{color:var(--muted);font-size:12.5px}.filter-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:10px 12px;padding:12px 16px;display:flex}.filter{flex-direction:column;flex:0 180px;gap:4px;min-width:150px;display:flex}.filter-search{flex:260px;min-width:220px}.filter-label{color:var(--muted);font-size:12px;font-weight:500}.filter .input-wrap{display:flex}.filter-reset{height:34px;margin-left:auto}.tabs{border-bottom:1px solid var(--border);gap:2px;display:flex;overflow-x:auto}.tab{height:40px;color:var(--text-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:0 16px;font-size:14px;font-weight:500}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--brand-ink);border-bottom-color:var(--brand)}.card-tabbed{border-top:0;border-top-left-radius:0;border-top-right-radius:0}.tab-hint{color:var(--muted);padding:10px 16px 0;font-size:13px}.bulk-bar{background:var(--brand-soft);border-bottom:1px solid var(--brand-soft-2);color:var(--brand-ink);align-items:center;gap:10px;padding:8px 16px;font-size:13.5px;display:flex}.table-shell.is-refreshing tbody{opacity:.55;transition:opacity .15s}table.data .check-cell{width:40px;padding-right:0}table.data .check-cell input{width:16px;height:16px;accent-color:var(--brand);cursor:pointer}table.data .sr-cell{width:44px;color:var(--muted)}table.data tr.clickable{cursor:pointer}table.data tbody tr.selected td{background:var(--brand-soft)}.table-state{border-top:1px solid var(--border);padding:8px 16px}.cell-wrap{-webkit-line-clamp:2;white-space:normal;max-width:320px;color:var(--text-2);-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.row-actions{align-items:center;gap:6px;display:inline-flex}.yearsem{color:var(--text-2);align-items:center;gap:4px;display:inline-flex}.yearsem strong{color:var(--text);font-weight:500}.pager{border-top:1px solid var(--border);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:16px;padding:10px 16px;font-size:13px;display:flex}.pager strong{color:var(--text);font-weight:600}.pager-size{align-items:center;gap:8px;display:flex}.pager-size .input{width:72px;height:30px}.pager-btns{align-items:center;gap:8px;margin-left:auto;display:flex}.pager-page{text-align:center;min-width:90px}.list-foot-note{color:var(--muted);margin:10px 2px 0;font-size:12.5px}.menu.floating{z-index:60;min-width:210px;position:fixed;right:auto}.search-hero{flex-direction:column;gap:8px;padding:18px;display:flex}.search-hero-row{gap:10px;display:flex}.modal-backdrop{z-index:70;background:#10182866;justify-content:center;align-items:flex-start;padding:8vh 16px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-backdrop.drawer{justify-content:flex-end;align-items:stretch;padding:0;overflow:hidden}.modal-panel{background:var(--surface);border-radius:var(--radius-lg);outline:none;flex-direction:column;width:560px;max-width:100%;display:flex;box-shadow:0 12px 40px #10182838}.modal-panel.drawer{border-radius:0;width:560px;height:100%;animation:.18s ease-out slide-in}@keyframes slide-in{0%{opacity:.6;transform:translate(24px)}}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}.modal-title{font-size:16px}.modal-body{padding:16px 18px;overflow-y:auto}.modal-panel.drawer .modal-body{flex:1}.modal-foot{border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.modal-panel.drawer .modal-foot{border-radius:0}.modal-text{color:var(--text-2);margin:0 0 14px}.detail-hero{border-bottom:1px solid var(--border);align-items:center;gap:14px;margin-bottom:4px;padding-bottom:14px;display:flex}.detail-photo{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:64px;height:64px;font-size:18px}.detail-remark{color:var(--text-2);margin-top:6px;font-size:13px;font-style:italic}.detail-section{border-bottom:1px solid var(--border);padding:14px 0 4px}.detail-section:last-child{border-bottom:0}.detail-section h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:600}.detail-section dl,.summary-box dl{grid-template-columns:150px 1fr;gap:7px 12px;margin:0 0 10px;font-size:13.5px;display:grid}.detail-section dt,.summary-box dt{color:var(--muted)}.detail-section dd,.summary-box dd{color:var(--text);overflow-wrap:anywhere;margin:0}.doc-list{grid-column:1/-1;margin:0;padding:0;list-style:none}.doc-list li{align-items:center;gap:8px;padding:6px 0;font-size:13.5px;display:flex}.doc-list a{align-items:center;gap:4px;margin-left:auto;font-size:13px;display:inline-flex}.kyc-video{border-radius:var(--radius);background:#000;width:100%;max-height:60vh}.summary-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);margin-bottom:16px;padding:12px 14px 2px}.summary-box>div:first-child{margin-bottom:10px}.summary-box dl{grid-template-columns:80px 1fr}.form-grid{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.fee-total{border-radius:var(--radius);background:var(--brand-soft);color:var(--brand-ink);justify-content:space-between;align-items:baseline;padding:12px 14px;font-size:15px;font-weight:600;display:flex}.fee-total small{margin-left:6px;font-size:12px;font-weight:400}.toasts{z-index:90;flex-direction:column;gap:8px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:20px;right:20px}.toast{border-radius:var(--radius-lg);background:var(--text);color:#fff;box-shadow:var(--shadow-md);align-items:center;gap:10px;padding:10px 6px 10px 14px;font-size:13.5px;animation:.18s ease-out slide-in;display:flex}.toast.success svg:first-child{color:#7fd3a6}.toast.error svg:first-child{color:#f3a29c}.toast .icon-btn{color:#c9ced8;width:28px;height:28px;margin-left:auto}.toast .icon-btn:hover{color:#fff;background:#ffffff1a}@media (width<=640px){.modal-panel.drawer{width:100%}.detail-section dl{grid-template-columns:120px 1fr}.form-grid{grid-template-columns:1fr}.filter{flex:140px}.pager-btns{margin-left:0}}
