
.jpOverlay{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:center;justify-content:center;z-index:2000;padding:18px}
.jpModal{width:340px;max-width:100%;background:rgba(15,22,40,.96);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:12px;box-shadow:0 30px 80px rgba(0,0,0,.55)}
.jpHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.jpTitle{font-weight:800}
.jpBtn{padding:8px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:inherit;cursor:pointer}
.jpBtn:hover{background:rgba(255,255,255,.10)}
.jpBtn2{background:rgba(43,108,255,.12);border-color:rgba(43,108,255,.35)}
.jpWeek{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;color:rgba(255,255,255,.7);font-size:12px;padding:6px 2px}
.jpWeek span{display:flex;justify-content:center}
.jpGrid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;padding:6px 2px}
.jpCell{height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.18);color:inherit;cursor:pointer}
.jpCell:hover{background:rgba(43,108,255,.14);border-color:rgba(43,108,255,.35)}
.jpCell.empty{background:transparent;border:1px solid transparent;cursor:default}
.jpFooter{display:flex;gap:10px;justify-content:flex-start;margin-top:10px}
