/* monday boards (js/boards.js): round 7 read-only copy (B9 data + B10 UI) → round 9 full editing (B4, mockup MB-01). Existing variables only
   (var(--ink) … var(--on-accent,#fff)); every rule is under .bd or a bd- prefixed class (menus, tips and the bulk bar live on body but keep
   the prefix). monday's own label and group colours come inline (style="background:…", --gc = the group colour); everything else uses the
   app's variables, so Dawg Walk light / dark and Classic all work.
   Stacking: sticky cells 1–4 < bulk bar 50 < item panel 55 < menus / tips 58 < job drawer .modal-bg 60 < toast 80. */
.bd{position:relative}
.bd-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 6px}
.bd-ttl{flex:1 1 240px;min-width:0}
.bd-sub{font-size:var(--fs-13,13px);color:var(--ink2);font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:6px;cursor:default}
.bd-sub b{color:var(--ink);font-weight:700}
.bd-warn{color:var(--red)}
.bd-fresh{color:var(--green)}
.bd-refresh{display:inline-flex;align-items:center;gap:8px}
.bd-spin{width:13px;height:13px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;display:inline-block;animation:bdspin .8s linear infinite;flex:none}
@keyframes bdspin{to{transform:rotate(360deg)}}
.bd-el{font-variant-numeric:tabular-nums;opacity:.85}
.bd-topm{font-size:16px;line-height:1;padding:0 10px}
/* write switch chip */
.bd-wsw{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:13px;border:1px solid var(--rule);background:var(--paper2);color:var(--ink2);font-weight:600;font-size:var(--fs-12,12px);white-space:nowrap;cursor:default}
.bd-wsw.off{border-color:var(--amber-bd,var(--amber));background:var(--amber-l);color:var(--amber-t,var(--ink))}
.bd-wsw.off i{background:var(--amber)}
.bd-wsw i{width:8px;height:8px;border-radius:50%;background:var(--ink3)}
.bd-wsw b{color:var(--ink)}
.bd-wsw.on{border-color:var(--green-bd,var(--green));background:var(--green-l);color:var(--green-t,var(--green))}
.bd-wsw.on i{background:var(--green);box-shadow:0 0 0 3px var(--green-l)}
.bd-wsw.ro{border-color:var(--amber-bd,var(--amber));background:var(--amber-l);color:var(--amber-t,var(--ink))}
.bd-wsw.ro i{background:var(--amber)}
/* view tabs */
.bd-vtabs{display:flex;align-items:center;gap:2px;flex-wrap:nowrap;overflow-x:auto;margin:0 0 8px;border-bottom:1px solid var(--rule);padding-bottom:2px}
.bd-vtabs:empty{display:none}
.bd-vt{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:0;border-bottom:2px solid transparent;background:none;color:var(--ink2);font:inherit;font-weight:600;font-size:var(--fs-13,13px);cursor:pointer;border-radius:6px 6px 0 0;white-space:nowrap;flex:none}
.bd-vmi svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.bd-vt:hover{color:var(--ink);background:var(--hover)}
.bd-vt.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:700}
.bd-vt svg,.bd-tl svg,.bd-srch svg,.bd-vsw svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.bd-vadd{color:var(--ink)}
.bd-vhost{min-height:220px}
.bd-vhost[hidden],.bd-wrap[hidden],.bd-bulk[hidden]{display:none}
/* toolbar */
.bd-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 6px;row-gap:4px}
.bd-tools:empty{display:none}
.bd-nb{display:inline-flex;height:30px;border-radius:6px;overflow:hidden;background:var(--brand,#BA0C2F)}
.bd-nb button{border:0;background:none;color:var(--brand-ink,#fff);font:inherit;font-weight:700;font-size:12.5px;cursor:pointer;padding:0 12px}
.bd-nb .bd-nb2{padding:0 8px;border-left:1px solid rgba(255,255,255,.35);font-size:11px}
.bd-nb button:hover{background:rgba(255,255,255,.12)}
.bd-tsep{width:1px;height:20px;background:var(--rule)}
.bd-srch{display:inline-flex;align-items:center;gap:6px;height:30px;border:1px solid var(--rule);border-radius:6px;background:var(--field,var(--paper));padding:0 9px;width:240px;max-width:100%;color:var(--ink3)}
.bd-srch input{border:0;outline:0;font:inherit;font-size:12.5px;width:100%;background:transparent;color:var(--ink);padding:0;min-height:0;height:26px}
.bd-tl{display:inline-flex;align-items:center;gap:6px;height:30px;border:1px solid transparent;background:transparent;border-radius:6px;padding:0 8px;font:inherit;font-weight:600;font-size:12.5px;color:var(--ink);cursor:pointer;white-space:nowrap}
.bd-tl:hover{background:var(--hover)}
.bd-tl.on{background:var(--indigo-xl);border-color:var(--indigo-bd,var(--rule));color:var(--ink)}
.bd-ct{font:700 11px/1 var(--font,inherit);font-variant-numeric:tabular-nums;background:var(--brand,#BA0C2F);color:var(--brand-ink,#fff);border-radius:8px;padding:3px 6px}
.bd-ct.g{background:var(--ink2);color:var(--paper)}
.bd-tv{font-weight:500;color:var(--ink2);font-size:11.5px;max-width:170px;overflow:hidden;text-overflow:ellipsis}
.bd-avs{display:inline-flex;align-items:center}
.bd-avs .bd-av{width:20px;height:20px;font-size:var(--fs-11,11px);border-width:1.5px}
.bd-vslot{display:inline-flex;align-items:center;gap:6px}
.bd-vslot:empty{display:none}
.bd-hint{font-size:var(--fs-12,12px);color:var(--ink2);white-space:nowrap}
.bd-hint:empty{display:none}
.bd-hi,.bd-hint .bv-hint{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;color:var(--ink3);cursor:help;font-size:14px}
.bd-hint .bv-hint>span{display:none}
.bd-hint .bv-hint svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}
.bd-hi:hover,.bd-hint .bv-hint:hover{color:var(--ink);background:var(--hover)}
.bd-tcount{font-size:var(--fs-12,12px);color:var(--ink2);white-space:nowrap;font-variant-numeric:tabular-nums}
.bd-vsw{display:inline-flex;align-items:center;gap:6px;height:30px;border:1px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:6px;padding:0 10px;font:inherit;font-weight:700;font-size:12.5px;cursor:pointer;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}
.bd-vsw i{font-style:normal;font-weight:500;color:var(--ink2)}
.bd-sp{flex:1}
.bd-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 8px}
.bd-chips:empty{display:none}
.bd-cnt{font-size:12px;color:var(--ink2);font-variant-numeric:tabular-nums;margin-right:4px}
.bd-fc{display:inline-flex;align-items:center;gap:6px;background:var(--indigo-l);color:var(--ink);border-radius:14px;padding:3px 4px 3px 10px;font-size:12px}
.bd-fc i{font-style:normal;color:var(--ink2)}
.bd-fc button{border:0;background:none;color:var(--ink2);cursor:pointer;font-size:15px;line-height:1;padding:0 5px;border-radius:50%}
.bd-fc button:hover{color:var(--ink);background:var(--hover)}
/* the board: one scroll box, so the header row and the checkbox + Name columns can all stick */
.bd-wrap{overflow:auto;max-height:calc(100vh - var(--bd-top,230px) - 14px);min-height:220px;border:1px solid var(--rule);border-radius:10px;background:var(--paper);padding:2px 0 24px}
.bd-wrap.none{max-height:none;min-height:0;border:0;background:none;padding:0;overflow:visible}
.bd-grp{margin:8px 0 18px;min-width:max-content;content-visibility:auto;contain-intrinsic-size:auto 600px}   /* v1: off-screen groups skip layout (Production Orders 804 x 175: paint 530 ms -> 150 ms); min-width keeps the wide table from being clipped */
.bd-grp.dropb{box-shadow:inset 0 3px 0 var(--ink)}
.bd-gh{position:sticky;left:0;z-index:4;display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:6px 14px 6px 10px;font-weight:700;font-size:15px;background:var(--paper)}
.bd-gh[draggable]{cursor:grab}
.bd-gh.drag{opacity:.5}
.bd-gh::before{content:"";width:4px;height:18px;border-radius:2px;background:var(--gc);order:-1}
.bd-chev{border:0;background:none;color:var(--ink3);cursor:pointer;width:22px;height:22px;border-radius:6px;font-size:12px;padding:0}
.bd-chev:hover{background:var(--hover);color:var(--ink)}
.bd-gt{color:var(--gc);cursor:pointer}
[data-theme=dark] .bd-gt{color:var(--ink)}
.bd-gc{font-size:var(--fs-12,12px);font-weight:500;color:var(--ink3);font-variant-numeric:tabular-nums}
.bd-grp.gnone{margin:0 0 2px;content-visibility:visible}   /* round 10: not ".empty" — ui.css pads that 28px (empty groups stood tall) */
.bd-grp.shut{margin:4px 0 6px;content-visibility:visible}
.bd-tcount:empty{display:none}
.bd-grp.gnone .bd-gh{opacity:.6;font-size:14px;padding-top:3px;padding-bottom:3px}
.bd-grp.gnone .bd-chev{visibility:hidden}
.bd-lz{margin-left:10px;border:1px dashed var(--rule);border-radius:6px;background:var(--paper2)}
.bd-lock{font-style:normal;font-size:11px;margin-left:4px;opacity:.7}
.bd-gm{border:0;background:none;color:var(--ink3);cursor:pointer;font-size:16px;line-height:1;padding:0 6px;border-radius:6px;height:24px}
.bd-gm:hover{background:var(--hover);color:var(--ink)}
.bd-grp.shut .bd-gh{opacity:.85}
.bd-t{border-collapse:separate;border-spacing:0;table-layout:fixed;margin-left:10px}
.bd-t th,.bd-t td{height:36px;padding:0 8px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.5px;background:var(--paper);color:var(--ink);text-align:center;position:relative}
.bd-t th{position:sticky;top:0;z-index:2;background:var(--paper2);color:var(--ink2);font-weight:600;font-size:12px;border-top:1px solid var(--rule);cursor:pointer;user-select:none;height:36px;line-height:1.2}
.bd-t th.mh{background:var(--grey-l)}
.bd-t th:hover{color:var(--ink)}
.bd-hl{display:block;overflow:hidden;text-overflow:ellipsis}
.bd-fx{font:italic 700 11px var(--mono);color:var(--blue-t,var(--ink2))}
.bd-rz{position:absolute;top:0;right:-3px;width:7px;height:100%;cursor:col-resize;z-index:3}
.bd-rz:hover{background:var(--rule-hi,var(--rule))}
body.bd-resizing,body.bd-resizing *{cursor:col-resize}
.bd-t .bd-ck{position:sticky;left:0;z-index:1;padding:0;box-shadow:inset 4px 0 0 var(--gc);border-left:1px solid var(--rule)}
.bd-t th.bd-ck{z-index:4;border-top-left-radius:8px}
.bd-t .bd-nm{position:sticky;left:34px;z-index:1;text-align:left;padding-left:6px}
.bd-t th.bd-nm{z-index:4}
.bd-cb{display:inline-grid;place-items:center;width:15px;height:15px;border:1.5px solid var(--rule-hi,var(--ink3));border-radius:3px;background:var(--paper);vertical-align:middle;cursor:pointer;flex:none}
.bd-cb.on{background:var(--ink);border-color:var(--ink)}
.bd-cb.on::after{content:"";width:7px;height:3.5px;border-left:2px solid var(--paper);border-bottom:2px solid var(--paper);transform:translate(0,-1px) rotate(-45deg)}
.bd-t td.bd-ck{cursor:pointer}
.bd-t td.num,.bd-t th.num{text-align:right}
.bd-t td.k-text,.bd-t td.k-longtext,.bd-t td.k-mirror,.bd-t td.k-link,.bd-t td.k-email,.bd-t td.k-relation{text-align:left}
.bd-t tbody tr[data-id] td{cursor:pointer}
.bd-t tbody tr[data-id] td.ro{cursor:default}
.bd-t tbody tr[data-id] td.k-mirror{background:repeating-linear-gradient(135deg,var(--paper2) 0 6px,var(--paper) 6px 12px);color:var(--ink2)}
.bd-t tbody tr[data-id] td.k-formula{background:var(--paper2);color:var(--ink2)}
.bd-t tbody tr[data-id]:hover td{background:var(--hover)}
.bd-t tbody tr.sel td{background:var(--indigo-xl)}
.bd-t tbody tr.on td{background:var(--indigo-xl)}
.bd-t tbody tr.bd-more{cursor:default}
.bd-t tbody tr.bd-more td{background:var(--paper2);text-align:left}
.bd-morei{position:sticky;left:14px;display:inline-flex;gap:8px;align-items:center}
.bd-nmi{display:flex;align-items:center;gap:4px;min-width:0}
.bd-nmt{overflow:hidden;text-overflow:ellipsis;font-weight:600;color:var(--ink);text-decoration:none;min-width:0}
.bd-nmt:hover{text-decoration:underline}
.bd-sx,.bd-sx0{flex:none;width:16px;height:20px}
.bd-sx{border:0;background:none;color:var(--ink2);cursor:pointer;font-size:11px;padding:0;border-radius:4px}
.bd-sx:hover,.bd-sx.on{color:var(--ink);background:var(--hover)}
.bd-subn{flex:none;font-size:var(--fs-11,11px);font-variant-numeric:tabular-nums;background:var(--grey-l);color:var(--ink2);border-radius:8px;padding:0 6px}
.bd-rm{margin-left:auto;flex:none;border:0;background:none;color:var(--ink3);cursor:pointer;font-size:15px;line-height:1;padding:0 5px;border-radius:5px;height:24px;visibility:hidden}
.bd-t tr:hover .bd-rm,.bd-rm:focus{visibility:visible}
.bd-rm:hover{background:var(--grey-l);color:var(--ink)}
.bd-sm{font-size:var(--fs-11,11px);color:var(--ink);position:absolute;right:8px;top:5px}
/* write markers (MWRITE.badge) */
.bd-wb{position:absolute;right:3px;top:2px;z-index:2;font:700 11px/1 var(--font,inherit)}
.bd-t td.bd-nm .bd-wb{position:static;margin-left:4px}
/* cells */
.bd-st{display:block;margin:0 -8px;height:35px;line-height:35px;padding:0 6px;overflow:hidden;text-overflow:ellipsis;font-weight:600;font-size:12px}
.bd-dds,.bd-rel{display:flex;gap:4px;overflow:hidden;justify-content:center;align-items:center}
.bd-t td.k-relation .bd-rel{justify-content:flex-start}
.bd-dd{display:inline-flex;align-items:center;gap:5px;border-radius:10px;padding:1px 8px;font-size:11.5px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.bd-dd.plain{background:var(--grey-l);color:var(--ink)}
.bd-dd.plain i,.bd-sw{width:8px;height:8px;border-radius:50%;flex:none;display:inline-block}
.bd-ppl{display:inline-flex;align-items:center;vertical-align:middle}
.bd-av{width:24px;height:24px;border-radius:50%;display:inline-grid;place-items:center;font-size:11px;font-weight:700;border:2px solid var(--paper);margin-left:-6px;flex:none}
.bd-av:first-child{margin-left:0}
.bd-plus{font-size:11px;color:var(--ink2);margin-left:4px}
.bd-ppl.full{display:flex;flex-wrap:wrap;gap:6px 12px}
.bd-ppl.full .bd-av{margin-left:0}
.bd-pn{display:inline-flex;align-items:center;gap:6px}
.bd-rc{display:inline-block;background:var(--indigo-l);color:var(--ink);border-radius:6px;padding:1px 7px;font-size:11.5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bd-tx{display:block;overflow:hidden;text-overflow:ellipsis}
.bd-r{display:block;text-align:right;font-family:var(--font)}
.bd-t td.num{font-variant-numeric:tabular-nums}
.bd-t .bd-cbx,.bd-t span[title="checked"]{color:var(--green);font-weight:800}
.bd-tl-x{font-family:var(--mono)}
.bd-rate{color:var(--amber);letter-spacing:1px}
.bd-rate i{font-style:normal;color:var(--rule)}
.bd-a{overflow:hidden;text-overflow:ellipsis}
.bd-loading,.bd-none{padding:28px;color:var(--ink2);text-align:center}
.bd-empty{background:var(--paper);border:1px dashed var(--rule);border-radius:12px;padding:34px 20px;text-align:center}
.bd-empty h3{margin:0 0 6px;font-size:16px}
.bd-empty p{margin:0 auto 14px;max-width:520px}
/* add row + totals */
.bd-t tr.bd-add td{height:32px;background:var(--paper)}
.bd-addin,.bd-subadd{width:100%;border:1px solid transparent;background:transparent;font:inherit;font-size:12.5px;color:var(--ink);padding:4px 6px;border-radius:5px;height:26px;min-height:0}
.bd-addin:hover,.bd-subadd:hover{border-color:var(--rule)}
.bd-addin:focus,.bd-subadd:focus{border-color:var(--ink);background:var(--field,var(--paper));outline:0}
.bd-t tr.bd-sum td{height:34px;background:var(--paper2);font-size:var(--fs-11,11px);line-height:1.1;font-variant-numeric:tabular-nums;color:var(--ink2);cursor:default}
.bd-t tr.bd-sum td b{display:block;color:var(--ink);font-weight:700;font-size:var(--fs-12,12px)}
.bd-t tr.bd-sum td small{display:block;font-size:11px;color:var(--ink3)}
.bd-dist{display:flex;height:16px;border-radius:3px;overflow:hidden;gap:2px}
.bd-dist i{display:block;height:100%;min-width:3px}
.bd-tr{white-space:nowrap}
/* subitems */
.bd-t tr.bd-subr td{background:var(--paper2);height:auto;padding:4px 0 8px;cursor:default}
.bd-t tr.bd-subr td.bd-subtd{text-align:left;padding-left:22px;position:static}
.bd-subw{overflow:auto;max-width:calc(100vw - 420px);position:sticky;left:60px}
.bd-t.bd-subt{margin-left:0;border:1px solid var(--rule);border-radius:6px}
.bd-t.bd-subt th,.bd-t.bd-subt td{height:30px;font-size:11.5px}
.bd-t.bd-subt th{height:34px;position:static}
.bd-t.bd-subt .bd-nm{position:static;padding-left:8px}
.bd-t.bd-subt .bd-st{height:29px;line-height:29px}
.bd-t.bd-subt tbody tr[data-sid] td{cursor:pointer}
.bd-t.bd-subt tbody tr[data-sid] td.ro,.bd-t.bd-subt tbody tr[data-sid] td.bd-nm{cursor:default}
/* item side panel (fallback when js/boarditem.js is missing) */
.bd-panel{position:fixed;top:0;right:0;bottom:0;width:min(500px,100vw);background:var(--paper);color:var(--ink);border-left:1px solid var(--rule);box-shadow:var(--sh);z-index:55;display:flex;flex-direction:column}
.bd-ph{display:flex;align-items:flex-start;gap:10px;padding:16px 18px 4px}
.bd-pt{flex:1;font-size:18px;font-weight:800;word-break:break-word;letter-spacing:-.01em}
.bd-x{border:0;background:none;font-size:24px;line-height:1;color:var(--ink2);cursor:pointer;padding:0 4px;border-radius:6px}
.bd-x:hover{color:var(--ink);background:var(--hover)}
.bd-pm{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:2px 18px 12px;font-size:12px;color:var(--ink2);border-bottom:1px solid var(--rule)}
.bd-gp{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--ink)}
.bd-gp i{width:9px;height:9px;border-radius:50%;background:var(--gc)}
.bd-pb{flex:1;overflow:auto;padding:10px 18px 30px}
.bd-pl{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:6px 0 4px}
.bd-ps h4{margin:16px 0 6px}
.bd-f{display:grid;grid-template-columns:168px minmax(0,1fr);gap:12px;align-items:center;min-height:34px;border-bottom:1px solid var(--rule);padding:4px 0}
.bd-f label{font-size:12px;color:var(--ink2);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bd-fv{font-size:13px;min-width:0;overflow-wrap:anywhere;text-align:left}
.bd-fv .bd-st{display:inline-block;margin:0;height:auto;line-height:1.5;padding:3px 14px;border-radius:4px;max-width:100%}
.bd-fv .bd-dds,.bd-fv .bd-rel{justify-content:flex-start;flex-wrap:wrap}
.bd-fv .bd-tx.full{white-space:pre-wrap;overflow:visible}
.bd-fv.num{font-family:var(--font)}
.bd-rl{display:inline-block;margin:2px 10px 2px 0}
.bd-subs{margin:0;padding-left:18px}
.bd-subs li{margin:4px 0}
.bd-subs li .bd-dd{margin-left:8px}
.bd-pf{margin-top:18px;line-height:1.6}
.bd-panel .bd-subw{position:static;max-width:none;border:1px solid var(--rule);border-radius:8px;max-height:320px}
.bd-panel .bd-t tbody tr,.bd-panel .bd-t th{cursor:default}
/* menus (appended to body, bd- prefixed) */
.bd-pop{position:fixed;z-index:58;background:var(--paper);color:var(--ink);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--sh),0 12px 30px rgba(0,0,0,.14);padding:10px;width:310px;max-width:calc(100vw - 24px);max-height:min(520px,76vh);display:flex;flex-direction:column;gap:8px;overflow:auto;font-size:12.5px}
.bd-pop.k-filter{width:640px}
.bd-pop.k-sort{width:460px}
.bd-pop.k-views{width:300px;gap:2px}
.bd-pop.k-row,.bd-pop.k-group,.bd-pop.k-newin{width:250px}
.bd-ph2{font-weight:700;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bd-pl2{overflow:auto;display:flex;flex-direction:column;gap:1px;min-height:0}
.bd-o{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;border:0;background:none;font:inherit;font-size:12.5px;color:var(--ink);cursor:pointer;text-align:left;font-weight:500;width:100%}
.bd-o:hover{background:var(--hover)}
.bd-o.sel{background:var(--indigo-l)}
.bd-o:disabled{opacity:.55;cursor:default}
.bd-o input{margin:0}
.bd-o[hidden]{display:none}
.bd-pop .bd-danger{color:var(--red)}
.bd-osub{font:700 11px/1 var(--font,inherit);letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);padding:8px 6px 3px}
.bd-on{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bd-oc{font-size:11px;color:var(--ink3);font-variant-numeric:tabular-nums;white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.bd-pa{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.bd-pa .btn.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.bd-hn{font-size:11px;color:var(--ink3);margin-left:auto}
.bd-fsel,.bd-ssel,.bd-pq{width:100%}
.bd-pop select,.bd-pop input[type=text],.bd-pop input[type=number],.bd-pop input[type=date],.bd-pop input[type=search]{height:26px;font-size:12px;padding:0 6px;min-height:0}
/* filter builder */
.bd-fh{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.bd-fh b{font-size:13px;font-weight:800}
.bd-fm{font-size:11.5px;color:var(--ink2)}
.bd-fh a{font-size:12px;font-weight:700;color:var(--link,var(--ink));cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.bd-fh a.bd-fxx{text-decoration:none;color:var(--ink3)}
.bd-fr{display:flex;align-items:flex-start;gap:6px;margin-top:4px;flex-wrap:wrap}
.bd-cj{width:60px;flex:none;font-size:12px;color:var(--ink2);font-weight:600;padding-top:4px}
.bd-pop select.bd-cj{padding-top:0;color:var(--ink);font-weight:700}
.bd-pop select.bd-cj.or{background:var(--amber-l)}
.bd-pop .bd-c1{width:170px}
.bd-pop .bd-c2{width:120px}
.bd-c3{display:flex;flex-wrap:wrap;gap:4px;align-items:center;flex:1;min-width:150px;position:relative}
.bd-fg{flex:1;border:1px dashed var(--rule-hi,var(--rule));border-radius:7px;padding:4px 6px 6px;background:var(--paper2);min-width:0}
.bd-fq{border:0;background:none;color:var(--ink3);cursor:pointer;font-size:12px;padding:4px}
.bd-fq:hover{color:var(--red)}
.bd-fvb{height:26px;border:1px solid var(--rule);border-radius:6px;background:var(--field,var(--paper));color:var(--ink);font:inherit;font-size:12px;padding:0 8px;cursor:pointer;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bd-fvl{flex-basis:100%;max-height:180px;overflow:auto;border:1px solid var(--rule);border-radius:6px;padding:4px;background:var(--paper)}
.bd-pop .bd-fvt{width:100%}
/* saved views */
.bd-vh{display:flex;justify-content:space-between;align-items:center;font:700 11px/1 var(--font,inherit);letter-spacing:.02em;color:var(--ink3);padding:10px 6px 4px}
.bd-vh a,.bd-vh span{letter-spacing:0;text-transform:none;font-size:11.5px;font-weight:700;color:var(--link,var(--ink));cursor:pointer}
.bd-vh span{font-weight:500;color:var(--ink3);cursor:default}
.bd-vi{display:flex;align-items:center;gap:6px;min-height:28px;padding:0 6px;border-radius:6px;font-weight:600;cursor:pointer}
.bd-vi:hover{background:var(--hover)}
.bd-vi.on{background:var(--indigo-l)}
.bd-vi i{font-style:normal;font-weight:500;font-size:11px;color:var(--ink3);white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}
.bd-vx{border:0;background:none;color:var(--ink3);cursor:pointer;font-size:11px;padding:2px 4px;border-radius:4px;visibility:hidden}
.bd-vi:hover .bd-vx{visibility:visible}
.bd-vx:hover{color:var(--ink);background:var(--grey-l)}
.bd-ved{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:6px;border-radius:7px;background:var(--amber-l);font-size:12px;font-weight:600}
.bd-ved span{flex:1;min-width:120px}
.bd-vnone{padding:2px 8px 4px}
/* tooltip for read-only cells */
.bd-tip{position:fixed;z-index:58;background:var(--ink);color:var(--paper);font-size:11.5px;padding:6px 9px;border-radius:6px;box-shadow:0 6px 16px rgba(0,0,0,.2);max-width:360px;pointer-events:none}
/* bulk bar */
.bd-bulk{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:50;display:flex;align-items:stretch;height:52px;max-width:calc(100vw - 24px);background:var(--paper);border:1px solid var(--rule);border-radius:11px;box-shadow:0 14px 34px rgba(0,0,0,.2);overflow:hidden}
.bd-bn{width:50px;flex:none;display:grid;place-items:center;background:var(--brand,#BA0C2F);color:var(--brand-ink,#fff);font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}
.bd-bl{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 14px;border-right:1px solid var(--rule);min-width:0}
.bd-bl b{font-size:13px;font-weight:800;white-space:nowrap}
.bd-bl span{font-size:var(--fs-11,11px);color:var(--ink2);white-space:nowrap}
.bd-bulk button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;background:transparent;padding:0 10px;font:inherit;font-size:15px;color:var(--ink);cursor:pointer;min-width:64px;white-space:nowrap}
.bd-bulk button span{font-size:var(--fs-11,11px);font-weight:600;white-space:nowrap}
.bd-bulk button:hover{background:var(--hover)}
.bd-bulk .bd-bx{border-left:1px solid var(--rule);color:var(--ink3);font-size:13px}
/* small dialogs (inside #modal) */
.bd-mb{margin:6px 0 14px;font-size:13px}
.bd-mb p{margin:0 0 8px}
.bd-ml{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;margin:8px 0 14px}
.bd-mi{width:min(420px,80vw)}
.bd-ma{display:flex;justify-content:flex-end;gap:8px}
@media (max-width:1280px){
  .bd-tl .bd-tv{display:none}
  .bd-srch{width:190px}
}
@media (max-width:1180px){
  .bd-srch{width:170px}
  .bd-tl{padding:0 6px}
}
@media (max-width:900px){
  .bd-bulk button span,.bd-bl span{display:none}
  .bd-pop.k-filter{width:calc(100vw - 24px)}
  .bd-pop .bd-c1{width:140px}
}
@media (max-width:760px){
  .bd-f{grid-template-columns:1fr;gap:2px}
  .bd-srch{width:100%}
  .bd-wrap{max-height:calc(100vh - 170px)}
  .bd-tv{display:none}
}

/* round 10 fix: numbers in the body font, lined up */
.bd-r,.bd-fv.num{font-variant-numeric:tabular-nums}
/* round 10 fix: every control is at least 26 px */
.bd-chev{width:26px;height:26px}.bd-gm{height:26px;min-width:26px}.bd-sx,.bd-sx0{width:24px;height:26px}
.bd-grp.shut.gnone{margin:0 0 2px}
/* round 10 fix: at 1024 the toolbar fits one row (no icons on the text buttons) and the search hint shows in full */
@media (max-width:1180px){.bd-tools .bd-tl svg{display:none}.bd-srch{width:236px}.bd-vsw{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media (max-width:1500px){.bd-tools:has(.bd-vslot:not(:empty)) .bd-tl svg{display:none}}   /* a view picker (Date / Bars) in the row: text-only buttons so "Default columns" stays on the row */
.bd-tr{display:inline-flex;align-items:center;gap:6px;margin-left:auto;flex-wrap:nowrap;max-width:100%}   /* round 10 fix: the right-hand group wraps whole, never "Default columns" alone */
