/* MCRUSH PE — Next Gen Reports workspace. Author: Gildas Guefack.
   Builds on workspace-explorer.css (same toolbar, table, cards, MCRUSH view, drawer). Tokens only;
   every state and file status is an icon + a word, never colour alone. */
#rptExplorer{margin:0 0 22px}
#rptExplorer .wsx-st,.rpx-drawer .wsx-st,#rptExplorer .wsx-well-h small,#rptExplorer .wsx-node-t{text-transform:none}
.rpx-mods{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin:0 0 18px}
.rpx-mod{display:flex;flex-direction:column;gap:9px;text-align:left;padding:14px 15px 13px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:13px;
  background:var(--card);color:var(--ink);font:inherit;cursor:pointer;min-width:0;transition:border-color .15s,box-shadow .15s}
.rpx-mod:hover{border-color:color-mix(in srgb,var(--blue) 45%,var(--line))}
.rpx-mod:focus-visible{outline:2px solid color-mix(in srgb,var(--blue) 55%,transparent);outline-offset:2px}
.rpx-mod.on{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.rpx-mod.all{background:color-mix(in srgb,var(--ink) 3%,var(--card))}
.rpx-mod-h{display:flex;align-items:center;gap:8px;min-height:28px}
.rpx-mod-h b{flex:1;font-size:14px;font-weight:700;letter-spacing:-.01em}
.rpx-mod-n{display:flex;gap:16px;flex-wrap:wrap}
.rpx-mod-n>span{display:flex;flex-direction:column;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.rpx-mod-n>span b{font-family:"Geist Mono",ui-monospace,monospace;font-size:21px;font-weight:700;letter-spacing:0;text-transform:none;color:var(--ink);line-height:1.15}
.rpx-mod-n>span.hot b{color:var(--amber)}
.rpx-mod-n>span.rdy b{color:var(--blue)}
.rpx-mod-need{font-size:11.5px}
.rpx-mod-r{font-size:12px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.rpx-ws-h{margin:0 0 10px;font-size:16px;font-weight:750;letter-spacing:-.01em}
.rpx-hint{font-size:12.5px}
/* file chips: Word ✓  PDF ✕ */
.rpx-outs{display:inline-flex;gap:4px;flex-wrap:wrap}
.rpx-out{display:inline-flex;align-items:center;gap:4px;height:21px;padding:0 8px 0 6px;border-radius:6px;font-size:11px;font-weight:750;white-space:nowrap;
  color:var(--oc);background:color-mix(in srgb,var(--oc) 11%,transparent);border:1px solid color-mix(in srgb,var(--oc) 28%,transparent)}
.rpx-out i{font-style:normal;font-size:10px}
.rpx-out.o-success{--oc:var(--green)}
.rpx-out.o-failed,.rpx-out.o-blocked{--oc:var(--red)}
.rpx-out.o-missing{--oc:var(--muted)}
.rpx-out.opt{border-style:dashed}
/* section progress */
.rpx-prog{display:inline-flex;align-items:center;gap:7px;min-width:92px}
.rpx-prog>span{flex:1;height:5px;min-width:48px;border-radius:5px;background:color-mix(in srgb,var(--ink) 10%,transparent);overflow:hidden}
.rpx-prog>span i{display:block;height:100%;background:var(--blue);border-radius:5px}
.rpx-prog b{font-size:11.5px;font-weight:600;color:var(--muted);min-width:32px;text-align:right}
.rpx-table .c-progress{width:130px}
.rpx-card-st{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rpx-card-st .rpx-prog{flex:1}
.rpx-card-o{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11.5px}
.rpx-kind{font-size:11.5px;color:var(--muted);margin-top:-4px}
.wsx-c-attn.bad{color:var(--red)}
.rpx-small{font-size:11.5px}
.wsx-mnode-b .rpx-prog{width:100%}
.rpx-secs li{display:block;padding:6px 9px;border-radius:8px;background:color-mix(in srgb,var(--ink) 3%,transparent)}
.rpx-secs li b{font-weight:700}
.rpx-secs li.sec-ok b{color:var(--green)}
.rpx-secs li.sec-partial b,.rpx-secs li.sec-warning b{color:var(--amber)}
.rpx-secs li.sec-missing b{color:var(--red)}
.rpx-secs li.adv b{color:var(--muted)}
.rpx-drawer>.wsx-dr-b>.rpx-outs{margin-top:-2px}
.rpx-tools-h{margin:6px 0 10px;font-size:16px;font-weight:750;letter-spacing:-.01em}
body:not(.rpx-on) .rpx-tools-h{display:none}
@media (max-width:1180px){.rpx-table .c-revision,.rpx-table .c-owner{display:none}}
#rptExplorer .wsx-search input{background:none!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;outline:0}
/* build 1207: saved views */
#rptExplorer .wsx-vbtn{border:.5px solid var(--line);background:var(--card);color:var(--ink);font:inherit;font-size:12.5px;font-weight:700;height:36px;padding:0 12px;border-radius:10px;cursor:pointer;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis;flex:0 0 auto}
#rptExplorer .wsx-vbtn:hover,#rptExplorer .wsx-vbtn.on{border-color:var(--blue);color:var(--blue)}
.rpx-vmenu{min-width:240px;max-width:min(340px,calc(100vw - 16px))}
.rpx-vmenu .rpx-vrow{display:flex;align-items:stretch;gap:2px}
.rpx-vmenu .rpx-vrow>button:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}
.rpx-vmenu .rpx-vrow>button.on{color:var(--blue);font-weight:800}
.rpx-vmenu .rpx-vdel{flex:0 0 auto;width:34px;color:var(--muted)}
.rpx-vmenu .rpx-vdel:hover{color:var(--red)}
.rpx-vmenu .rpx-vnone{margin:6px 10px 8px;font-size:12px;color:var(--muted);max-width:280px}
.rpx-vmenu .rpx-vsave{border-top:.5px solid var(--line)!important;margin-top:4px;color:var(--blue)}
@media (max-width:760px){
  #rptExplorer .wsx-tb2{grid-template-columns:1fr auto auto}
  #rptExplorer .wsx-vbtn{max-width:44vw}
  .rpx-mods{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -2px 14px;padding:2px}
  .rpx-mods::-webkit-scrollbar{display:none}
  .rpx-mod{flex:0 0 min(78%,300px);scroll-snap-align:start;padding:11px 12px 10px;gap:6px}
  .rpx-mod-need,.rpx-mod-r{display:none}
  .rpx-mod-n{gap:10px}
  .rpx-mod-n>span b{font-size:17px}
  .rpx-table .c-well,.rpx-table .c-progress,.rpx-table .c-attention,.rpx-table .c-fav{display:none}
  .rpx-table .c-name{min-width:128px}
  .rpx-table td.c-state,.rpx-table td.c-outputs{padding-left:4px;padding-right:4px}
  .rpx-hint{padding:8px 12px}
  #rptExplorer .wsx-crumb{flex-basis:100%}
}
.rpx-well-hint{display:block;min-height:15px;margin:3px 0 2px;font-size:11.5px;color:var(--muted)}   /* build 1221 */

/* build 1252: the review sheet, the issued PDF and the page comparison in the drawer — tokens only */
.rpx-rev{flex-wrap:wrap}
.rpx-rev label.wsx-btn{cursor:pointer}
.rpx-pages{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0 8px}
.rpx-page{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 6px;border-radius:7px;border:1px solid var(--line);background:var(--bg);font:650 11px/1 'Geist Mono',ui-monospace,monospace;color:var(--muted);cursor:default}
.rpx-page.same{border-color:color-mix(in srgb,var(--green) 40%,var(--line));color:color-mix(in srgb,var(--green) 80%,var(--ink));background:color-mix(in srgb,var(--green) 8%,var(--bg))}
.rpx-page.changed{border-color:color-mix(in srgb,var(--amber) 70%,var(--line));color:color-mix(in srgb,var(--amber) 85%,var(--ink));background:color-mix(in srgb,var(--amber) 14%,var(--bg))}
.rpx-page.added{border-color:var(--red);color:var(--red);background:color-mix(in srgb,var(--red) 10%,var(--bg))}
.rpx-legend{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:11.5px;color:var(--muted);margin:0 0 4px}
.rpx-legend .rpx-page{min-width:22px;height:20px}
