#cap-mon-dashboard-root, .cap-mon-upload-wrap{
  --ink:#1a1a1a; --paper:#faf8f3; --card:#ffffff;
  --yellow:#FFE600; --yellow-deep:#f5d000;
  --green:#2f8f4e; --green-soft:#e8f3ec;
  --blue:#2f6f9f; --red:#d64545; --amber:#e6920a;
  --line:#e7e3d8; --muted:#6b6b6b;
  --shadow:0 1px 3px rgba(0,0,0,.06),0 6px 24px rgba(0,0,0,.05);
  color:var(--ink); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.5;
}
#cap-mon-dashboard-root *, .cap-mon-upload-wrap *{box-sizing:border-box}
#cap-mon-dashboard-root{background:var(--paper);padding:20px;border-radius:16px}
#cap-mon-dashboard-root .cap-mon-loading{padding:40px;text-align:center;color:var(--muted)}

/* header */
#cap-mon-dashboard-root .cmd-header{background:var(--ink);color:#fff;padding:24px 22px;border-radius:14px;position:relative;overflow:hidden;margin-bottom:18px}
#cap-mon-dashboard-root .cmd-header::after{content:"";position:absolute;right:-40px;top:-40px;width:200px;height:200px;background:var(--yellow);border-radius:50%;opacity:.16}
#cap-mon-dashboard-root .cmd-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--yellow);font-weight:700}
#cap-mon-dashboard-root .cmd-header h2{margin:6px 0 4px;font-size:24px;font-weight:800;color:#fff}
#cap-mon-dashboard-root .cmd-header p{margin:0;color:#c9c9c9;font-size:13.5px;max-width:680px}
#cap-mon-dashboard-root .cmd-stamp{display:inline-block;margin-top:12px;font-size:12px;color:#bdbdbd;border:1px solid #3a3a3a;border-radius:999px;padding:4px 12px}

/* nav */
#cap-mon-dashboard-root .cmd-nav{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:20px;background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:999px;padding:6px}
#cap-mon-dashboard-root .cmd-kat-switch{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
#cap-mon-dashboard-root .cmd-kat-switch button{border:1px solid var(--line);background:var(--card);font:inherit;font-size:12.5px;font-weight:700;color:var(--muted);padding:7px 14px;border-radius:999px;cursor:pointer}
#cap-mon-dashboard-root .cmd-kat-switch button.active{background:var(--yellow);border-color:var(--yellow-deep);color:var(--ink)}
#cap-mon-dashboard-root .cmd-nav button{border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;color:var(--muted);padding:8px 14px;border-radius:999px;cursor:pointer;transition:.15s}
#cap-mon-dashboard-root .cmd-nav button:hover{color:var(--ink)}
#cap-mon-dashboard-root .cmd-nav button.active{background:var(--ink);color:var(--yellow)}

#cap-mon-dashboard-root .cmd-section{display:none}
#cap-mon-dashboard-root .cmd-section.show{display:block}
#cap-mon-dashboard-root h3.cmd-h{font-size:19px;margin:0 0 4px;font-weight:800}
#cap-mon-dashboard-root .cmd-sub{color:var(--muted);font-size:13px;margin:0 0 18px}

/* KPI */
#cap-mon-dashboard-root .cmd-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}
#cap-mon-dashboard-root .cmd-kpi{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 14px 12px;box-shadow:var(--shadow)}
#cap-mon-dashboard-root .cmd-kpi .n{font-size:26px;font-weight:800;line-height:1}
#cap-mon-dashboard-root .cmd-kpi .l{font-size:12px;color:var(--muted);margin-top:6px}
#cap-mon-dashboard-root .cmd-kpi.accent{background:var(--ink);color:#fff}
#cap-mon-dashboard-root .cmd-kpi.accent .l{color:#bbb}
#cap-mon-dashboard-root .cmd-kpi.accent .n{color:var(--yellow)}

/* cards */
#cap-mon-dashboard-root .cmd-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
#cap-mon-dashboard-root .cmd-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow)}
#cap-mon-dashboard-root .cmd-card.us{border-color:var(--yellow-deep);border-width:2px}
#cap-mon-dashboard-root .cmd-card h4{margin:0 0 2px;font-size:15.5px}
#cap-mon-dashboard-root .cmd-card .meta{font-size:12px;color:var(--muted);margin-bottom:8px}
#cap-mon-dashboard-root .cmd-tagrow{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
#cap-mon-dashboard-root .cmd-tag{font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:999px;border:1px solid var(--line)}
#cap-mon-dashboard-root .cmd-tag.us{background:var(--yellow);border-color:var(--yellow-deep);color:var(--ink)}
#cap-mon-dashboard-root .cmd-tag.direct{background:#fde9e9;border-color:#f3c4c4;color:var(--red)}
#cap-mon-dashboard-root .cmd-tag.partial{background:#eef4f9;border-color:#cfe0ee;color:var(--blue)}
#cap-mon-dashboard-root .cmd-tag.dolozka-ok{background:var(--green-soft);border-color:#bfe0c9;color:var(--green)}
#cap-mon-dashboard-root .cmd-tag.dolozka-no{background:#fdf2e2;border-color:#f3dcb0;color:var(--amber)}
#cap-mon-dashboard-root .cmd-price{font-weight:800;font-size:16px}
#cap-mon-dashboard-root .cmd-depth{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px}
#cap-mon-dashboard-root .cmd-depth.plny{background:var(--green-soft);color:var(--green)}
#cap-mon-dashboard-root .cmd-depth.ciastocny{background:#eef4f9;color:var(--blue)}
#cap-mon-dashboard-root .cmd-depth.profil{background:#f3eefb;color:#7b4fc0}
#cap-mon-dashboard-root .cmd-depth.katalog,#cap-mon-dashboard-root .cmd-depth.ziadny{background:#f1efe9;color:var(--muted)}
#cap-mon-dashboard-root .cmd-dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}

/* matrix */
#cap-mon-dashboard-root .cmd-matrix{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);display:block;overflow-x:auto}
#cap-mon-dashboard-root .cmd-matrix table{width:100%;border-collapse:collapse}
#cap-mon-dashboard-root .cmd-matrix th,#cap-mon-dashboard-root .cmd-matrix td{padding:10px 9px;text-align:center;border-bottom:1px solid var(--line)}
#cap-mon-dashboard-root .cmd-matrix thead th{background:#f5f2ea;font-size:11.5px}
#cap-mon-dashboard-root .cmd-matrix th.crit::after{content:" ●";color:var(--red);font-size:9px}
#cap-mon-dashboard-root .cmd-matrix td.name,#cap-mon-dashboard-root .cmd-matrix th.name{text-align:left;font-weight:700;min-width:180px}
#cap-mon-dashboard-root .cmd-matrix tr.us td{background:#fffbe0}
#cap-mon-dashboard-root .cmd-cell{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;font-weight:800;font-size:12.5px;cursor:pointer}
#cap-mon-dashboard-root .s2{background:var(--green-soft);color:var(--green)}
#cap-mon-dashboard-root .s1{background:#fdf2e2;color:var(--amber)}
#cap-mon-dashboard-root .s0{background:#fde9e9;color:var(--red)}
#cap-mon-dashboard-root .sn{background:#f0efe9;color:#aaa}
#cap-mon-dashboard-root .cmd-legend{display:flex;gap:14px;flex-wrap:wrap;margin:12px 2px 0;font-size:12px;color:var(--muted)}
#cap-mon-dashboard-root .cmd-legend span{display:inline-flex;align-items:center;gap:6px}
#cap-mon-dashboard-root .cmd-swatch{width:14px;height:14px;border-radius:5px;display:inline-block}

#cap-mon-dashboard-root .cmd-note{background:var(--green-soft);border-left:4px solid var(--green);border-radius:0 10px 10px 0;padding:11px 15px;font-size:12.5px;margin-top:16px}
#cap-mon-dashboard-root .cmd-note.warn{background:#fdf2e2;border-color:var(--amber)}

/* vs */
#cap-mon-dashboard-root .cmd-vs{display:grid;grid-template-columns:1fr 1fr;gap:14px}
#cap-mon-dashboard-root .cmd-vscol{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow)}
#cap-mon-dashboard-root .cmd-vscol.us{border-color:var(--yellow-deep);border-width:2px}
#cap-mon-dashboard-root .cmd-pluses,#cap-mon-dashboard-root .cmd-minuses{list-style:none;padding:0;margin:0 0 10px}
#cap-mon-dashboard-root .cmd-pluses li,#cap-mon-dashboard-root .cmd-minuses li{font-size:12.5px;padding:5px 0 5px 20px;position:relative;border-bottom:1px dashed var(--line)}
#cap-mon-dashboard-root .cmd-pluses li::before{content:"+";position:absolute;left:2px;color:var(--green);font-weight:800}
#cap-mon-dashboard-root .cmd-minuses li::before{content:"–";position:absolute;left:4px;color:var(--red);font-weight:800}
#cap-mon-dashboard-root .cmd-vlabel{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:8px 0 4px}

/* registry table */
#cap-mon-dashboard-root .cmd-reg{width:100%;border-collapse:collapse;font-size:12.5px;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
#cap-mon-dashboard-root .cmd-reg th,#cap-mon-dashboard-root .cmd-reg td{padding:10px 11px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
#cap-mon-dashboard-root .cmd-reg thead th{background:#f5f2ea;font-size:11.5px}

#cap-mon-dashboard-root details.cmd-detail{margin-top:8px}
#cap-mon-dashboard-root details.cmd-detail summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--blue)}
#cap-mon-dashboard-root details.cmd-detail .body{font-size:12px;color:#444;padding:8px 0 2px}

@media(max-width:780px){
  #cap-mon-dashboard-root .cmd-kpis{grid-template-columns:repeat(2,1fr)}
  #cap-mon-dashboard-root .cmd-grid,#cap-mon-dashboard-root .cmd-vs{grid-template-columns:1fr}
}

/* --- upload formulár --- */
.cap-mon-upload-wrap .cap-mon-form{display:flex;flex-direction:column;gap:12px;max-width:560px}
.cap-mon-upload-wrap label{display:flex;flex-direction:column;gap:4px;font-size:13.5px;font-weight:600}
.cap-mon-upload-wrap input[type=text],.cap-mon-upload-wrap input[type=number],.cap-mon-upload-wrap textarea,.cap-mon-upload-wrap input[type=file]{
  font:inherit;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff}
.cap-mon-upload-wrap .cap-mon-row{display:flex;gap:12px}
.cap-mon-upload-wrap .cap-mon-row label{flex:1}
.cap-mon-upload-wrap .cap-mon-btn{align-self:flex-start;background:var(--ink);color:var(--yellow);border:0;padding:11px 22px;border-radius:999px;font-weight:700;cursor:pointer}
.cap-mon-upload-wrap .cap-mon-notice{padding:12px 14px;border-radius:10px;margin-bottom:14px;font-size:13.5px}
.cap-mon-upload-wrap .cap-mon-notice-ok{background:var(--green-soft);color:var(--green);border-left:4px solid var(--green)}
.cap-mon-upload-wrap .cap-mon-notice-err{background:#fde9e9;color:var(--red);border-left:4px solid var(--red)}
.cap-mon-upload-wrap .cap-mon-source-box{border:1px dashed var(--line);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:10px;background:#fffdf6}
.cap-mon-upload-wrap .cap-mon-hint{font-size:12.5px;color:var(--muted);font-weight:400;margin:0}
