.jpr-public{max-width:1000px;margin:20px auto 40px;font-family:Arial,Helvetica,sans-serif}.jpr-public-title{text-align:center;font-size:48px;line-height:1;font-weight:900;letter-spacing:.5px;margin:10px 0 4px;color:#111}.jpr-public-month-title{text-align:center;font-size:34px;line-height:1.1;font-weight:900;margin:28px 0 12px;color:#111}.jpr-public-events{width:100%;overflow:hidden}.jpr-public-row{min-height:58px;display:flex;align-items:center;background:var(--bg);color:var(--fg);border-bottom:1px solid rgba(0,0,0,.35);font-size:27px;line-height:1.05;font-weight:900;text-transform:uppercase;box-sizing:border-box}.jpr-public-day{width:95px;min-width:95px;text-align:center;font-size:27px;flex:0 0 95px}.jpr-public-main{flex:1;min-width:0;padding:8px 10px 8px 4px;text-align:left;overflow:hidden;text-overflow:ellipsis}.jpr-public-time{flex:0 0 110px;width:110px;box-sizing:border-box;padding:8px 10px;text-align:center;white-space:nowrap;font-size:.82em;font-weight:900;border-left:2px solid var(--fg);font-variant-numeric:tabular-nums;display:flex;align-items:center;justify-content:center}.jpr-public-extra{flex:0 0 135px;width:135px;box-sizing:border-box;padding:8px 15px 8px 8px;text-align:right;white-space:nowrap;font-weight:900}.jpr-no-events{padding:30px 20px;background:#eee;text-align:center;font-size:22px;font-weight:800;color:#222}@media(max-width:700px){.jpr-public{margin:10px auto 30px}.jpr-public-title{font-size:34px}.jpr-public-month-title{font-size:25px;margin-bottom:15px}.jpr-public-row{min-height:50px;font-size:18px}.jpr-public-day{width:52px;min-width:52px;flex-basis:52px;font-size:19px}.jpr-public-main{padding:7px 5px;font-size:18px}.jpr-public-time{flex:0 0 78px;width:78px;padding:7px 3px;font-size:15px;border-left-width:2px}.jpr-public-extra{flex:0 0 82px;width:82px;padding:7px 7px;font-size:15px}.jpr-no-events{font-size:18px}}

/* JPR ODPOČET */
.jpr-countdown{
  max-width:1000px;
  margin:25px auto 35px;
  padding:24px 24px 26px;
  background:#fff;
  border:1px solid #d7d7d7;
  border-top:8px solid var(--jpr-countdown-accent,#111);
  border-radius:14px;
  box-shadow:0 5px 20px rgba(0,0,0,.08);
  text-align:center;
  font-family:Arial,Helvetica,sans-serif;
  box-sizing:border-box;
}
.jpr-countdown-kicker{
  font-size:15px;
  font-weight:900;
  letter-spacing:2px;
  color:#666;
  margin-bottom:8px;
}
.jpr-countdown-event{
  font-size:34px;
  line-height:1.1;
  font-weight:900;
  text-transform:uppercase;
  color:#111;
  margin-bottom:7px;
}
.jpr-countdown-meta{
  font-size:18px;
  font-weight:800;
  color:#444;
  margin-bottom:22px;
}
.jpr-countdown-meta span{margin:0 6px;color:#999}
.jpr-countdown-boxes{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.jpr-cd-box{
  min-width:0;
  padding:14px 8px 12px;
  border-radius:10px;
  background:#111;
  color:#fff;
}
.jpr-cd-box strong{
  display:block;
  font-size:48px;
  line-height:1;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}
.jpr-cd-box span{
  display:block;
  margin-top:8px;
  font-size:12px;
  font-weight:900;
  letter-spacing:1px;
  opacity:.85;
}
.jpr-countdown-empty{
  border-top-color:#777;
}
.jpr-countdown-empty-text{
  font-size:18px;
  font-weight:700;
  color:#555;
  padding:12px 0 4px;
}
@media(max-width:700px){
  .jpr-countdown{margin:15px 0 25px;padding:18px 12px 20px;border-top-width:6px;border-radius:10px}
  .jpr-countdown-kicker{font-size:12px;letter-spacing:1.5px}
  .jpr-countdown-event{font-size:23px}
  .jpr-countdown-meta{font-size:15px;margin-bottom:15px}
  .jpr-countdown-boxes{gap:6px}
  .jpr-cd-box{padding:11px 3px 9px;border-radius:7px}
  .jpr-cd-box strong{font-size:28px}
  .jpr-cd-box span{font-size:9px;margin-top:6px;letter-spacing:.4px}
}
/* Recurring tournament details */
.jpr-public-recurring-row{position:relative;cursor:pointer;transition:filter .15s ease,transform .15s ease}
.jpr-public-recurring-row:hover{filter:brightness(.97)}
.jpr-public-recurring-row:active{filter:brightness(.94);transform:scale(.998)}
.jpr-public-modal{display:none;position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.58);padding:18px;align-items:center;justify-content:center;box-sizing:border-box;backdrop-filter:blur(3px)}
.jpr-public-modal.open{display:flex}
.jpr-public-modal-inner{position:relative;width:min(720px,100%);max-height:min(86vh,760px);overflow:auto;background:#f6f6f6;color:#111;border-radius:18px;padding:0;box-sizing:border-box;box-shadow:0 24px 70px rgba(0,0,0,.30);border:1px solid rgba(0,0,0,.12)}
.jpr-public-modal-head{padding:24px 28px 20px;background:#fff;border-bottom:1px solid #ddd}
.jpr-public-modal-close{position:absolute;right:16px;top:16px;width:40px;height:40px;border:0;border-radius:50%;background:#111;color:#fff;font-size:25px;line-height:40px;cursor:pointer;padding:0;z-index:2}
.jpr-public-modal-close:hover{opacity:.82}
.jpr-public-modal-color{width:64px;height:7px;border-radius:99px;margin:0 0 13px;background:#777}
.jpr-public-modal-inner h3{margin:0 55px 5px 0;font-size:1.65em;line-height:1.15;letter-spacing:-.3px;text-transform:uppercase}
.jpr-public-modal-subtitle{margin:0;color:#777;font-size:.94em}
#jpr-recurring-public-list{padding:16px 20px 22px}
.jpr-public-occurrence{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 15px;margin:8px 0;border:1px solid rgba(0,0,0,.14);border-left:7px solid var(--occ-color,#777);border-radius:10px;background:var(--occ-bg,#fff);box-sizing:border-box;box-shadow:0 2px 7px rgba(0,0,0,.07)}
.jpr-public-occurrence-main{min-width:0;display:flex;flex-direction:column;gap:3px;text-align:left}
.jpr-public-occurrence-date{font-weight:900;white-space:nowrap;color:#111;font-size:1.02em;line-height:1.05}
.jpr-public-occurrence-name{font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;line-height:1.1}
.jpr-public-occurrence-time{font-weight:900;white-space:nowrap;padding:7px 11px;border-left:1px solid rgba(0,0,0,.18);font-variant-numeric:tabular-nums;font-size:1.05em}
@media(max-width:520px){
  .jpr-public-modal{padding:9px}
  .jpr-public-modal-inner{border-radius:14px;max-height:90vh}
  .jpr-public-modal-head{padding:20px 17px 16px}
  .jpr-public-modal-close{right:12px;top:12px;width:36px;height:36px;line-height:36px;font-size:22px}
  #jpr-recurring-public-list{padding:11px 10px 15px}
  .jpr-public-occurrence{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:11px 10px}
  .jpr-public-occurrence-date{font-size:.95em}
  .jpr-public-occurrence-name{font-size:.91em}
  .jpr-public-occurrence-time{border-left:1px solid rgba(0,0,0,.13);padding:6px 7px;font-size:.9em}
}
