/* JKV_WEB_R42_20260928 - Control room styling. Own namespace: nothing outside #jkvcrRoot / #jkvcrOpen is touched. */
#jkvcrOpen{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:5500;
  min-height:46px;padding:0 18px;border:0;border-radius:999px;background:#0D2B5B;color:#fff;
  font:inherit;font-size:13.5px;font-weight:800;cursor:pointer;box-shadow:0 10px 24px rgba(13,43,91,.28)}
#jkvcrOpen:hover{background:#123a78}
#jkvcrRoot{position:fixed;inset:0;z-index:6000;background:#f6f7fb;overflow:auto;
  --jkvcr-green:#00c875;--jkvcr-amber:#fdab3d;--jkvcr-red:#e2445c;--jkvcr-sky:#579bfc;--jkvcr-blue:#0073ea;--jkvcr-grey:#c3c9d4}
#jkvcrRoot *{box-sizing:border-box}
.jkvcr-shell{min-height:100%;display:flex;flex-direction:column;font-family:inherit;color:#323338}
.jkvcr-top{display:flex;align-items:center;gap:14px;padding:16px 22px;background:#0D2B5B;color:#fff}
.jkvcr-top>div{display:flex;flex-direction:column;gap:2px}
.jkvcr-eyebrow{font-size:10.5px;letter-spacing:.12em;font-weight:800;color:#9dc0ee}
.jkvcr-top b{font-size:20px;font-weight:800}
.jkvcr-top small{font-size:12px;color:#cfe0f7}
.jkvcr-live{margin-left:auto;display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.14);font-size:12px;font-weight:700}
.jkvcr-close{min-height:40px;padding:0 16px;border-radius:8px;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.jkvcr-body{padding:18px 22px 28px;display:flex;flex-direction:column;gap:14px}
.jkvcr-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.jkvcr-kpi{background:#fff;border:1px solid #e6e9ef;border-radius:10px;padding:13px 15px;display:flex;flex-direction:column;gap:2px}
.jkvcr-kpi-l{font-size:11.5px;font-weight:600;color:#676879}
.jkvcr-kpi b{font-size:26px;font-weight:800;color:#323338}
.jkvcr-kpi b small{font-size:14px;color:#9699a6;font-weight:600}
.jkvcr-kpi-n{font-size:11px;color:#676879}
.jkvcr-kpi.green b{color:#00854d}.jkvcr-kpi.amber b{color:#b26b00}.jkvcr-kpi.red b{color:#c2344a}
.jkvcr-group{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:800;margin-top:6px}
.jkvcr-group small{font-size:11.5px;font-weight:600;color:#9699a6}
.jkvcr-group.jkvcr-red{color:#e2445c}.jkvcr-group.jkvcr-green{color:#00a35c}.jkvcr-group.jkvcr-grey{color:#676879}
.jkvcr-table{background:#fff;border:1px solid #e6e9ef;border-radius:10px;overflow:hidden}
.jkvcr-grid,.jkvcr-row{display:grid;grid-template-columns:250px 150px 1fr 110px 80px 96px;align-items:stretch}
.jkvcr-head span{font-size:11.5px;font-weight:600;color:#676879;padding:10px 14px;border-bottom:1px solid #e6e9ef}
.jkvcr-row{border-bottom:1px solid #f2f5f9;cursor:pointer}
.jkvcr-row:hover{background:#f8f9fc}
.jkvcr-cell{padding:10px 14px;display:flex;align-items:center;gap:10px;min-width:0}
.jkvcr-who{border-left:5px solid #c3c9d4}
.jkvcr-who span{display:flex;flex-direction:column;min-width:0}
.jkvcr-who b{font-size:13.5px;font-weight:700;color:#323338;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jkvcr-who small{font-size:11px;color:#9699a6}
.jkvcr-av{width:34px;height:34px;min-width:34px;border-radius:50%;color:#fff;font-size:11.5px;font-weight:800;display:flex;align-items:center;justify-content:center}
.jkvcr-av-l{width:44px;height:44px;min-width:44px;font-size:14px}
.jkvcr-status{justify-content:center;color:#fff;font-size:12px;font-weight:700;text-align:center}
.jkvcr-job{flex-direction:column;align-items:flex-start;gap:2px}
.jkvcr-job b{font-size:13px;font-weight:600;color:#323338}
.jkvcr-job small{font-size:11.5px;color:#676879}
.jkvcr-timer{justify-content:center;font-size:14px;font-weight:800}
.jkvcr-closed{justify-content:center;font-size:14px;font-weight:700;color:#323338}
.jkvcr-btn{min-height:34px;padding:0 12px;border-radius:6px;border:1px solid #d0d4e4;background:#fff;color:#323338;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.jkvcr-btn:hover{border-color:#0073ea;color:#0073ea}
.jkvcr-side{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.jkvcr-card{background:#fff;border:1px solid #e6e9ef;border-radius:10px;padding:14px 16px}
.jkvcr-card-h{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:#323338;padding-bottom:6px}
.jkvcr-act{display:flex;gap:10px;padding:8px 0;border-top:1px solid #f0f2f6;align-items:flex-start}
.jkvcr-act-t{font-size:11.5px;font-weight:700;color:#9699a6;width:70px;flex:0 0 70px}
.jkvcr-act-x{font-size:12.5px;color:#323338}
.jkvcr-dot{width:9px;height:9px;border-radius:50%;margin-top:5px;flex:0 0 9px}
.jkvcr-empty{font-size:12.5px;color:#676879;padding:8px 0}
.jkvcr-detail-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.jkvcr-detail-head>div{display:flex;flex-direction:column}
.jkvcr-detail-head b{font-size:20px;font-weight:800;color:#323338}
.jkvcr-detail-head small{font-size:12px;color:#676879}
.jkvcr-detail-head .jkvcr-status{border-radius:6px;padding:7px 12px}
.jkvcr-back{min-height:38px;padding:0 12px;border-radius:6px;border:1px solid #d0d4e4;background:#fff;color:#676879;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}
.jkvcr-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.jkvcr-job-line{background:#f6f7fb;border:1px solid #e6e9ef;border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.jkvcr-job-line b{font-size:13.5px;font-weight:700}
.jkvcr-job-line small{font-size:11.5px;color:#676879}
.jkvcr-stages{display:flex;flex-direction:column}
.jkvcr-stage{position:relative;padding:0 0 14px 28px}
.jkvcr-stage::before{content:"";position:absolute;left:0;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #cfdceb;box-sizing:border-box}
.jkvcr-stage::after{content:"";position:absolute;left:7px;top:19px;bottom:-2px;width:2px;background:#e6e9ef}
.jkvcr-stage:last-child::after{display:none}
.jkvcr-stage.done::before{background:#00c875;border-color:#00c875}
.jkvcr-stage.done::after{background:#00c875}
.jkvcr-stage.current::before{border-color:#0073ea;box-shadow:0 0 0 3px rgba(0,115,234,.18)}
.jkvcr-stage b{display:block;font-size:13px;font-weight:700;color:#323338}
.jkvcr-stage small{font-size:11.5px;color:#676879}
.jkvcr-stage.current b{color:#0073ea}
.jkvcr-rev{border-top:1px solid #f0f2f6;padding:9px 0}
.jkvcr-rev div{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.jkvcr-rev b{font-size:12.5px;font-weight:700}
.jkvcr-rev small{font-size:11.5px;color:#9699a6}
.jkvcr-rev p{margin:4px 0 0;font-size:12.5px;color:#676879;line-height:1.45}
.jkvcr-stars{color:#fdab3d;font-size:13px}
.jkvcr-bg-green{background:#00c875}.jkvcr-bg-amber{background:#fdab3d}.jkvcr-bg-red{background:#e2445c}
.jkvcr-bg-sky{background:#579bfc}.jkvcr-bg-blue{background:#0073ea}.jkvcr-bg-grey{background:#c3c9d4}
.jkvcr-fg-green{color:#00854d}.jkvcr-fg-amber{color:#b26b00}.jkvcr-fg-red{color:#c2344a}
.jkvcr-fg-sky{color:#1f76e0}.jkvcr-fg-blue{color:#0073ea}.jkvcr-fg-grey{color:#676879}
@media (max-width:900px){
  .jkvcr-grid.jkvcr-head{display:none}
  .jkvcr-row{grid-template-columns:1fr;border-bottom:8px solid #f6f7fb}
  .jkvcr-cell{padding:8px 12px}
  .jkvcr-who{border-left-width:5px}
  .jkvcr-status{justify-content:flex-start;padding:8px 12px}
  .jkvcr-timer,.jkvcr-closed{justify-content:flex-start}
  .jkvcr-closed::before{content:"Closed today: ";font-size:11.5px;color:#9699a6;font-weight:600;margin-right:6px}
  .jkvcr-open .jkvcr-btn{width:100%}
  .jkvcr-two{grid-template-columns:minmax(0,1fr)}
  .jkvcr-body{padding:14px 12px 24px}
  .jkvcr-top{padding:12px 14px}
}

/* JKV_WEB_R43_20260928 - tabs, history, time log and reports inside the control room */
.jkvcr-tabs{display:flex;gap:4px;padding:0 22px;background:#0D2B5B;flex-wrap:wrap}
.jkvcr-tab{min-height:44px;padding:0 16px;border:0;background:transparent;color:#cfe0f7;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;border-bottom:3px solid transparent}
.jkvcr-tab:hover{color:#fff}
.jkvcr-tab.on{color:#fff;border-bottom-color:#fdab3d}
.jkvcr-grid.jkvcr-h6,.jkvcr-row.jkvcr-h6{grid-template-columns:230px 140px minmax(0,1fr) 230px 150px 170px 110px}
.jkvcr-battery{display:flex;height:26px;border-radius:6px;overflow:hidden;background:#eceff3;margin:4px 0 8px}
.jkvcr-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:11.5px;font-weight:700}
.jkvcr-bar{display:flex;align-items:center;gap:10px;padding:5px 0}
.jkvcr-bar-n{font-size:12.5px;color:#323338;width:150px;flex:0 0 150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jkvcr-bar-t{flex:1;height:12px;border-radius:6px;background:#eceff3;overflow:hidden}
.jkvcr-bar-t i{display:block;height:100%;background:#0073ea}
.jkvcr-bar b{font-size:12.5px;width:34px;text-align:right}
@media (max-width:900px){
  .jkvcr-row.jkvcr-h6{grid-template-columns:1fr}
  .jkvcr-tabs{padding:0 10px}
  .jkvcr-tab{padding:0 12px;font-size:12.5px}
  .jkvcr-bar-n{width:110px;flex:0 0 110px}
}

/* JKV_WEB_R44_20260928 - work order desk: filters, chips, breakdown */
.jkvcr-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:2px 0 4px}
.jkvcr-in{min-height:38px;border:1px solid #d0d4e4;border-radius:6px;padding:0 10px;font:inherit;font-size:12.5px;color:#323338;background:#fff}
#jkvcrQ{min-width:320px;flex:1 1 320px}
.jkvcr-lab{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:#676879}
.jkvcr-spacer{flex:1 1 auto}
.jkvcr-chips{display:flex;gap:6px;flex-wrap:wrap;margin:2px 0 6px}
.jkvcr-chip{min-height:34px;padding:0 12px;border:1px solid #d0d4e4;border-radius:999px;background:#fff;color:#323338;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.jkvcr-chip i{font-style:normal;font-size:11px;font-weight:800;color:#676879;background:#eceff3;border-radius:999px;padding:1px 7px}
.jkvcr-chip.on{background:#0D2B5B;border-color:#0D2B5B;color:#fff}
.jkvcr-chip.on i{background:rgba(255,255,255,.22);color:#fff}
.jkvcr-row-break{background:#fbfcfe;border-bottom:1px solid #e6e9ef;padding:14px 16px}
.jkvcr-break{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.jkvcr-break-h{font-size:11px;letter-spacing:.06em;font-weight:800;color:#9699a6;text-transform:uppercase;padding-bottom:6px}
.jkvcr-kv{display:flex;gap:10px;padding:5px 0;border-top:1px solid #f0f2f6;font-size:12.5px}
.jkvcr-kv>span{flex:0 0 38%;color:#676879;font-weight:600}
.jkvcr-kv>b{font-weight:600;color:#323338;overflow-wrap:anywhere}
.jkvcr-kv>b small{color:#9699a6;font-weight:600}
.jkvcr-kv-block{flex-direction:column;gap:2px}
.jkvcr-kv-block>span{flex:none}
.jkvcr-ok{color:#00854d;font-weight:700}
.jkvcr-no{color:#9699a6;font-weight:600}
.jkvcr-mini .jkvcr-stage{padding:0 0 10px 24px}
.jkvcr-mini .jkvcr-stage::before{width:13px;height:13px}
.jkvcr-mini .jkvcr-stage::after{left:5.5px;top:15px}
.jkvcr-mini .jkvcr-stage b{font-size:12px}
.jkvcr-mini .jkvcr-stage small{font-size:11px}
@media (max-width:900px){
  .jkvcr-break{grid-template-columns:minmax(0,1fr)}
  #jkvcrQ{min-width:0;flex:1 1 100%}
  .jkvcr-filters .jkvcr-btn{flex:1 1 30%}
}
@media print{
  #jkvcrOpen,.jkvcr-top,.jkvcr-tabs,.jkvcr-filters,.jkvcr-chips,.jkvcr-btn{display:none!important}
  #jkvcrRoot{position:static;overflow:visible}
  .jkvcr-row,.jkvcr-table{break-inside:avoid}
}

/* JKV_WEB_R45_20260928 - team board and day time log */
.jkvcr-tb{background:#fff;border:1px solid #e6e9ef;border-radius:10px;overflow-x:auto}
.jkvcr-tb-row{display:grid;grid-template-columns:190px 130px minmax(360px,1fr) 70px 96px 92px 88px 104px 92px 130px;align-items:center;border-bottom:1px solid #f2f5f9;min-width:1180px}
.jkvcr-tb-head{border-bottom:1px solid #e6e9ef}
.jkvcr-tb-head>span{font-size:11px;font-weight:600;color:#676879;padding:9px 10px;text-align:center}
.jkvcr-tb-head>span:first-child,.jkvcr-tb-head>span:nth-child(2){text-align:left}
.jkvcr-tb-who{display:flex;flex-direction:column;gap:1px;padding:9px 12px;border-left:5px solid #c3c9d4}
.jkvcr-tb-who b{font-size:13px;font-weight:700;color:#323338}
.jkvcr-tb-who small{font-size:10.5px;color:#9699a6}
.jkvcr-tb-row>.jkvcr-status{align-self:stretch;display:flex;align-items:center;justify-content:center;font-size:11.5px}
.jkvcr-hrs{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;padding:8px 10px}
.jkvcr-hr{font-size:9.5px;color:#9699a6;text-align:center}
.jkvcr-blk{height:22px;border-radius:5px;background:#eceff3;display:block}
.jkvcr-blk-green{background:#00c875}.jkvcr-blk-amber{background:#fdab3d}.jkvcr-blk-red{background:#e2445c}
.jkvcr-blk-sky{background:#579bfc}.jkvcr-blk-idle{background:#eceff3}
.jkvcr-n{text-align:center;font-size:12.5px;font-weight:700;color:#323338;padding:8px 6px}
.jkvcr-util{padding:8px 10px;display:flex;flex-direction:column;gap:3px}
.jkvcr-util i{display:block;height:14px;border-radius:7px;background:#00c875;min-width:6px}
.jkvcr-util small{font-size:10px;color:#9699a6}
.jkvcr-tb-total{background:#fafbfd;border-top:2px solid #e6e9ef}
.jkvcr-note{font-size:11px;color:#9699a6;display:block;padding:10px}
.jkvcr-hrs-wide{grid-template-columns:repeat(12,minmax(0,1fr));padding:4px 0}
.jkvcr-band{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px}
.jkvcr-band .jkvcr-blk{height:34px;border-radius:6px}
.jkvcr-grid.jkvcr-h7,.jkvcr-row.jkvcr-h7{grid-template-columns:200px minmax(0,1fr) 92px 96px 92px 92px 100px}
.jkvcr-grid.jkvcr-h4,.jkvcr-row.jkvcr-h4{grid-template-columns:minmax(0,1fr) 70px 120px 110px}
.jkvcr-row-note{font-size:11.5px;padding:7px 14px;border-bottom:1px solid #f2f5f9}
.jkvcr-note-red{background:#fff5f4;color:#c2344a}
.jkvcr-note-sky{background:#f5f9ff;color:#1f76e0}
@media (max-width:900px){
  .jkvcr-row.jkvcr-h7,.jkvcr-row.jkvcr-h4{grid-template-columns:1fr}
  .jkvcr-tb{overflow-x:auto}
  .jkvcr-band .jkvcr-blk{height:26px}
}

/* JKV_WEB_R46_20260929 - sortable headers, responsibility column, refresh */
.jkvcr-sort{display:flex;align-items:center;justify-content:flex-start;gap:6px;width:100%;min-height:38px;padding:9px 14px;border:0;border-bottom:1px solid #e6e9ef;background:#fff;color:#676879;font:inherit;font-size:11.5px;font-weight:600;cursor:pointer;text-align:left}
.jkvcr-sort:hover{color:#0073ea}
.jkvcr-sort i{font-style:normal;font-size:9.5px;color:#c3c9d4}
.jkvcr-sort.on{color:#0073ea}
.jkvcr-sort.on i{color:#0073ea}
.jkvcr-org{display:flex;flex-direction:column;gap:1px;padding:10px 14px;background:#fafbfd}
.jkvcr-org b{font-size:12.5px;font-weight:700;color:#323338}
.jkvcr-org small{font-size:11px;color:#676879}
[data-refresh]{display:inline-flex;align-items:center;gap:6px}
[data-refresh][disabled]{opacity:.6;cursor:progress}
@media (max-width:900px){.jkvcr-sort{border-bottom:0;padding:6px 10px}.jkvcr-org{background:transparent;padding:6px 14px}}

/* JKV_WEB_R47_20260929 - contact links in the breakdown */
.jkvcr-kv a{color:#0073ea;font-weight:700;text-decoration:none}
.jkvcr-kv a:hover{text-decoration:underline}
.jkvcr-sep{color:#c3c9d4}

/* JKV_WEB_R48_20260929 - receipt is not a quotation */
.jkvcr-rcpt{color:#676879;font-weight:700}
.jkvcr-gst{display:inline-block;padding:1px 7px;border-radius:999px;background:#eef4fb;color:#1f76e0;font-size:10.5px;font-weight:800}

/* JKV_WEB_R50_20260929 - four desks */
.jkvcr-desks{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:4px 0 8px}
.jkvcr-desk{text-align:left;padding:11px 14px;border:1px solid #d0d4e4;border-radius:10px;background:#fff;color:#323338;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:3px}
.jkvcr-desk b{font-size:13.5px;font-weight:700;display:flex;align-items:center;gap:8px}
.jkvcr-desk i{font-style:normal;font-size:11.5px;font-weight:800;color:#676879;background:#eceff3;border-radius:999px;padding:1px 9px}
.jkvcr-desk small{font-size:11px;color:#9699a6}
.jkvcr-desk:hover{border-color:#0073ea}
.jkvcr-desk.on{background:#0D2B5B;border-color:#0D2B5B;color:#fff}
.jkvcr-desk.on i{background:rgba(255,255,255,.22);color:#fff}
.jkvcr-desk.on small{color:#cfe0f7}
.jkvcr-attn{margin:0 0 8px;padding:9px 12px;border:1px solid #f3c4bd;background:#fff5f4;border-radius:8px;font-size:12px;font-weight:600;color:#c2344a}

/* JKV_WEB_R50_20260929 - document buttons in the breakdown */
.jkvcr-docs{display:flex;gap:8px;flex-wrap:wrap}
.jkvcr-docs .jkvcr-btn{min-height:32px;font-size:11.5px}
