/* =========================
   VS Parent Calendar – Responsive (Desktop + Mobile)
   ========================= */

.vs-parent-calendar{
  max-width: 900px;
  margin: 0 auto;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* HEADER */
.vs-parent-calendar-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:16px;
}

.vs-title-wrap{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.vs-parent-calendar-head h3{
  margin: 0;
  font-size:26px;
  font-weight:900;
  color:#0f172a;
}

.vs-parent-calendar-range{
  font-size:14px;
  font-weight:600;
  color:#64748b;
}

/* NAV */
.vs-nav{
  display:flex;
  gap:10px;
}

.vs-prev,
.vs-next{
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  background:#ffffff;
  border:1px solid #e5e7eb;
  font-weight:900;
  color:#0f172a;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(15,23,42,.08);
  transition: transform .12s ease, box-shadow .12s ease;
}

.vs-prev:hover,
.vs-next:hover{
  transform: translateY(-1px);
  box-shadow:0 14px 28px rgba(15,23,42,.12);
}

/* GRID – DESKTOP */
.vs-calendar-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
}

/* CARD */
.vs-calendar-day{
  background:#ffffff;
  border-radius:18px;
  padding:16px;
  box-shadow:0 14px 34px rgba(37,99,235,.12);
}

.vs-day-header{
  display:flex;
  justify-content:space-between;
  margin-bottom:10px;
}

.vs-day-name{
  font-size:14px;
  font-weight:800;
  color:#475569;
}

.vs-day-num{
  font-size:18px;
  font-weight:900;
  color:#0f172a;
}

.vs-day-body{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.vs-row{
  display:flex;
  justify-content:space-between;
}

.vs-label{
  font-size:13px;
  font-weight:600;
  color:#334155;
}

.vs-value{
  font-size:14px;
  font-weight:900;
  color:#0f172a;
}

/* LOADING */
.vs-parent-calendar.vs-loading{
  opacity: .75;
  pointer-events: none;
}

/* =========================
   📱 MOBILE VERSION
   ========================= */
@media (max-width: 640px){

  /* grid devine o singură coloană */
  .vs-calendar-grid{
    grid-template-columns: 1fr;
  }

  /* ascundem ziua 2 și 3 */
  .vs-calendar-day:nth-child(2),
  .vs-calendar-day:nth-child(3){
    display: none;
  }

  /* titlu puțin mai compact */
  .vs-parent-calendar-head h3{
    font-size:22px;
  }

  .vs-parent-calendar-range{
    font-size:13px;
  }

  /* butoane mai ușor de apăsat */
  .vs-prev,
  .vs-next{
    width:44px;
    height:44px;
    font-size:20px;
  }
}
