/* Cove 桌面 2x2 小月历（iOS 风格可拖动小组件） */
/* 桌面网格缩到和恋爱卡片同一条竖线上：
   卡片左边缘 = .page 的 22px 内边距 + 卡片自己的 10px margin = 32px。
   .cove-desk 是绝对定位，left 从视口算起不吃父级 padding，
   再减掉小组件自身的 5px 内边距，就是 27px。这样月历吸附到任意一列，
   左右两条边都和卡片齐。 */
#page-cove .cove-desk{
  left:calc(22px + 10px - 5px);
  right:calc(22px + 10px - 5px);
}
.cove-cal{
  position:absolute;
  width:50%;                 /* 占 2 列 */
  height:28.5714%;           /* 老浏览器回退：2 行 */
  aspect-ratio:1;            /* iOS 小组件是正方形，高度跟着宽度走 */
  height:auto;
  padding:5px;
  box-sizing:border-box;
  container-type:inline-size;
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
  z-index:2;
}
.cove-cal-inner{
  width:100%;
  height:100%;
  box-sizing:border-box;
  padding:11px 12px 10px;
  padding:6.5cqi 7cqi 6cqi;
  display:flex;
  flex-direction:column;
  border-radius:clamp(16px,11cqi,26px);
  background:rgba(255,255,255,.34);
  -webkit-backdrop-filter:blur(30px) saturate(170%);
  backdrop-filter:blur(30px) saturate(170%);
  border:1px solid rgba(255,255,255,.5);
  box-shadow:0 8px 28px rgba(83,60,105,.13),inset 0 1px 0 rgba(255,255,255,.6);
  transition:.16s transform,.16s box-shadow;
  overflow:hidden;
}
.cove-cal.dragging{z-index:11}
.cove-cal.dragging .cove-cal-inner{
  transform:scale(1.06);
  box-shadow:0 22px 40px rgba(83,60,105,.24),inset 0 1px 0 rgba(255,255,255,.6);
}
.cove-cal-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:4px;
  line-height:1;
  margin-bottom:6px;
  margin-bottom:4cqi;
}
.cove-cal-month{
  font-size:clamp(11px,9cqi,20px);
  font-weight:700;
  letter-spacing:.04em;
  color:#e0607f;
}
.cove-cal-year{
  font-size:clamp(8px,6cqi,13px);
  font-weight:600;
  color:rgba(77,65,88,.5);
  letter-spacing:.06em;
}
.cove-cal-week,.cove-cal-days{
  display:grid;
  grid-template-columns:repeat(7,1fr);
}
.cove-cal-week{
  font-size:clamp(7px,5.4cqi,12px);
  font-weight:650;
  color:rgba(77,65,88,.42);
  text-align:center;
  letter-spacing:.02em;
  padding-bottom:4px;
  padding-bottom:2.5cqi;
}
.cove-cal-days{
  flex:1;
  align-content:stretch;
  gap:0;
  font-size:clamp(8px,6.4cqi,14px);
  font-weight:550;
  color:#4d4158;
  text-align:center;
}
.cove-cal-days span{
  display:grid;
  place-items:center;
  min-height:0;
  line-height:1;
}
.cove-cal-days span.dim{color:transparent}
.cove-cal-days span.today{
  font-weight:750;
  color:#fff;
  position:relative;
  z-index:0;
  isolation:isolate;
}
.cove-cal-days span.today::before{
  content:"";
  position:absolute;
  width:clamp(13px,10cqi,22px);
  aspect-ratio:1;
  border-radius:50%;
  background:#e0607f;
  box-shadow:0 2px 6px rgba(224,96,127,.45);
  z-index:-1;
}
@media(prefers-reduced-motion:reduce){
  .cove-cal-inner{transition:none}
}
