:root{--primary:#6d5efc;--primary-600:#5a4af0;--primary-700:#4a3bd6;--primary-soft:#eef0ff;--bg:#f5f6fb;--app-backdrop:radial-gradient(circle at 78% 10%, #8c76ff80, transparent 48%), radial-gradient(circle at 8% 92%, #6d5efc57, transparent 54%), linear-gradient(158deg, #e0d9ff 0%, #c6b9fb 100%);--card:#fff;--surface-2:#f7f8fc;--rail:#11132a;--rail-2:#171a36;--rail-line:#ffffff12;--rail-text:#aab0d6;--rail-text-dim:#6e7499;--ink:#161a2e;--ink-2:#4b5168;--ink-3:#8990a8;--line:#eceef4;--line-2:#e2e5ee;--green:#16a34a;--green-bg:#e7f7ec;--amber:#d97706;--amber-bg:#fdf1de;--red:#dc2626;--red-bg:#fdeaea;--blue:#2563eb;--blue-bg:#e8effd;--violet:#7c3aed;--violet-bg:#f1ebfe;--slate:#64748b;--slate-bg:#eef1f6;--cyan:#0891b2;--cyan-bg:#e3f6fa;--radius:14px;--radius-sm:10px;--radius-xs:8px;--shadow:0 1px 2px #1018280a, 0 4px 16px #1018280f;--shadow-sm:0 1px 2px #1018280f;--shadow-lg:0 10px 30px #1018281f;--shadow-modal:0 24px 70px #1216263d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0}body,button,input,select,textarea{font-family:Nunito,Sarabun,system-ui,-apple-system,Segoe UI,sans-serif}.tbl-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;width:100%;min-width:0;max-width:100%;overflow-x:auto}.lang-switcher{background:var(--surface-2);border:1px solid var(--line-2);border-radius:var(--radius-xs);align-items:center;gap:2px;padding:3px;display:inline-flex}.lang-option{appearance:none;color:var(--ink-3);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 10px;font-size:13px;font-weight:600;line-height:1;transition:background .15s,color .15s}.lang-option:hover{color:var(--ink-2)}.lang-option.is-active{background:var(--card);color:var(--primary);box-shadow:0 1px 2px #161a2e14}.login-lang-switcher{z-index:2;position:absolute;top:18px;right:18px}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body,#root{width:100%;min-height:100vh;margin:0;padding:0}html{scrollbar-gutter:stable}body{max-width:100%;overflow-x:clip}:is(html:has(.prod-modal-backdrop,.kol-edit-backdrop),body:has(.prod-modal-backdrop,.kol-edit-backdrop)){overscroll-behavior:none;overflow:hidden}.prod-modal-backdrop,.kol-edit-backdrop{overscroll-behavior:contain;position:fixed;inset:0;overflow:hidden;-webkit-backdrop-filter:blur(14px)saturate(130%)!important;backdrop-filter:blur(14px)saturate(130%)!important;background:radial-gradient(circle at 50% 16%,#8675ff2e,#0000 34%),#1816376b!important}img,video{max-width:100%;height:auto}#root{flex-direction:column;display:flex}*{box-sizing:border-box}.page-loader{width:100%;min-height:60vh;color:var(--ink-3);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.page-loader.is-full{background:var(--app-backdrop);background-attachment:fixed,fixed,fixed;min-height:100vh}.page-loader__icons{width:44px;height:44px;color:var(--primary);flex:0 0 44px;place-items:center;display:grid}.page-loader__icon{will-change:transform, opacity;animation:.7s both page-loader-icon-in}.page-loader__label{color:var(--ink-2);letter-spacing:.01em;font-size:13px;font-weight:500}.shell-body{position:relative}.shell-route-loader{z-index:20;background:var(--app-backdrop);background-attachment:fixed,fixed,fixed;place-items:center;animation:.12s ease-out both page-loader-enter;display:grid;position:fixed;inset:64px 0 0 248px}.shell-route-loader .page-loader{min-height:0}@keyframes page-loader-icon-in{0%{opacity:0;transform:scale(.7)}20%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}@keyframes page-loader-enter{0%{opacity:0}to{opacity:1}}@media (width<=1024px){.shell-route-loader{left:0}}@media (prefers-reduced-motion:reduce){.page-loader__icon{animation-name:page-loader-icon-fade}.shell-route-loader{animation:none}}@keyframes page-loader-icon-fade{0%{opacity:0}20%,80%{opacity:1}to{opacity:0}}.shell{--rail-w:248px;min-height:100vh;display:flex}.shell-main{min-width:0;margin-left:var(--rail-w);background:var(--app-backdrop);background-attachment:fixed,fixed,fixed;flex-direction:column;flex:1;display:flex;position:relative}.shell-main:before{content:"";pointer-events:none;z-index:0;opacity:.22;background-image:radial-gradient(circle,#ffffff8c 1px,#0000 1.4px),radial-gradient(circle,#6f5fc661 1.1px,#0000 1.45px);background-position:0 1.4px,0 0;background-size:24px 24px,24px 24px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(to bottom right,#0000 15%,#000000e6 48%,#0000 82%);mask-image:linear-gradient(to bottom right,#0000 15%,#000000e6 48%,#0000 82%)}.shell-main>*{position:relative}.shell-body{flex:1 0 auto;min-width:0;max-width:100%;padding:24px 28px 48px}.shell-body>*,.shell-body .card{min-width:0;max-width:100%}.shell-body{--card:#fff;--surface-2:#fff;--line:#1018281a;--line-2:#10182824;--shadow:0 4px 24px #3c3e501a, 0 1px 3px #3c3e500f;--shadow-sm:0 1px 8px #3c3e5014;--shadow-lg:0 10px 40px #3c3e5024}.shell-body .card{-webkit-backdrop-filter:none;background:#fff;border-color:#1018281a;box-shadow:0 16px 44px #3c3e501f,0 5px 14px #3c3e5012,0 2px 6px #3c3e500d,inset 0 1px #fffffff2,inset 0 -1px #9698a81a}.shell-main .campaign-search,.shell-main .campaign-ms-trigger,.shell-main .campaign-filter-control,.shell-main .seg{-webkit-backdrop-filter:blur(14px)saturate(160%);background:#ffffff61;border-color:#b4a0ff47}.greet-name{color:#6d5efc;font-size:1.12em;font-weight:800}.status-card{flex-direction:column;display:flex}.area-line-draw{stroke-dasharray:1;animation:1.2s ease-out forwards areaDraw}@keyframes areaDraw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.donut-wrap{animation:.55s ease-out both donutIn}@keyframes donutIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.rail{z-index:40;width:var(--rail-w,248px);color:#eef0ff;will-change:transform;background:radial-gradient(circle at 18% 0,#a497ff52,#0000 38%),linear-gradient(#3b356f 0%,#292f61 100%);flex-direction:column;flex-shrink:0;height:100dvh;display:flex;position:fixed;top:0;left:0}.rail-brand{align-items:center;gap:11px;padding:18px 20px 15px;display:flex}.rail-brand-mark{color:#fff;flex:none;width:auto;height:32px;display:block}.rail-brand-text{line-height:1.1}.rail-brand-text b{color:#fff;letter-spacing:.2px;font-size:15px;font-weight:700}.rail-brand-text span{color:#d6d9ff;margin-top:2px;font-size:11px;display:block}.rail-nav{scrollbar-width:thin;scrollbar-color:#ffffff38 transparent;flex:1;min-height:0;padding:6px 12px 12px;overflow-y:auto}.rail-nav::-webkit-scrollbar{width:6px}.rail-nav::-webkit-scrollbar-track{background:0 0}.rail-nav::-webkit-scrollbar-thumb{background:#ffffff38;border-radius:3px}.rail-group-label{letter-spacing:.8px;text-transform:uppercase;color:#d6d9ff;padding:13px 12px 6px;font-size:10.5px;font-weight:700}.rail-nav>div:first-child .rail-group-label{padding-top:4px}.rail-item{color:#eef0ff;cursor:pointer;border-radius:10px;align-items:center;gap:11px;padding:9px 12px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .14s,color .14s;display:flex;position:relative}.rail-item+.rail-item{margin-top:3px}.rail-item svg{opacity:.85;flex-shrink:0;width:18px;height:18px}.rail-item:hover{color:#fff;background:#ffffff17}.rail-item.active{color:#fff;background:linear-gradient(90deg,#9789ff57,#9789ff14)}.rail-item.active svg{opacity:1;color:#ddd8ff}.rail-item.active:before{content:"";background:#8f80ff;border-radius:0 3px 3px 0;width:3px;height:20px;position:absolute;top:50%;left:-12px;transform:translateY(-50%)}.rail-badge{color:#fff;background:#8f80ff;border-radius:20px;margin-left:auto;padding:1px 7px;font-size:10.5px;font-weight:700}.rail-badge.amber{background:var(--amber)}.rail-item.disabled{opacity:.38;cursor:not-allowed;pointer-events:none;-webkit-user-select:none;user-select:none}.rail-lock{opacity:.8;width:14px;height:14px;margin-left:auto}.rail-soon{letter-spacing:.04em;text-transform:uppercase;color:#d3d8ff;border:1px solid #ffffff2e;border-radius:20px;margin-left:auto;padding:1px 6px;font-size:9.5px;font-weight:700}.rail-close{color:#d3d8ff;cursor:pointer;background:#ffffff17;border:none;border-radius:8px;place-items:center;width:32px;height:32px;margin-left:auto;display:none}.rail-close svg{width:18px;height:18px}.rail-overlay{display:none}.rail-foot{border-top:1px solid #ffffff1f;align-items:center;gap:10px;padding:12px;display:flex}.rail-foot .av{border-radius:10px;width:34px;height:34px;font-size:12px}.rail-foot-text{flex:1;min-width:0;line-height:1.2}.rail-foot-text b{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.rail-foot-text span{color:#d6d9ff;font-size:11px}.rail-logout{color:#d3d8ff;cursor:pointer;background:#ffffff17;border:none;border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;transition:background .14s,color .14s;display:grid}.rail-logout:hover{color:#fff;background:#ffffff1f}.rail-logout svg{width:17px;height:17px}.topbar{-webkit-backdrop-filter:blur(14px)saturate(140%);z-index:20;background:#ffffff47;flex-shrink:0;align-items:center;gap:16px;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.search{background:var(--bg);border:1px solid var(--line-2);max-width:440px;color:var(--ink-3);border-radius:999px;flex:1;align-items:center;gap:9px;padding:9px 15px;display:flex}.search input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13.5px}.search svg{width:17px;height:17px}.gsearch{flex:1;min-width:0;max-width:440px;position:relative}.gsearch .search{width:100%;max-width:none}.gsearch-panel{z-index:30;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:70vh;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden auto}.gsearch-group{border-bottom:1px solid var(--line);padding:5px 0}.gsearch-group:last-child{border-bottom:0}.gsearch-group-head{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);padding:7px 14px 4px;font-size:11px;font-weight:700}.gsearch-item{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:0;align-items:center;gap:10px;padding:8px 14px;display:flex}.gsearch-item:hover{background:var(--surface-2)}.gsearch-item-ico{border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.gsearch-item-ico svg{width:15px;height:15px}.gsearch-item-ico.kol{background:var(--violet-bg);color:var(--violet)}.gsearch-item-ico.camp{background:var(--primary-soft);color:var(--primary-700)}.gsearch-item-ico.brand{color:#0f766e;background:#14b8a61f}.gsearch-item-ico.product{color:#b45309;background:#f59e0b24}.gsearch-item-main{flex-direction:column;min-width:0;display:flex}.gsearch-item-title{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.gsearch-item-sub{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.gsearch-empty{color:var(--ink-3);text-align:center;padding:18px 14px;font-size:13px}@media (width<=640px){.gsearch{max-width:none}}.icon-btn.menu-btn{display:none}.top-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.icon-btn{border:1px solid var(--line-2);cursor:pointer;width:38px;height:38px;color:var(--ink-2);background:#fff;border-radius:10px;place-items:center;transition:background .14s,border-color .14s;display:grid;position:relative}.icon-btn:hover{background:var(--bg);border-color:var(--line-2)}.icon-btn svg{width:18px;height:18px}.icon-btn .dot{background:var(--red);border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:9px}.notif-wrap{position:relative}.notif-badge{color:#fff;text-align:center;font-variant-numeric:tabular-nums;pointer-events:none;background:linear-gradient(#ff5a52 0%,#ff2d55 100%);border:0;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;font-weight:800;line-height:18px;position:absolute;top:-6px;right:-6px;box-shadow:0 4px 10px #ff2d5557,0 1px 2px #790d2038,inset 0 1px #ffffff57}.notif-panel{z-index:50;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border:1px solid #1018281a;border-radius:18px;width:360px;max-width:92vw;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden;box-shadow:0 22px 70px #10182847,0 2px 10px #10182824,inset 0 1px #ffffffe0,inset 0 -1px #6d5efc14}.notif-head{background:#fff;border-bottom:1px solid #10182814;justify-content:space-between;align-items:center;padding:13px 15px;display:flex}.notif-head b{font-size:14px}.notif-head-actions{align-items:center;gap:10px;display:flex}.notif-markall{cursor:pointer;color:var(--primary-700);background:0 0;border:0;padding:0;font-family:inherit;font-size:12px;font-weight:700}.notif-markall:hover{text-decoration:underline}.notif-markall:disabled{opacity:.55;cursor:default;text-decoration:none}.notif-deleteall{cursor:pointer;color:var(--red);background:0 0;border:0;padding:0;font-family:inherit;font-size:12px;font-weight:700}.notif-deleteall:hover:not(:disabled){text-decoration:underline}.notif-deleteall:disabled{opacity:.55;cursor:default}.notif-list{max-height:400px;overflow-y:auto}.notif-item{text-align:left;cursor:pointer;width:100%;font:inherit;background:#ffffff5c;border:0;border-bottom:1px solid #1018280f;align-items:flex-start;gap:11px;padding:11px 15px;transition:background .12s;display:flex;position:relative}.notif-item:last-child{border-bottom:0}.notif-item:hover{background:#ffffffb8}.notif-item.unread{box-shadow:inset 3px 0 0 var(--primary);background:#6d5efc24}.notif-item.unread:hover{background:#6d5efc33}.notif-ico{border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.notif-ico svg{width:16px;height:16px}.notif-ico-green{background:var(--green-bg);color:var(--green)}.notif-ico-amber{background:var(--amber-bg);color:var(--amber)}.notif-ico-red{background:var(--red-bg);color:var(--red)}.notif-ico-blue{background:var(--blue-bg);color:var(--blue)}.notif-ico-violet{background:var(--violet-bg);color:var(--violet)}.notif-ico-slate{background:var(--slate-bg);color:var(--slate)}.notif-item-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notif-title{color:var(--ink);font-size:13px;font-weight:600}.notif-body{color:var(--ink-2);font-size:12px;line-height:1.4}.notif-time{color:var(--ink-3);margin-top:1px;font-size:11px}.notif-unread-dot{background:var(--primary);border-radius:50%;width:8px;height:8px;position:absolute;top:15px;right:13px;box-shadow:0 0 0 2px #fff9}.notif-empty{color:var(--ink-3);text-align:center;padding:24px 15px;font-size:13px}@media (width<=480px){.notif-panel{width:auto;max-width:none;position:fixed;top:62px;left:12px;right:12px}}.profile-menu{position:relative}.profile-trigger{cursor:pointer;background:0 0;border:0;border-radius:11px;padding:0;display:block}.profile-trigger:focus-visible{outline-offset:2px;outline:3px solid #6d5efc33}.profile-avatar{color:#6d28d9;background:linear-gradient(135deg,#c4b5fd,#e9d5ff);width:38px;height:38px;box-shadow:0 4px 12px #a78bfa4d}.profile-avatar-lg{width:42px;height:42px}.profile-dropdown{z-index:50;border:1px solid var(--line);width:260px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border-radius:14px;padding:8px;position:absolute;top:calc(100% + 10px);right:0}.profile-dropdown-head{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:9px 9px 12px;display:flex}.profile-dropdown-head div{min-width:0}.profile-dropdown-head b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.profile-dropdown-head span:not(.av){color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.profile-role{color:var(--ink-2);align-items:center;gap:8px;margin:7px 0;padding:8px 9px;font-size:12px;display:flex}.profile-role svg,.profile-logout svg{width:16px;height:16px}.profile-logout{width:100%;color:var(--red);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;padding:9px;font-family:inherit;font-size:12px;font-weight:700;display:flex}.profile-logout:hover{background:var(--red-bg)}.profile-logout:disabled{cursor:wait;opacity:.6}.profile-link{width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;padding:9px;font-family:inherit;font-size:12px;font-weight:700;text-decoration:none;display:flex}.profile-link svg{width:16px;height:16px}.profile-link:hover{background:var(--line)}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.page-head h1{letter-spacing:-.3px;margin:0;font-size:23px;font-weight:800}.page-head p{color:var(--ink-3);margin:4px 0 0;font-size:13.5px}.page-head-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.seg{border:1px solid var(--line-2);background:#fff;border-radius:10px;gap:2px;padding:3px;display:flex}.seg button{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:6px 13px;font-family:inherit;font-size:12.5px;font-weight:600}.seg button.on{background:var(--primary-soft);color:var(--primary-700)}.dash-range-seg{margin-left:4px}.dash-range-seg button{padding:5px 11px}.sort-group{align-items:center;gap:8px;display:flex}.sort-group>svg{width:16px;height:16px;color:var(--ink-3);flex-shrink:0}.dash-date-sort{border:1px solid var(--line-2);background:#fff;border-radius:9px;height:34px;padding:0 10px}.dash-date-sort select{min-width:106px;color:var(--ink);font:inherit;background:0 0;border:0;outline:none;font-size:12.5px;font-weight:700}.user-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 18px;display:flex}.user-toolbar .search{flex:1;min-width:200px}.tbl-foot{border-top:1px solid var(--line);color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;font-size:12px;display:flex}.tbl-pager{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pager-btn{border:1px solid var(--line-2);color:var(--ink-2);cursor:pointer;background:#fff;border-radius:8px;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:600}.pager-btn:disabled{opacity:.45;cursor:default}.pager-btn:hover:not(:disabled){background:var(--bg)}.btn{cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:7px;padding:9px 15px;font-family:inherit;font-size:13px;font-weight:600;transition:background .14s,box-shadow .14s;display:inline-flex}.btn svg{width:16px;height:16px}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 14px #6d5efc66}.btn-primary:hover{background:var(--primary-600)}.btn-ghost{border-color:var(--line-2);color:var(--ink-2);background:#fff}.btn-ghost:hover{background:var(--bg)}.btn-block{justify-content:center;width:100%;margin-top:4px}.row-action{border:1px solid var(--line-2);cursor:pointer;background:#fff;border-radius:8px;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:background .14s}.row-action:disabled{opacity:.5;cursor:default}.row-action.activate{color:var(--green);border-color:#16a34a4d}.row-action.activate:hover:not(:disabled){background:var(--green-bg)}.row-action.disable{color:var(--red);border-color:#dc26264d}.row-action.disable:hover:not(:disabled){background:var(--red-bg)}.row-action.reset{color:var(--primary-700,#5b21b6);border-color:#6d5efc52}.row-action.reset:hover:not(:disabled){background:var(--primary-soft,#c8beff66)}.row-action.delete{color:var(--red);border-color:#dc26264d}.row-action.delete:hover:not(:disabled){background:var(--red);border-color:var(--red);color:#fff}.row-action.delete.blocked{color:var(--ink-3);border-color:var(--line-2);border-style:dashed}.row-action.delete.blocked:hover:not(:disabled){background:var(--bg);border-color:var(--line-2);color:var(--ink-2)}.delete-warn{color:#92400e;background:#fffaeb;border:1px solid #fde68a;border-radius:10px;align-items:flex-start;gap:8px;padding:9px 11px;font-size:12.5px;font-weight:600;line-height:1.45;display:flex}.delete-warn svg{flex:none;width:16px;height:16px;margin-top:1px}.delete-warn.blocked{color:#991b1b;background:var(--red-bg,#fef2f2);border-color:#dc26264d}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.reset-temp{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.reset-temp code{letter-spacing:.5px;min-width:0;color:var(--ink);border:1px dashed var(--line-2);background:var(--surface-2,#f7f7fb);word-break:break-all;-webkit-user-select:all;user-select:all;border-radius:8px;flex:auto;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;font-weight:700}.reset-temp-copy{white-space:nowrap;flex:none}.grid{gap:18px;display:grid}.kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:18px}.cols-2-1{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.card-body svg{max-width:100%}@media (width<=1320px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1180px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-2-1{grid-template-columns:minmax(0,1fr)}}@media (width<=1024px){.rail{z-index:70;width:270px;transition:transform .26s;transform:translate(-100%)}.shell-main{margin-left:0}.rail.open{transform:translate(0);box-shadow:0 0 50px #00000080}.rail-close{display:grid}.rail-overlay{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080a168c;display:block;position:fixed;inset:0}.icon-btn.menu-btn{display:grid}.topbar{gap:10px;padding:0 14px}.search{min-width:0;max-width:none}.search input{min-width:0}.shell-body{padding:16px 14px 40px}.tbl{min-width:680px}.feed{min-width:340px}.kol-list{min-width:300px}.page-head h1{font-size:20px}.page-head-actions{width:100%}.page-head-actions .btn-ghost{display:none}}@media (width<=560px){.kpi-grid{grid-template-columns:minmax(0,1fr)}.seg{flex:1}.seg button{flex:1;padding:6px 8px}.page-head-actions .btn-primary{flex:1;justify-content:center}.user-toolbar{gap:10px;padding:12px}.user-toolbar .search,.kol-expertise-filter,.kol-platform-filter{flex:100%;width:100%;min-width:0}.tbl th,.tbl td{padding-left:12px;padding-right:12px}.tbl-foot,.tbl-pager{width:100%}.tbl-pager{justify-content:space-between}.tbl-foot{align-items:stretch}.tbl-foot>span{width:100%}.tbl-pager .seg{flex:100%;overflow-x:auto}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0}.card-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 18px;display:flex}.card-head h3{margin:0;font-size:14.5px;font-weight:700}.card-head .sub{color:var(--ink-3);margin-top:2px;font-size:12px}.card-head .right{align-items:center;gap:8px;margin-left:auto;display:flex}@media (width<=640px){.card-head{flex-wrap:wrap}.card-head>.link{white-space:nowrap;flex-basis:100%;margin-left:0!important}}.card-body{padding:18px}.section-note{background:var(--bg);border:1px solid var(--line);color:var(--ink-2);border-radius:10px;align-items:flex-start;gap:9px;margin:14px 18px 0;padding:10px 13px;font-size:12.5px;line-height:1.55;display:flex}.section-note svg{width:15px;height:15px;color:var(--ink-3);flex:none;margin-top:2px}.link{color:var(--primary-700);cursor:pointer;background:0 0;border:none;align-items:center;gap:3px;padding:0;font-family:inherit;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.link svg{width:14px;height:14px}.kpi{padding:17px 18px;transition:transform .16s,box-shadow .16s}.kpi:hover{transform:translateY(-3px);box-shadow:0 12px 26px #161a2e1a}.kpi-top{align-items:center;gap:11px;margin-bottom:14px;display:flex}.kpi-ico{border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.kpi-ico svg{width:20px;height:20px}.kpi-label{color:var(--ink-3);font-size:12.5px;font-weight:600}.kpi-val{letter-spacing:-.5px;font-size:27px;font-weight:800;line-height:1}.kpi-val .dash-blank{color:var(--ink-3);letter-spacing:normal;font-size:13px;font-weight:500}.kpi-foot{align-items:center;gap:7px;min-width:0;margin-top:11px;display:flex}.kpi-spark{flex-shrink:0;margin-left:auto}.kpi-foot .trend-note{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.trend-note{color:var(--ink-3);font-size:11.5px}.t-violet{background:var(--violet-bg);color:var(--violet)}.t-blue{background:var(--blue-bg);color:var(--blue)}.t-green{background:var(--green-bg);color:var(--green)}.t-amber{background:var(--amber-bg);color:var(--amber)}.t-cyan{background:var(--cyan-bg);color:var(--cyan)}.t-red{background:var(--red-bg);color:var(--red)}.t-slate{background:var(--slate-bg);color:var(--slate)}.pill{white-space:nowrap;border-radius:20px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.pill .pdot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.pill.green{color:var(--green);background:var(--green-bg)}.pill.emerald{color:#047857;background:#d1fae5}.pill.mint{color:#0f766e;background:#ccfbf1}.pill.amber{color:var(--amber);background:var(--amber-bg)}.pill.red{color:var(--red);background:var(--red-bg)}.pill.blue{color:var(--blue);background:var(--blue-bg)}.pill.violet{color:var(--violet);background:var(--violet-bg)}.pill.slate{color:var(--slate);background:var(--slate-bg)}.pill.cyan{color:var(--cyan);background:var(--cyan-bg)}.av{color:#6d28d9;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:grid}.av.sq{border-radius:10px}.av{overflow:hidden}.av-img{object-fit:cover;width:100%;height:100%;display:block}.av.av-icon{background:var(--primary-soft);color:var(--primary-700)}.av.av-icon svg{width:20px;height:20px}.tbl{border-collapse:collapse;width:100%}.tbl th{text-align:left;letter-spacing:.4px;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);padding:10px 18px;font-size:11px;font-weight:700}.tbl td{border-bottom:1px solid var(--line);padding:12px 18px;font-size:13px}.tbl tr:last-child td{border-bottom:none}.tbl tbody tr{transition:background .12s}.tbl tbody tr:hover{background:var(--surface-2)}.tbl .num{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.cell-main{align-items:center;gap:11px;display:flex}.cell-main b{color:var(--ink);font-size:13px;font-weight:600;display:block}.cell-main span{color:var(--ink-3);font-size:11.5px}.approvals-table{table-layout:fixed;min-width:640px}.approvals-table th,.approvals-table td{padding-left:12px;padding-right:12px}.approvals-table th:first-child,.approvals-table td:first-child{width:30%}.approvals-table th:nth-child(2),.approvals-table td:nth-child(2){width:16%}.approvals-table th:nth-child(3),.approvals-table td:nth-child(3){width:24%}.approvals-table th:nth-child(4),.approvals-table td:nth-child(4){width:12%}.approvals-table th:nth-child(5),.approvals-table td:nth-child(5){width:18%}.approvals-table td:nth-child(5){white-space:nowrap}.approvals-table th:nth-child(2),.approvals-table td:nth-child(2),.approvals-table th:nth-child(4),.approvals-table td:nth-child(4),.approvals-table th:nth-child(5),.approvals-table td:nth-child(5){text-align:center}.approvals-table .cell-main,.approvals-table .cell-main>div{width:100%;min-width:0}.approvals-table .cell-main b,.approvals-table .cell-main span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.approval-step{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.approvals-table .pill{text-overflow:ellipsis;max-width:100%;overflow:hidden}@media (width<=1024px){.approvals-table{min-width:760px}}.bar{background:var(--line);border-radius:6px;width:110px;height:6px;overflow:hidden}.bar>i{background:var(--primary);border-radius:6px;height:100%;display:block}.bar-label{color:var(--ink-3);margin-top:4px;font-size:11px}.dash-empty{width:100%;color:var(--ink-3);letter-spacing:normal;text-align:center;flex-direction:column;flex:auto;justify-content:center;align-items:center;margin:0;padding:18px;font-family:inherit;font-size:13px;font-style:normal;font-weight:500;line-height:1.5;display:flex}.card>.dash-empty{min-height:120px}.card:has(.dash-empty){flex-direction:column;display:flex}.card:has(.dash-empty) :has(.dash-empty){flex-direction:column;flex:auto;display:flex}.stars{color:#f5b014;gap:1px;display:inline-flex}.stars svg{width:12px;height:12px}.stars .off{color:var(--line-2)}.kol-row{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:11px 18px;display:flex}.kol-row:last-child{border-bottom:none}.kol-row:hover{background:var(--surface-2)}.kol-meta{flex:1;min-width:0}.kol-meta b,.kol-name-link{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;display:block;overflow:hidden}.kol-name-link{color:var(--ink);cursor:pointer;text-decoration:none}.kol-name-link:hover{color:var(--primary-700);text-decoration:underline}.kol-sub{color:var(--ink-3);white-space:nowrap;align-items:center;gap:5px;margin-top:2px;font-size:11.5px;display:flex;overflow:hidden}.kol-handle{text-overflow:ellipsis;overflow:hidden}.kol-sub .sep{color:var(--line-2)}.kol-right{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;display:flex}.kol-eng{align-items:baseline;gap:4px;display:flex}.kol-eng b{font-variant-numeric:tabular-nums;font-size:13.5px;font-weight:700}.kol-eng span{color:var(--ink-3);text-transform:uppercase;letter-spacing:.3px;font-size:10px}.plat-chip{background:var(--slate-bg);color:var(--slate);text-transform:uppercase;border-radius:5px;flex-shrink:0;padding:1px 5px;font-size:9.5px;font-weight:700}.kol-pool-table{table-layout:fixed}.kol-pool-table th:first-child,.kol-pool-table td:first-child{width:24%}.kol-pool-table th:nth-child(2),.kol-pool-table td:nth-child(2){width:18%}.kol-pool-table th:nth-child(3),.kol-pool-table td:nth-child(3){width:22%}.kol-pool-table th:nth-child(4),.kol-pool-table td:nth-child(4){width:12%}.kol-pool-table th:nth-child(3),.kol-pool-table td:nth-child(3){padding-right:10px}.kol-pool-table th:nth-child(4),.kol-pool-table td:nth-child(4){padding-left:10px}.kol-pool-table th:nth-child(5),.kol-pool-table td:nth-child(5){width:9%}.kol-pool-table th:nth-child(6),.kol-pool-table td:nth-child(6){white-space:nowrap;width:15%}@media (width<=1024px){.kol-pool-table{min-width:860px}}.kol-channel{max-width:118px;color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.kol-stars{color:var(--ink-2);letter-spacing:0;white-space:nowrap;align-items:center;gap:4px;font-size:13px;font-weight:800;display:inline-flex}.kol-stars .on{color:#f59e0b;font-size:15px;line-height:1}.kol-actions{flex-wrap:nowrap;width:102px}.kol-actions .act-btn{flex:0 0 30px}.feed{padding:6px 18px 14px}.feed-item{gap:12px;padding:11px 0;display:flex;position:relative}.feed-item:not(:last-child):before{content:"";background:var(--line);width:2px;position:absolute;top:34px;bottom:-11px;left:15px}.feed-ico{border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid;position:relative}.feed-ico svg{width:16px;height:16px}.feed-body{flex:1;min-width:0}.feed-body p{color:var(--ink-2);margin:0;font-size:12.5px;line-height:1.45}.feed-body p b{color:var(--ink);font-weight:600}.feed-time{color:var(--ink-3);margin-top:3px;font-size:11px}.legend{flex-direction:column;gap:10px;display:flex}.legend-row{align-items:center;gap:9px;font-size:12.5px;display:flex}.legend-row .ld{border-radius:3px;flex-shrink:0;width:9px;height:9px}.legend-row .ln{color:var(--ink-2);flex:1}.legend-row .lv{font-variant-numeric:tabular-nums;font-weight:700}.legend-below{flex-flow:wrap;justify-content:center;gap:8px 18px;width:100%}.legend-below .legend-row{gap:7px}.legend-below .legend-row .ln{flex:none}@keyframes donutTipIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.88)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.area-tip{pointer-events:none;color:#fff;white-space:nowrap;z-index:5;background:#161a2e;border-radius:8px;flex-direction:column;align-items:center;gap:1px;padding:5px 10px;font-size:11px;line-height:1.25;animation:.14s areaTipIn;display:flex;position:absolute;transform:translate(-50%,-130%);box-shadow:0 6px 18px #161a2e38}.area-tip b{font-size:11.5px;font-weight:800}.area-tip .area-tip-sub{opacity:.72;font-variant-numeric:tabular-nums}@keyframes areaTipIn{0%{opacity:0;transform:translate(-50%,-120%)scale(.9)}to{opacity:1;transform:translate(-50%,-130%)scale(1)}}.due{font-size:12.5px;font-weight:600}.due.soon{color:var(--amber)}.due.over{color:var(--red)}.due.ok{color:var(--ink-2)}.empty-pad{padding:6px}.kol-rate-wrap{align-items:center;gap:4px;display:inline-flex}.kol-rate-count{color:var(--ink-3);font-size:11.5px;font-weight:700}.rail-item svg{transform-origin:50%;transition:transform .26s cubic-bezier(.34,1.56,.64,1),opacity .18s}.rail-item:hover svg,.rail-item:focus-visible svg{opacity:1}.rail-item[data-icon=dashboard]:hover svg{transform:scale(1.18)}.rail-item[data-icon=campaign]:hover svg{animation:.5s railShout}@keyframes railShout{0%{transform:rotate(0)scale(1)}30%{transform:rotate(-14deg)scale(1.12)}55%{transform:rotate(9deg)scale(1.12)}80%{transform:rotate(-4deg)scale(1.06)}to{transform:rotate(0)scale(1.06)}}.rail-item[data-icon=globe]:hover svg{animation:.6s railTurn}@keyframes railTurn{0%{transform:rotate(0)scale(1)}60%{transform:rotate(-22deg)scale(1.14)}to{transform:rotate(-14deg)scale(1.1)}}.rail-item[data-icon=star]:hover svg{animation:.55s cubic-bezier(.34,1.56,.64,1) railSpin}@keyframes railSpin{0%{transform:rotate(0)scale(1)}to{transform:rotate(72deg)scale(1.16)}}.rail-item[data-icon=shield]:hover svg{animation:.6s railPulse}@keyframes railPulse{0%,to{transform:scale(1.08)}25%{transform:scale(.92)}60%{transform:scale(1.2)}}.rail-item[data-icon=image]:hover svg{transform:rotate(-7deg)scale(1.12)}.rail-item[data-icon=chart]:hover svg{animation:.5s railClimb}@keyframes railClimb{0%{transform:translateY(0)scale(1)}45%{transform:translateY(-4px)scale(1.14)}to{transform:translateY(-1px)scale(1.1)}}.rail-item[data-icon=wallet]:hover svg{animation:.45s railWiggle}@keyframes railWiggle{0%,to{transform:rotate(0)scale(1.08)}30%{transform:rotate(-8deg)scale(1.08)}65%{transform:rotate(6deg)scale(1.08)}}.rail-item[data-icon=tag]:hover svg{transform-origin:20% 20%;animation:.6s railSwing}@keyframes railSwing{0%,to{transform:rotate(0)}30%{transform:rotate(12deg)}65%{transform:rotate(-7deg)}}.rail-item[data-icon=box]:hover svg{animation:.5s railDrop}@keyframes railDrop{0%{transform:translateY(-4px)scale(1)}50%{transform:translateY(1px)scale(1.14,.9)}75%{transform:translateY(-1px)scale(1.06)}to{transform:translateY(0)scale(1.08)}}.rail-item[data-icon=users]:hover svg{transform:scale(1.16)translate(1px)}.rail-item[data-icon=task]:hover svg{animation:.5s railTick}@keyframes railTick{0%{transform:scale(1)rotate(0)}40%{transform:scale(.9)rotate(-6deg)}70%{transform:scale(1.18)rotate(3deg)}to{transform:scale(1.1)rotate(0)}}.rail-item[data-icon=user]:hover svg{animation:.5s railNod}@keyframes railNod{0%,to{transform:translateY(0)scale(1.1)}45%{transform:translateY(-3px)scale(1.14)}}.rail-logout svg{transition:transform .24s cubic-bezier(.34,1.56,.64,1)}.rail-logout:hover svg{transform:translate(3px)}.rail-item.disabled:hover svg{animation:none;transform:none}@media (prefers-reduced-motion:reduce){.rail-item svg,.rail-logout svg{transition:none}.rail-item:hover svg,.rail-item:focus-visible svg,.rail-logout:hover svg{animation:none;transform:none}}
