
:root{--ink:#172d26;--muted:#6f7973;--line:#dfe4dd;--paper:#f6f7f2;--green:#174c3c;--lime:#dcec9e;--red:#ac3e33;--orange:#94621b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a{color:var(--green)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #9ebf61;outline-offset:3px}[hidden]{display:none!important}header{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:48px;padding:0 4.5%;background:#fff}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:800;font-size:18px;letter-spacing:2px}.brand small{display:block;font-size:8px;letter-spacing:1.5px;color:var(--muted);font-weight:600}.brand-icon{background:var(--green);color:var(--lime);border-radius:9px;width:38px;height:40px;text-align:center;font-size:32px;line-height:33px}nav{display:flex;align-self:stretch;gap:30px}nav button{border:0;background:none;color:var(--muted);font-weight:650;border-bottom:3px solid transparent;padding:0 4px}nav button.active{color:var(--green);border-bottom-color:var(--green)}.connection{margin-left:auto;display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted)}.dot{width:7px;height:7px;background:#90a296;border-radius:50%}.connection.good .dot{background:#41956a}.connection.bad .dot{background:var(--red)}main{max-width:1550px;margin:0 auto;padding:35px 4.5% 25px}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;color:var(--muted);margin:0 0 10px}h1{font-size:clamp(26px,3vw,38px);letter-spacing:-1.5px;line-height:1.12;font-weight:650;margin:0 0 10px}.intro p:last-child{margin:0;color:var(--muted)}.outline{padding:9px 14px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:7px;font-weight:550;font-size:12px}.outline:hover{border-color:#a3b5a8;background:#f4f7ee}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden;margin-bottom:28px}.metrics article{padding:20px 23px;display:flex;flex-direction:column;border-right:1px solid var(--line)}.metrics article:last-child{border:0;background:#edf2df}.metrics article>span{font-size:12px;color:#637368}.metrics strong{font-size:34px;font-weight:650;line-height:1.4;letter-spacing:-1px;font-variant-numeric:tabular-nums}.metrics small{color:var(--muted);font-size:10px}.filters{display:grid;grid-template-columns:minmax(240px,2.1fr) 1fr 1.1fr 1fr 1fr;gap:12px;align-items:end;background:#ecefe7;padding:17px;border:1px solid var(--line);border-radius:10px}.filters label,.more label{font-size:10px;font-weight:600;letter-spacing:.2px;color:#5c695f;display:flex;flex-direction:column;gap:6px}input,select{padding:10px;background:#fff;border:1px solid #d8ded4;border-radius:6px;color:var(--ink);min-width:0;width:100%;outline:none}input:focus,select:focus{border-color:#638861;box-shadow:0 0 0 2px #bed49944}.more{grid-column:1/5}.more summary{cursor:pointer;font-size:12px;color:var(--green);width:max-content}.more>div{display:flex;flex-wrap:wrap;gap:14px;padding-top:12px}.more label{min-width:145px}.text-btn{background:none;border:0;color:var(--muted);font-size:11px;justify-self:end;padding:0 3px 1px}.section-line{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:28px 0 12px}.section-line>div{display:flex;align-items:baseline;gap:12px}.section-line h2{font-size:16px;margin:0;font-weight:650;letter-spacing:-.4px}.section-line span{font-size:11px;color:var(--muted)}.table-wrap{position:relative;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{color:#778278;background:#f0f3ec;font-size:10px;letter-spacing:.6px;text-transform:uppercase;font-weight:650;padding:12px 16px;white-space:nowrap}td{padding:17px 16px;border-top:1px solid #edf0e9;vertical-align:top}tbody tr:hover{background:#fafbf7}.events-table td:first-child{min-width:220px;max-width:310px;width:31%}.events-table td:nth-child(2){white-space:nowrap}.event-name{background:none;border:0;padding:0;text-align:left;color:var(--ink);font-size:13px;line-height:1.45;font-weight:650}.event-name:hover{color:#497b47;text-decoration:underline}.sub{display:block;font-size:11px;color:var(--muted);margin-top:4px}.price{font-weight:650;white-space:nowrap}.tag{display:inline-block;font-size:10px;border-radius:4px;padding:3px 7px;white-space:nowrap;background:#edf1eb;color:#526b55}.tag.goout{background:#e8edf8;color:#536496}.tag.ticketportal{background:#f1eaf6;color:#815d8d}.tag.error,.tag.failed{background:#fae7e3;color:var(--red)}.tag.warning,.tag.partial,.tag.interrupted{background:#fcf1d9;color:var(--orange)}.tag.ok,.tag.complete{background:#e6f2e6;color:#2e7547}.tag.running{background:#e7f0fa;color:#37689b}.sale{display:block;font-size:10px;color:#78816f;margin-top:6px}.sale.cancelled{color:var(--red)}.arrow{font-size:17px;color:#91a18e;background:none;border:0}.pagination{display:flex;justify-content:space-between;align-items:center;padding:15px 0;color:var(--muted);font-size:11px}.pagination>div{display:flex;gap:8px}.empty{text-align:center;padding:45px;color:var(--muted);font-size:13px}.source-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.source-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:21px}.source-card h3{margin:0;font-size:18px}.source-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.source-card dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}.source-card dt{font-size:10px;color:var(--muted)}.source-card dd{margin:3px 0 0;font-size:13px}.alert{padding:13px 17px;border-radius:8px;background:#fcf1d9;border:1px solid #e7d6b8;color:#775424;margin-bottom:18px;font-size:12px}.alert.error{background:#fbeee9;border-color:#efd0c4;color:#943d2c}.alert button{float:right;background:transparent;border:0;text-decoration:underline;color:inherit}.log-item{display:grid;grid-template-columns:115px 1fr auto;gap:15px;background:#fff;border:1px solid var(--line);border-left:3px solid #db8060;border-radius:7px;padding:15px;margin-bottom:8px}.log-item.resolved{border-left-color:#9aad9c}.log-item p{margin:5px 0;overflow-wrap:anywhere}.log-item time{font-size:10px;color:var(--muted)}.log-item a{font-size:11px}.checkbox{display:flex!important;flex-direction:row!important;gap:7px!important;align-items:center;font-size:11px!important;color:var(--muted)}input[type=checkbox]{width:14px;height:14px;accent-color:var(--green)}.counter{background:#a74334;color:#fff;border-radius:20px;font-size:10px;padding:2px 6px}footer{border-top:1px solid var(--line);margin-top:30px;padding-top:17px;display:flex;flex-wrap:wrap;gap:8px 25px;font-size:10px;color:var(--muted)}footer span:last-child{margin-left:auto}.event-page{max-width:1100px;margin:0 auto}.detail-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px}.detail-top a{text-decoration:none}.detail-top .eyebrow{margin:0}.event-page h1{margin:0 0 16px;overflow-wrap:anywhere}.event-name,.arrow{text-decoration:none}.event-page .detail-source p{overflow-wrap:anywhere}.detail-source{background:#f4f6ef;border:1px solid var(--line);border-radius:9px;padding:18px;margin:14px 0}.detail-source h3{margin:0 0 10px}.detail-source p{margin:7px 0}.detail-source table{background:#fff;margin-top:15px}.history{border-left:2px solid #d3ddc6;padding-left:17px;margin:15px 0}.history time{color:var(--muted);font-size:11px}.history p{margin:4px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:1000px){header{gap:25px}.filters{grid-template-columns:2fr 1fr 1fr}.search{grid-column:1/3}.more{grid-column:2/3}.metrics article{padding:16px}.hint{display:none}.events-table td:nth-child(4){min-width:165px}}@media(max-width:650px){header{height:auto;min-height:110px;flex-wrap:wrap;padding:14px 5% 0;gap:10px}.brand{font-size:15px}.brand-icon{width:32px;height:34px;font-size:27px;line-height:28px}.connection{font-size:10px}nav{width:100%;height:39px;order:3;gap:25px}main{padding:24px 5%}.intro{align-items:flex-start;gap:12px}.intro .outline{font-size:0;padding:8px}.intro .outline:first-letter{font-size:19px}h1{font-size:28px}.intro p:last-child{font-size:12px}.metrics{grid-template-columns:1fr 1fr}.metrics article:nth-child(-n+2){border-bottom:1px solid var(--line)}.metrics article:nth-child(2){border-right:0}.metrics strong{font-size:28px}.metrics small{font-size:9px}.filters{grid-template-columns:1fr 1fr;padding:13px}.search{grid-column:1/-1}.more{grid-column:1/2}.filters input,.filters select{font-size:12px}.section-line>div{display:block}.section-line h2{margin-bottom:4px}.source-cards{grid-template-columns:1fr}.log-item{grid-template-columns:1fr}.log-item .tag{justify-self:start}.pagination{gap:10px}.pagination .outline{font-size:10px;padding:8px}footer span:last-child{margin-left:0}.detail-top{align-items:flex-start;flex-direction:column}.detail-source{padding:13px}}

.inventory-chart{border:1px solid #dce3da;border-radius:12px;padding:18px;margin:16px 0;background:#fafbf7}.chart-controls{display:flex;gap:18px;flex-wrap:wrap}.chart-controls label{display:grid;gap:6px;flex:1;min-width:180px}.chart-controls input,.chart-controls select{width:100%;padding:10px;border:1px solid #bdcbbc;border-radius:6px}.chart-output svg{display:block;width:100%;height:auto;min-height:140px;margin-top:15px}.chart-output svg text{font:11px sans-serif;fill:#55645a}.chart-legend{font-size:12px}.chart-legend span:first-child{color:#285547}.chart-legend span:nth-child(2){color:#8c671b}

@media(max-width:600px){.chart-output svg text{font-size:24px}}

.event-page h1[tabindex="-1"]:focus{outline:none}

.detail-nav{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px;height:auto;order:initial;align-self:auto}
.detail-nav a{padding:8px 12px;background:#fff;border:1px solid var(--line);border-radius:7px;text-decoration:none;font-size:12px;font-weight:600}
.detail-nav a:hover{background:#edf2df;border-color:#a3b5a8}
.event-summary{color:var(--ink);font-size:13px}
#detail-charts,#detail-history,#detail-versions,#detail-sources{scroll-margin-top:24px}

.chart-loading{min-height:170px;padding:20px;background:#edf2df;border:1px solid var(--line);border-radius:10px;margin:14px 0}.chart-loading h2{margin:0 0 12px;font-size:20px}.chart-loading p{margin:8px 0}

.economy-panel{background:#fff;padding:22px}.economy-panel>h3{margin:0 0 16px}.economy-panel .chart-controls label{max-width:360px;font-size:11px;color:var(--muted)}
.economy-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0 12px}.economy-kpis>div{padding:14px;background:#f0f4e9;border-radius:8px}.economy-kpis span{display:block;color:var(--muted);font-size:11px}.economy-kpis strong{display:block;font-size:clamp(17px,2vw,27px);line-height:1.4;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.economy-kpis>div:first-child{background:#e2eddf}
.supporting-charts,.economy-changes{margin:20px 0;padding:14px;border:1px solid var(--line);border-radius:8px}.supporting-charts>summary,.economy-changes>summary{cursor:pointer;font-weight:600}.economy-changes p{font-size:12px}.economy-changes time{color:var(--muted)}
@media(max-width:650px){.economy-kpis{grid-template-columns:1fr 1fr;gap:8px}.economy-kpis>div{padding:11px}.economy-panel{padding:13px}.economy-kpis strong{font-size:21px}}

.loading-feedback{max-width:650px;width:100%;padding:12px 0;text-align:left}.empty .loading-feedback{margin:0 auto}
.loading-label{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--ink)}
.loading-spinner{display:inline-block;flex:none;width:18px;height:18px;border:2px solid #c7d5b9;border-top-color:var(--green);border-radius:50%;animation:loading-spin .85s linear infinite}
.loading-track{position:relative;height:7px;background:#d9e3ce;border-radius:8px;overflow:hidden;margin-top:14px}
.loading-track::after{content:"";position:absolute;top:0;bottom:0;left:-35%;width:35%;border-radius:8px;background:var(--green);animation:loading-travel 1.6s ease-in-out infinite}
.loading-elapsed{font-size:12px;color:#52664e;font-variant-numeric:tabular-nums}
.inventory-periods{margin:24px 0}.inventory-periods h4{font-size:17px;margin-bottom:8px}.inventory-periods>p{max-width:780px}.inventory-periods td{font-variant-numeric:tabular-nums}.inventory-periods td:nth-child(2){white-space:nowrap}.inventory-periods td strong{color:var(--green)}
@media(max-width:650px){.inventory-periods table,.inventory-periods tbody{display:block}.inventory-periods thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.inventory-periods tr{display:grid;gap:8px;padding:14px;border-bottom:1px solid var(--line)}.inventory-periods tr:last-child{border-bottom:0}.inventory-periods td:nth-child(n){display:block;width:auto;min-width:0;max-width:none;padding:0;border:0;white-space:normal}.inventory-periods td:nth-child(2)::before{content:"Voľné: ";color:var(--muted)}}
.connection.is-loading .dot{width:10px;height:10px;background:transparent;border:2px solid #c7d5b9;border-top-color:var(--green);animation:loading-spin .85s linear infinite}
@keyframes loading-spin{to{transform:rotate(360deg)}}
@keyframes loading-travel{to{transform:translateX(390%)}}
@media(prefers-reduced-motion:reduce){.loading-spinner,.loading-track::after,.connection.is-loading .dot{animation:none}.loading-track::after{left:0;width:100%;background:repeating-linear-gradient(110deg,#9bb687 0,#9bb687 10px,#d9e3ce 10px,#d9e3ce 20px)}}
