/* 📅 Kalendarze v2 (handover.js). Плотно, как «Диспетчерская»: мелкий текст, моно-цифры, цвет только у предупреждений.
   Цвета — переменные темы (светлая / тёмная). Тапы ≥ 44 px. Телефон: один оценщик; ≥ 900 px — колонки всех. */
.topbar .ho-entry{margin-left:auto;white-space:nowrap;}
.topbar .ho-entry ~ .erp-entry{margin-left:0;}
@media (max-width:520px){ #screen-manager .topbar:has(.ho-entry){flex-wrap:wrap;} }
html.hc-lock,html.hc-lock body{overflow:hidden;}

#hoModal{position:fixed;inset:0;z-index:1200;display:none;background:var(--bg);color:var(--text);}
#hoModal.on{display:block;}
#hoModal button{font-family:inherit;color:inherit;}
#hoModal .hc{height:100%;overflow:auto;overscroll-behavior:contain;padding:0 14px calc(env(safe-area-inset-bottom,0px) + 24px);
  display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.35;max-width:1600px;margin:0 auto;}
.hc>*{flex-shrink:0;}
.hc-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:3;background:var(--bg);padding:12px 0 6px;}
.hc-hd h2{margin:0;font-size:18px;}
.hc-x{width:44px;height:44px;border-radius:12px;border:1px solid var(--border);background:var(--panel);font-size:16px;cursor:pointer;flex-shrink:0;}
.hc-nav{display:flex;align-items:center;gap:6px;width:100%;max-width:560px;}
.hc-arr{width:44px;height:44px;border-radius:12px;border:1.5px solid var(--border);background:var(--panel);font-size:18px;font-weight:700;cursor:pointer;flex-shrink:0;}
.hc-date{position:relative;flex:1;min-width:0;height:44px;margin:0;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1.5px solid var(--border);
  background:var(--panel);font-weight:800;font-size:15px;color:var(--text);cursor:pointer;}
.hc-date input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;border:0;padding:0;}
.hc-today{min-height:44px;flex-shrink:0;}
#hoModal .mg-chip.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent);}
#hoModal .mg-chip small{opacity:.7;font-family:'JetBrains Mono',ui-monospace,monospace;margin-left:2px;}
.hc-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 0;}
.hc-chips::-webkit-scrollbar{display:none;}
.hc-chips .mg-chip{flex-shrink:0;min-height:40px;display:inline-flex;align-items:center;gap:4px;}
.hc-dot{width:8px;height:8px;border-radius:50%;background:var(--err);display:inline-block;}

.hc-board{display:grid;grid-template-columns:repeat(var(--hc-n,4),minmax(230px,1fr));gap:10px;overflow-x:auto;align-items:start;padding-bottom:4px;}
.hc-col{background:var(--panel);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;min-width:0;}
.hc-col.over{outline:2px dashed var(--accent);outline-offset:-2px;background:var(--panel2);}
.hc-ch{padding:10px 12px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:4px;}
.hc-nm{font-weight:800;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.hc-nm small{font-weight:500;color:var(--text-dim);font-size:12px;}
.hc-sub{font-size:12.5px;color:var(--text-dim);font-variant-numeric:tabular-nums;}
.hc-sub b{color:var(--text);}
.hc-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px;}
.hc-b{flex:1 1 auto;min-height:40px;padding:6px 10px;border-radius:10px;border:1.5px solid var(--border);background:var(--panel2);font-weight:700;font-size:12.5px;cursor:pointer;line-height:1.2;}
.hc-b:disabled{opacity:.45;cursor:default;}
.hc-list{display:flex;flex-direction:column;}
.hc-v{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"t a" "t e";column-gap:10px;align-items:center;text-align:left;width:100%;
  min-height:48px;padding:8px 12px;border:0;border-top:1px solid var(--border);background:transparent;cursor:pointer;font-size:13.5px;}
.hc-v:first-child{border-top:0;}
.hc-v:hover{background:var(--panel2);}
.hc-v[draggable]{cursor:grab;}
.hc-v.drag{opacity:.4;}
.hc-v.off{color:var(--text-dim);cursor:default;}
.hc-v.off:hover{background:transparent;}
.hc-v.clash{background:var(--err-bg);box-shadow:inset 3px 0 0 var(--err);}
.hc-tm{grid-area:t;display:flex;flex-direction:column;align-items:flex-start;gap:2px;}
.hc-tm b{font-family:'JetBrains Mono',ui-monospace,monospace;font-variant-numeric:tabular-nums;font-size:13.5px;}
.hc-v.clash .hc-tm b{color:var(--err);}
.hc-min{font-style:normal;font-size:10.5px;font-weight:800;padding:0 5px;border-radius:5px;border:1px solid var(--border);color:var(--text-dim);font-family:'JetBrains Mono',ui-monospace,monospace;}
.hc-ad{grid-area:a;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.hc-ad small{display:block;font-size:11.5px;color:var(--text-dim);}
.hc-v em{grid-area:e;font-style:normal;font-size:11.5px;color:var(--text-dim);}
.hc-v em.hc-xc{color:var(--err);font-weight:800;}
.hc-red{color:var(--err);font-weight:700;}
.hc-empty{margin:0;padding:14px 12px;color:var(--text-dim);font-size:13px;}
.hc-dim{color:var(--text-dim);font-size:13px;margin:0;padding:6px 0;}

.hc-res{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:12px;background:var(--ok-bg);font-size:13.5px;}
.hc-res>div{flex:1 1 220px;}
.hc-res.warn{background:var(--warn-bg);}
.hc-res.bad{background:var(--err-bg);color:var(--err);font-weight:700;}
.hc-res small{color:var(--text-dim);}
.hc-undo{min-height:40px;padding:6px 12px;border-radius:10px;border:1.5px solid var(--border);background:var(--panel);font-weight:700;font-size:13px;cursor:pointer;white-space:nowrap;flex-shrink:0;}
.hc-undo:disabled{opacity:.5;}

.hc-jn{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin-top:4px;}
.hc-jn h3{margin:0 0 4px;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);font-weight:800;}
.hc-jr{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--border);font-size:13px;}
.hc-jr:first-of-type{border-top:0;}
.hc-jr.off{color:var(--text-dim);}
.hc-jr.off b{text-decoration:line-through;font-weight:600;}
.hc-jt{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:12px;color:var(--text-dim);flex-shrink:0;}
.hc-jx{flex:1;min-width:0;}
.hc-jx small{color:var(--text-dim);}

.hc-pk{position:fixed;inset:0;z-index:5;display:flex;align-items:flex-end;justify-content:center;background:rgba(10,8,4,.55);}
.hc-pkb{background:var(--bg);width:100%;max-width:520px;max-height:85vh;max-height:85dvh;overflow:auto;border-radius:16px 16px 0 0;padding:12px 14px calc(env(safe-area-inset-bottom,0px) + 16px);
  display:flex;flex-direction:column;gap:6px;}
@media (min-width:700px){ .hc-pk{align-items:center;} .hc-pkb{border-radius:16px;} }
.hc-pkh{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:4px;}
.hc-pkh h3{margin:0;font-size:17px;}
.hc-pkh p{margin:2px 0 0;font-size:13px;color:var(--text-dim);}
.hc-pr{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:56px;padding:10px 12px;border-radius:12px;border:1.5px solid var(--border);
  background:var(--panel);text-align:left;cursor:pointer;font-size:14px;}
.hc-pr:hover{border-color:var(--accent);}
.hc-pr:disabled{opacity:.5;}
.hc-pn{font-weight:800;font-size:15px;}
.hc-pl{font-size:12.5px;color:var(--text-dim);font-variant-numeric:tabular-nums;}
.hc-pr .hc-red{font-size:12.5px;}
