.kzc{--b:#0f6f8c;--l:#e8f2f6;--g:#5b7c99;font-size:16px;line-height:1.5;margin:1.2em 0;color:#1a1a1a}
.kzc *{box-sizing:border-box}
.kzc-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.6em;margin-bottom:.8em}
.kzc-f{display:flex;flex-direction:column;font-size:.85em;color:#5c6b75}
.kzc-f select,.kzc-f input{padding:.5em .6em;font-size:16px;font-family:inherit;line-height:1.3;border:2px solid var(--g);border-radius:8px;background:#fff;color:#1a1a1a;min-height:44px}
.kzc-f input{width:6.5em}
.kzc-f select:focus,.kzc-f input:focus,.kzc-name:focus,.kzc-note-in:focus{outline:3px solid #f2b705;outline-offset:1px;border-color:var(--b)}
.kzc-btn{display:inline-block;padding:.55em .95em;border:1px solid var(--g);border-radius:8px;background:#fff;color:#1a1a1a;cursor:pointer;font-family:inherit;font-size:16px;line-height:1.4;text-decoration:none;min-height:44px}
.kzc-btn:hover,.kzc-btn:focus{border-color:var(--b);background:var(--l);color:#0f6f8c}
.kzc-btn:focus,.kzc-chip:focus,.kzc-del:focus,.kzc-wrap:focus{outline:3px solid #f2b705;outline-offset:1px}
.kzc-pri{background:var(--b);border-color:var(--b);color:#fff}
.kzc-pri:hover,.kzc-pri:focus{background:#0b5870;border-color:#0b5870;color:#fff}
.kzc-btn[disabled]{opacity:.5;cursor:not-allowed}
.kzc-presets{display:flex;flex-wrap:wrap;align-items:center;gap:.4em;margin:0 0 .8em}
.kzc-lbl{font-size:.9em;color:#5c6b75}
.kzc-chip{padding:.4em .8em;border:1px solid var(--g);border-radius:20px;background:#fff;color:#1a1a1a;cursor:pointer;font-family:inherit;font-size:.9em;line-height:1.4}
.kzc-chip:hover,.kzc-chip:focus{background:var(--l);color:#0f6f8c;border-color:var(--b)}
.kzc-wrap{overflow-x:auto;border:2px solid var(--b);border-radius:12px;background:#fff;-webkit-overflow-scrolling:touch}
.kzc-t{border-collapse:collapse;width:max-content;min-width:100%;font-size:.85em}
.kzc-cap{caption-side:top;text-align:left;font-weight:700;padding:.6em .8em;background:var(--b);color:#fff;font-size:1.1em}
.kzc-t th,.kzc-t td{border:1px solid #cfdde4;padding:0;text-align:center;font-weight:400;background:#fff;color:#1a1a1a}
.kzc-t thead th{background:var(--l);padding:.25em .1em;min-width:30px}
.kzc-t .kzc-wd{font-size:.8em;color:#5c6b75}
.kzc-t .wk{background:#f3f6f8}
.kzc-t thead .wk{background:#dbe7ed}
.kzc-t .td{box-shadow:inset 0 0 0 2px #d79a00}
.kzc-t .kzc-c1{min-width:210px;max-width:210px;text-align:left;padding:.5em;position:sticky;left:0;z-index:1;vertical-align:top;background:#fff}
.kzc-t thead .kzc-c1{background:var(--l);z-index:2}
.kzc-t .kzc-c2{min-width:72px;padding:.3em .4em;font-size:.9em;color:#3a4a55;background:#fafcfd}
.kzc-t thead .kzc-c2{background:var(--l)}
.kzc-first th,.kzc-first td{border-top:2px solid var(--g)}
.kzc-d{height:36px}
.kzc-d input{width:22px;height:22px;margin:0;vertical-align:middle;accent-color:var(--b);cursor:pointer}
.kzc-name,.kzc-note-in{width:100%;display:block;padding:.4em .5em;font-size:16px;font-family:inherit;line-height:1.3;border:1px solid var(--g);border-radius:6px;background:#fff;color:#1a1a1a;margin-bottom:.3em}
.kzc-note-in{font-size:16px;color:#3a4a55}
.kzc-slots{display:flex;flex-wrap:wrap;gap:.2em .7em;margin:.2em 0 .3em}
.kzc-sl{display:inline-flex;align-items:center;gap:.25em;font-size:.9em;cursor:pointer}
.kzc-sl input{width:18px;height:18px;margin:0;accent-color:var(--b)}
.kzc-del{padding:.2em .6em;border:1px solid #c8452f;border-radius:6px;background:#fff;color:#a23421;cursor:pointer;font-family:inherit;font-size:.85em;line-height:1.4}
.kzc-del:hover,.kzc-del:focus{background:#fdeceb;color:#a23421}
.kzc-empty{padding:1em!important;text-align:left!important;color:#5c6b75!important}
.kzc-count{margin:.7em 0 .4em;font-weight:600;color:#0f6f8c}
.kzc-act{display:flex;flex-wrap:wrap;gap:.5em;margin:.4em 0}
.kzc-status{min-height:1.5em;margin:.3em 0;color:#0b5870;font-size:.95em}
.kzc-note{background:#fff6e0;border-left:4px solid #d79a00;padding:.6em .85em;margin:.6em 0 0;border-radius:0 8px 8px 0;font-size:.93em;color:#3a2f00}
.kzc-nojs{color:#a23421}
.kzc-printbox{display:none}
@media(max-width:600px){
  .kzc-bar{gap:.5em}
  .kzc-f{flex:1 1 40%}
  .kzc-f input{width:100%}
  .kzc-t .kzc-c1{min-width:170px;max-width:170px}
  .kzc-act .kzc-btn{flex:1 1 100%;text-align:center}
}
/* Печать: на бумагу идёт только таблица. Остальные блоки страницы
   скрываются классом на <html>, который ставит скрипт перед печатью. */
@media print{
  @page{size:A4 landscape;margin:8mm}
  html.kzc-printing body>*:not(#kzc-printbox){display:none!important}
  html.kzc-printing #kzc-printbox{display:block!important;font:9pt/1.3 Georgia,"Times New Roman",serif;color:#000;background:#fff}
  .kzcp-top{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #000;padding-bottom:2mm;margin-bottom:3mm}
  .kzcp-top b{font-size:14pt}
  .kzcp-top span{font-size:9pt}
  .kzcp-t{width:100%;border-collapse:collapse;table-layout:fixed}
  .kzcp-t th,.kzcp-t td{border:.8pt solid #000;text-align:center;padding:0;height:7.5mm;font-size:8pt;font-weight:400}
  .kzcp-t th{height:auto;padding:1mm 0;line-height:1.1}
  .kzcp-t th i{font-size:6.5pt;font-style:normal}
  .kzcp-t .wk{background:#e4e4e4!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .kzcp-t .kzcp-n{width:38mm;text-align:left;padding:1mm 1.5mm;font-size:9pt;vertical-align:top;overflow-wrap:anywhere}
  .kzcp-t .kzcp-n i{font-size:7.5pt;font-style:normal;color:#333}
  .kzcp-t .kzcp-s{width:15mm;font-size:7.5pt}
  .kzcp-t tr{break-inside:avoid}
  .kzcp-t tr.f td,.kzcp-t tr.f th{border-top:1.6pt solid #000}
  .kzcp-t thead{display:table-header-group}
  .kzcp-foot{margin:3mm 0 0;font-size:8pt;color:#333}
}
