*{box-sizing:border-box;margin:0;padding:0}
:root{--ac:#4F46E5;--ac2:#EEF0FF;--ink:#0F172A;--mut:#64748B;--line:#E8EBF2;--bg:#F6F7FB;--ok:#0E9F6E;--okb:#E7F7F0;--warn:#C27803;--warnb:#FFF5DB;--bad:#E02424;--badb:#FDECEC}
body{font-family:Inter,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:15px;display:flex;min-height:100vh}
a{color:var(--ac);text-decoration:none}
.side{width:236px;background:#fff;border-right:1px solid var(--line);padding:22px 14px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;flex:none}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:19px;letter-spacing:-.3px;padding:0 8px 24px}
.logo .mk{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#6366F1,#4338CA);color:#fff;display:grid;place-items:center;font-size:16px}
.nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;color:#334155;font-weight:500;margin-bottom:3px;white-space:nowrap}
.nav a.on{background:var(--ac2);color:var(--ac);font-weight:600}
.nav a .n{margin-left:auto;background:var(--ac);color:#fff;font-size:12px;font-weight:600;border-radius:20px;padding:2px 8px}
.nav a.soon{color:#A0AEC0}.nav a.soon small{margin-left:auto;font-size:11px}
.side .bot{margin-top:auto;font-size:13px;color:var(--mut);padding:0 12px}
.side .bot a{display:block;padding:6px 0;color:#334155}
.main{flex:1;padding:24px 30px 40px;display:flex;flex-direction:column;gap:18px;min-width:0}
.top{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.top h1{font-size:25px;letter-spacing:-.5px;font-weight:700}
.top .sub{color:var(--mut);font-size:14px;margin-top:3px}
.sp{flex:1}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:4px 10px;border-radius:20px}
.sample{background:#FFF1E6;color:#B4540A;border:1px dashed #F5B07A}
.shadow{background:#EEF2FF;color:#4338CA;border:1px dashed #A5B4FC}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 24px rgba(15,23,42,.05)}
.card h2{font-size:17px;font-weight:650;letter-spacing:-.2px}
.ch{display:flex;align-items:center;gap:10px;padding:16px 20px 10px;flex-wrap:wrap}
.pad{padding:16px 20px}
.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.kpi{padding:15px 17px}
.kpi .l{color:var(--mut);font-size:13px;font-weight:500}
.kpi .v{font-size:26px;font-weight:700;letter-spacing:-.8px;margin-top:5px}
.kpi .d{font-size:12.5px;font-weight:600;margin-top:3px;color:var(--mut)}
.up{color:var(--ok)}.dn{color:var(--bad)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:10px;font-weight:600;font-size:14px;padding:9px 16px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;font-family:inherit;white-space:nowrap}
.btn:hover{border-color:#CBD2E1}
.btn.pr{background:var(--ac);border-color:var(--ac);color:#fff}
.btn.yes{background:var(--ok);border-color:var(--ok);color:#fff}
.btn.no{color:var(--bad)}
.btn.sm{padding:6px 12px;font-size:13px}
.btn.danger{background:var(--bad);border-color:var(--bad);color:#fff}
table{width:100%;border-collapse:collapse}
th{font-size:12.5px;color:var(--mut);font-weight:600;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);background:#FAFBFD;white-space:nowrap}
td{padding:10px 12px;border-bottom:1px solid #F0F2F7;font-size:14px;white-space:nowrap}
tr:last-child td{border-bottom:none}
.num{text-align:right;font-variant-numeric:tabular-nums}
.tag{display:inline-block;font-size:12px;font-weight:600;padding:3px 9px;border-radius:20px;white-space:nowrap}
.t-ok{background:var(--okb);color:var(--ok)}.t-w{background:var(--warnb);color:var(--warn)}.t-b{background:var(--badb);color:var(--bad)}.t-a{background:var(--ac2);color:var(--ac)}.t-g{background:#F1F5F9;color:#475569}
.mut{color:var(--mut)}
.row{display:flex;gap:18px;flex-wrap:wrap}
.yes-item{display:flex;align-items:center;gap:14px;padding:13px 20px;border-top:1px solid #F0F2F7}
.yes-item .ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none;font-size:18px}
.yes-item .t{font-weight:600;font-size:15px}.yes-item .dd{font-size:13.5px;color:var(--mut);margin-top:2px;white-space:normal}
.yes-item form{display:inline}
.flash{padding:12px 16px;border-radius:12px;font-weight:500}
.flash.ok{background:var(--okb);color:#065F46}.flash.bad{background:var(--badb);color:#9B1C1C}
input,select,textarea{font-family:inherit;font-size:14px;padding:9px 12px;border:1px solid #D6DBE6;border-radius:10px;background:#fff;color:var(--ink)}
textarea{width:100%}
label{font-size:13px;font-weight:600;color:#334155;display:block;margin:12px 0 5px}
.help{font-size:12.5px;color:var(--mut);margin-top:4px;line-height:1.45}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:6px 22px}
.tabs{display:flex;gap:6px;flex-wrap:wrap}
.tabs a{padding:8px 14px;border-radius:10px;font-weight:600;font-size:14px;color:#334155;background:#fff;border:1px solid var(--line)}
.tabs a.on{background:var(--ac);color:#fff;border-color:var(--ac)}
.scroll{overflow:auto}
.pl td.sub{font-weight:700;background:#FAFBFD}.pl tr.total td{font-weight:800;border-top:2px solid var(--ink)}
.neg{color:var(--bad)}
.authwrap{margin:auto;width:100%;max-width:400px;padding:20px}
.authwrap .card{padding:28px}
.authwrap h1{font-size:22px;margin-bottom:6px}
.authwrap input{width:100%}
/* repricer grid */
.rp-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--line)}
.rp-tools input[type=search]{width:240px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:20px;border:1px solid var(--line);background:#fff;font-size:13px;font-weight:600;cursor:pointer;color:#334155;user-select:none}
.chip.on{background:var(--ac2);border-color:#C7CBFF;color:var(--ac)}
#grid{overflow:auto;max-height:calc(100vh - 250px)}
#grid th{position:sticky;top:0;z-index:2;cursor:grab;user-select:none}
#grid th.drag-over{box-shadow:inset 3px 0 0 var(--ac)}
#grid th .s{color:var(--ac)}
#grid td.ed{cursor:text}
#grid td.ed:hover{background:#F8F9FF;outline:1px dashed #C7CBFF}
#grid td input{width:90px;padding:4px 6px}
#grid tr.sel td{background:#F5F6FF}
.stk{font-weight:700}.stk.z{color:var(--bad)}.stk.l{color:var(--warn)}
.sugg{font-weight:700}.sugg.u{color:var(--ok)}.sugg.d{color:var(--bad)}
.why{min-width:260px;max-width:340px;white-space:normal;font-size:12.5px;color:var(--mut);line-height:1.35}
.sw{position:relative;width:38px;height:22px;border-radius:20px;background:#CBD5E1;display:inline-block;cursor:pointer;vertical-align:middle}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.15s}
.sw.on{background:var(--ok)}.sw.on::after{left:19px}.sw.pend{background:#FBBF24}
.colmenu{position:absolute;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.12);padding:10px 14px;z-index:20;max-height:420px;overflow:auto}
.colmenu label{display:flex;gap:8px;align-items:center;font-weight:500;margin:6px 0}
.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#0F172A;color:#fff;padding:11px 18px;border-radius:12px;font-weight:500;z-index:50;max-width:90vw}
.bbbar{display:inline-block;width:46px;height:6px;border-radius:4px;background:#E2E8F0;vertical-align:middle;margin-left:6px;overflow:hidden}
.bbbar i{display:block;height:100%;background:var(--ok)}
.mnav{display:none}
@media (max-width:900px){
  body{display:block;padding-bottom:70px}
  .side{display:none}
  .main{padding:16px 12px 30px}
  .kpis{grid-template-columns:1fr 1fr}
  .kpi .v{font-size:22px}
  .grid2{grid-template-columns:1fr}
  .top h1{font-size:21px}
  .yes-item{flex-wrap:wrap}
  .rp-tools input[type=search]{width:100%}
  #grid{max-height:none}
  .mnav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);z-index:30}
  .mnav a{flex:1;text-align:center;padding:10px 0 12px;font-size:12px;font-weight:600;color:#475569}
  .mnav a.on{color:var(--ac)}
  .mnav a b{display:block;font-size:19px}
}

#grid td{vertical-align:middle}
#grid table{width:max-content;min-width:100%}
#grid th[data-k=sel],#grid td:first-child{width:1%;padding-right:4px}

/* ---------- Books: search, item P&L, item page ---------- */
.bsearch{padding:16px 18px;display:flex;flex-direction:column;gap:12px;border:2px solid var(--ac);overflow:visible}
.bs-box{position:relative;display:flex;align-items:center;gap:10px}
.bs-ic{position:absolute;left:16px;font-size:20px;pointer-events:none}
#bs-q{flex:1;font-size:20px;padding:15px 16px 15px 50px;border-radius:12px;border:1.5px solid #C7CDF5;min-width:0}
#bs-q:focus{outline:none;border-color:var(--ac);box-shadow:0 0 0 4px var(--ac2)}
.bs-go{font-size:17px;padding:14px 26px;border-radius:12px}
.bs-filters{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end}
.bs-filters label{margin:0;display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--mut)}
.bs-filters select,.bs-filters input{font-size:15px;padding:9px 12px;min-width:150px}
#bs-dates{display:flex;gap:14px}#bs-dates[hidden]{display:none}
.btabs a{font-size:15px}
.kpis.k6{grid-template-columns:repeat(6,1fr)}
.kpi.hl{border:2px solid var(--ok)}
.pl-bar{display:flex;align-items:center;gap:10px;padding:8px 20px 10px;font-size:13px}
.colpick{position:relative}.colpop{position:absolute;right:0;top:110%;z-index:40;padding:12px 14px;min-width:220px;max-height:420px;overflow:auto}
.colpop .ck{display:flex;gap:8px;align-items:center;font-weight:500;margin:4px 0;font-size:14px;color:var(--ink)}
.plwrap{max-height:70vh;overflow:auto}
.pltab th{position:sticky;top:0;z-index:2;cursor:pointer;user-select:none;font-size:13px}
.pltab th:hover{color:var(--ac)}
.pltab th.sorted{color:var(--ac)}.pltab th.sorted::after{content:" " attr(data-dir)}
.pltab th.over{box-shadow:inset 3px 0 0 var(--ac)}.pltab th.drag{opacity:.4}
.pltab .stick{position:sticky;left:0;background:#fff;z-index:1;min-width:210px;max-width:280px;white-space:normal}
.pltab th.stick{z-index:3;background:#FAFBFD}
.pltab td{font-size:14.5px}
.pltab td.big{font-size:15.5px;font-weight:700}
.pltab td.pos{color:var(--ok)}
.pltab .itm{color:var(--ink);display:block}.pltab .itm b{color:var(--ac)}.pltab .itm .t{font-size:12.5px;margin-top:2px}
.pltab tbody tr:hover td{background:#F8F9FF}
.pltab tr.storewide td{background:#FAFAFA;color:#475569}
.pltab tfoot td{position:sticky;bottom:0;background:#F1F3FA;border-top:2px solid #CBD2E1;font-size:15px;z-index:1}
.pltab tfoot td.stick{z-index:3;background:#F1F3FA}
.neg{color:var(--bad)}
.item-head .ih-t{font-size:24px;font-weight:700;letter-spacing:-.4px}
.item-head .ih-m{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:8px;font-size:14.5px;color:#334155}
.item-head .ih-per{margin-top:10px;font-size:13.5px;color:var(--mut)}
table.wf td{font-size:15px;padding:9px 16px}table.wf th{padding:9px 16px}
table.wf tr.sub td{font-weight:700;background:#FAFBFD}
table.wf tr.total td{font-weight:800;font-size:17px;background:var(--okb);border-top:2px solid var(--ok)}
.ppcgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:6px 20px 14px}
.ppcgrid .l{font-size:12.5px;color:var(--mut)}.ppcgrid .v{font-size:19px;font-weight:700;margin-top:2px}
@media(max-width:1100px){.kpis.k6{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.kpis.k6{grid-template-columns:repeat(2,1fr)}#bs-q{font-size:17px}.bs-go{padding:14px 16px}.ppcgrid{grid-template-columns:repeat(2,1fr)}}
/* search: clear button + Exact match switch (shared by every search box) */
.bs-x,.sx{border:0;background:#EEF0F6;color:#475569;border-radius:50%;width:30px;height:30px;font-size:15px;line-height:30px;padding:0;cursor:pointer;flex:none}
.bs-x{position:absolute;right:150px}.bs-x:hover,.sx:hover{background:#DDE1EC}
#bs-q{padding-right:48px}
.xt{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:9px!important;cursor:pointer;user-select:none;font-size:15px!important;color:var(--ink)!important;padding:9px 0}
.xt input{position:absolute;opacity:0;width:0;height:0;min-width:0!important}
.xt-sw{width:42px;height:24px;border-radius:24px;background:#CBD2E1;position:relative;transition:.15s;flex:none}
.xt-sw:after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:.15s}
.xt input:checked+.xt-sw{background:var(--ac)}.xt input:checked+.xt-sw:after{left:21px}
.xt input:focus-visible+.xt-sw{box-shadow:0 0 0 3px var(--ac2)}
.bs-mode{font-size:13px}
.sbox{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sbox .sin{position:relative;display:flex;align-items:center}
.sbox input[type=text]{width:280px;padding-right:40px;font-size:15px}
.sbox .sx{position:absolute;right:6px;width:26px;height:26px;line-height:26px;font-size:13px}
.sbox .xt{padding:0}
@media(max-width:700px){.bs-x{right:84px}.sbox input[type=text]{width:100%}.sbox .sin{flex:1}}
.home-search{padding:14px 16px;margin-bottom:16px}.home-search .sbox input[type=text]{width:560px;font-size:16px;padding:11px 40px 11px 14px}
@media(max-width:700px){.home-search .sbox input[type=text]{width:100%}}

/* ---- Phase 1b ---- */
.ttpop{position:absolute;right:0;top:110%;z-index:50;padding:12px 14px;min-width:260px;max-height:70vh;overflow:auto}
.ttrow{display:flex;align-items:center;gap:6px;margin:4px 0}.ttrow label{display:flex;gap:8px;align-items:center;font-weight:500;margin:0;font-size:14px;color:var(--ink)}
.ttrow .btn{padding:3px 8px}
.ttwrap{position:relative}
table.tt th{cursor:pointer;user-select:none;white-space:nowrap}table.tt th[data-dir]::after{content:" " attr(data-dir);color:var(--ac)}
table.tt th.over{box-shadow:inset 3px 0 0 var(--ac)}table.tt th.drag{opacity:.4}
.fixbox{display:flex;gap:12px;align-items:flex-start;padding:14px 18px;border-top:1px solid #F0F2F7;flex-wrap:wrap}
.fixbox .what{flex:1;min-width:220px}.fixbox .what b{font-size:15px}
.fix{margin-top:6px;background:#F0FDF4;border:1px solid #BBF7D0;color:#14532D;border-radius:10px;padding:8px 11px;font-size:13.5px;line-height:1.4}
.fix small{display:block;color:#3F6212;margin-top:2px}
.fix.none{background:#FFFBEB;border-color:#FDE68A;color:#78350F}
.aes{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.aes form{display:inline}
.editbox{display:none;margin-top:8px;gap:8px;flex-wrap:wrap;align-items:center}.editbox.open{display:flex}
.editbox select{max-width:100%}
.line1{font-size:13.5px;line-height:1.35;color:#334155;min-width:240px;max-width:420px;white-space:normal}
.mode{font-weight:600;font-size:12.5px;padding:3px 9px;border-radius:20px;background:#EEF2FF;color:#4338CA;white-space:nowrap}
.permgrid td,.permgrid th{text-align:center}.permgrid td:first-child,.permgrid th:first-child{text-align:left}
.lv{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.lv label{margin:0;padding:6px 9px;font-size:12.5px;font-weight:600;cursor:pointer;color:#475569;border-left:1px solid var(--line)}
.lv label:first-child{border-left:0}.lv input{display:none}.lv input:checked+span{color:#fff}
.lv label:has(input:checked){background:var(--ac);color:#fff}.lv label.blk:has(input:checked){background:var(--bad)}
.ucard{display:flex;gap:12px;align-items:center;padding:14px 18px;border-top:1px solid #F0F2F7;flex-wrap:wrap}
.ucard .who{flex:1;min-width:180px}
.btn.block{background:#FEF2F2;border-color:#FECACA;color:#B91C1C}
.kv{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:14px}
.prof{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;padding:0 18px 18px}
.prof .card{padding:14px}
.chart{width:100%;height:auto;display:block}
.newbadge{background:#DCFCE7;color:#166534;font-size:11px;font-weight:700;border-radius:20px;padding:2px 7px;margin-left:6px}
@media(max-width:700px){
 .line1{min-width:200px}
 .fixbox{padding:12px 14px}
 .aes .btn{flex:1}
 .permgrid .lv label{padding:6px 6px;font-size:12px}
}
@media(max-width:700px){.sbox{flex-wrap:wrap}.sbox .sin{flex:1 1 200px}}
select,input{max-width:100%}
.yes-item .t,.yes-item .dd{overflow-wrap:anywhere}
.only-phone{display:none}
.pcard{display:block;padding:12px 16px;border-top:1px solid #F0F2F7;color:inherit}
.pcard .pc1{display:flex;gap:8px;align-items:center}.pcard .pc2{margin:6px 0 4px;font-size:16px;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
@media(max-width:700px){.only-phone{display:block}.only-wide{display:none}}
.ver{margin-top:10px;font-size:11.5px;opacity:.7}.ver a{color:inherit}
.yes-item:target{outline:2px solid #DC2626;border-radius:12px;background:#FEF2F2}
.fixlink{display:inline-block;margin-top:4px;font-size:12.5px;font-weight:700;color:#DC2626}

/* Pick invoice (Needs mapping) */
.editbox .eb-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;width:100%}
.pickinv{width:100%;border:1px dashed #CBD5E1;border-radius:12px;padding:10px 12px;background:#F8FAFC}
.pi-h{font-size:13.5px;color:#334155;margin-bottom:6px}
.pi-form{display:flex;gap:8px;align-items:center}.pi-form .pi-q{flex:1;min-width:0;max-width:360px;font-size:15px;padding:8px 10px}
.pi-res{margin-top:8px}.pi-msg{font-size:13.5px;padding:4px 0}
.pi-list{display:flex;flex-direction:column;gap:6px}
.pi-inv{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;font:inherit;color:inherit;width:100%}
.pi-inv:hover,.pi-inv:focus{border-color:var(--ac)}.pi-inv .mut{font-size:12.5px}
.pi-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.pi-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:9px 12px;border-bottom:1px solid #F0F2F7}.pi-top .pi-back{margin-left:auto}
.pi-tip{font-size:12.5px;padding:6px 12px 0}
table.pi-lines{width:100%;border-collapse:collapse;font-size:14px}
table.pi-lines th{text-align:left;font-size:12px;color:#64748B;padding:6px 12px;font-weight:600}
table.pi-lines td{padding:10px 12px;border-top:1px solid #F0F2F7;vertical-align:top;white-space:normal}
table.pi-lines .num{text-align:right;white-space:nowrap}table.pi-lines td .mut{font-size:12px;font-weight:400}
tr.pi-line{cursor:pointer}tr.pi-line:hover td,tr.pi-line:focus td{background:#EEF2FF}tr.pi-line.on td{background:#DCFCE7}
@media(max-width:700px){.pi-form .pi-q{max-width:none;font-size:16px}.pickinv{padding:10px}table.pi-lines td,table.pi-lines th{padding:9px 8px}.editbox .pickline{min-width:0!important;width:100%}}

.shadowbar{background:#EEF2FF;border:1px solid #C7D2FE;color:#3730A3;border-radius:12px;padding:10px 14px;margin-bottom:14px;font-size:14px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.shadowbar a{font-weight:700;color:#3730A3;margin-left:auto}
.syncbar{height:10px;background:#E5E7EB;border-radius:6px;overflow:hidden}.syncbar>i{display:block;height:100%;background:#4F46E5}
.steps li{margin:3px 0}.steps li.now{font-weight:700}.steps li.done{color:#047857}
@media(max-width:700px){.shadowbar a{margin-left:0}}

/* ---------- v1.3.9g: tables fit the screen, scroll bar always at the bottom, Why behind +, pictures everywhere ---------- */
.tbox{overflow:auto;max-width:100%}
.tbox thead th,.tbox>table>tbody>tr:first-child>th{position:sticky;top:0;z-index:2;background:#FAFBFD}
.tbox::-webkit-scrollbar{height:13px;width:12px}.tbox::-webkit-scrollbar-thumb{background:#C5CBD8;border-radius:8px;border:2px solid #fff}.tbox::-webkit-scrollbar-track{background:#F1F3F8}
#hbar{position:fixed;bottom:0;height:17px;overflow-x:auto;overflow-y:hidden;z-index:45;display:none;background:rgba(241,243,248,.96);border-top:1px solid var(--line)}
#hbar>div{height:1px}
#hbar::-webkit-scrollbar{height:15px}#hbar::-webkit-scrollbar-thumb{background:#9AA3B8;border-radius:8px;border:3px solid rgba(241,243,248,.96)}
.ttbar{display:flex;justify-content:flex-end;position:relative;padding:6px 12px 2px}
.wy{display:inline}
.wyb{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid #C7CDF5;background:#F5F6FF;color:var(--ac);font-weight:700;font-size:14px;line-height:1;padding:0;cursor:pointer;vertical-align:middle;font-family:inherit}
.wyb:hover{background:var(--ac2)}
.wy .wyt{display:none}.wy.open .wyt{display:block;white-space:normal;font-size:12.5px;color:var(--mut);max-width:380px;margin-top:4px;line-height:1.35}
tr[data-href]{cursor:pointer}tr[data-href]:hover td{background:#F8F9FF}
[data-chipgo]{cursor:pointer}[data-chipgo]:hover{border-color:#C7CDF5}
.ipic{display:inline-flex;align-items:center;gap:10px;min-width:0}
.ipic img,.ipic .pl{width:36px;height:36px;border-radius:7px;flex:none;object-fit:contain;background:#fff}
.ipic .pl{background:#EEF0FF;color:#4F46E5;display:grid;place-items:center;font-weight:700;font-size:15px}
.ipic .it{min-width:0;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
td.clip{max-width:340px;overflow:hidden;text-overflow:ellipsis}
.tbox td,.tbox th{padding:9px 10px}
.tbox td.bbw{max-width:140px;overflow:hidden;text-overflow:ellipsis}

/* v1.3.9g: nothing scrolls sideways at 1366 px: long words wrap inside their cell, numbers and the Repricer stay on one line */
.tbox td{white-space:normal;overflow-wrap:anywhere}
.tbox th{white-space:normal}
.tbox td.num,.tbox th.num,.tbox td .tag,.tbox td .btn,.tbox td input,.tbox td select{white-space:nowrap;overflow-wrap:normal}
.tbox td .ipic .it{max-width:260px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
#grid td,#grid th{white-space:nowrap;overflow-wrap:normal}

/* v1.3.9j Columns picker: floats over everything, next to its button */
.ttpick{position:fixed;z-index:2147482000;background:#fff;border-radius:14px;box-shadow:0 20px 50px rgba(15,23,42,.22),0 0 0 1px rgba(15,23,42,.07);display:flex;flex-direction:column;overflow:hidden;font-size:14px}
.ttpick .tp-h{display:flex;align-items:center;gap:8px;padding:12px 14px 8px}.ttpick .tp-h b{font-size:15px}.ttpick .tp-n{color:var(--mut,#6b7280);font-size:12.5px;flex:1}
.ttpick .tp-x{border:0;background:none;font-size:15px;cursor:pointer;color:var(--mut,#6b7280);padding:2px 6px;border-radius:6px}.ttpick .tp-x:hover{background:#F1F3F7}
.ttpick .tp-l{overflow:auto;padding:2px 8px;flex:1}
.ttpick .tp-r{display:flex;align-items:center;gap:6px;padding:6px 6px;border-radius:9px;user-select:none}.ttpick .tp-r:hover{background:#F6F7FB}
.ttpick .tp-r.off .tp-t{color:#9AA1AE}.ttpick .tp-r.drag{opacity:.4}.ttpick .tp-r.over{box-shadow:inset 0 2px 0 #4F46E5}
.ttpick .tp-g{cursor:grab;color:#B4BAC6;letter-spacing:-2px;font-weight:700;padding:0 2px}.ttpick .tp-t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ttpick .tp-a{border:0;background:none;color:#9AA1AE;cursor:pointer;width:22px;height:22px;border-radius:6px;font-size:13px}.ttpick .tp-a:hover:not([disabled]){background:#ECEEF4;color:#111}.ttpick .tp-a[disabled]{visibility:hidden}
.ttpick .tp-s{position:relative;display:inline-block;width:34px;height:20px;flex:none;cursor:pointer}.ttpick .tp-s input{opacity:0;position:absolute;inset:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}
.ttpick .tp-s i{position:absolute;inset:0;background:#D5D9E2;border-radius:20px;transition:background .15s}.ttpick .tp-s i:before{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;background:#fff;border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s}
.ttpick .tp-s input:checked+i{background:#4F46E5}.ttpick .tp-s input:checked+i:before{transform:translateX(14px)}
.ttpick .tp-f{display:flex;gap:8px;align-items:center;padding:10px 14px;border-top:1px solid var(--line,#E5E7EB)}.ttpick .tp-f .sp{flex:1}

/* v1.3.9l4: column names stay on top when scrolling down (every table, Scout too: its grid headers were position:relative) */
.tbox table thead th,.tbox table>tbody>tr:first-child>th{position:sticky;top:0;z-index:3;background:#FAFBFD;box-shadow:inset 0 -1px 0 #D5DBE5}
/* v1.3.9l4: the + box floats over everything (not cut by the cell), closes on a click anywhere else / Esc */
.ypop{position:fixed;z-index:2147482500;background:#fff;border-radius:12px;box-shadow:0 14px 40px rgba(15,23,42,.24),0 0 0 1px rgba(15,23,42,.08);padding:10px 12px;font-size:13px;line-height:1.45;color:#1F2937;white-space:normal;overflow:auto;overflow-wrap:anywhere;text-align:left;font-weight:400}
.ypop a{color:var(--ac)}
details.plus.on>summary,.wy.on .wyb{background:var(--ac2,#EEF0FF);border-color:var(--ac,#4F46E5);color:var(--ac,#4F46E5)}
tr.ttfh{display:none!important}
.ttbar{gap:6px;flex-wrap:wrap}
button.on[data-ttff]{background:#e8f0fe}
.ttpick.ttfilt .tp-l label{font-size:13.5px;padding:2px 0}
