/* TurtleLuck: Calendar date control layer (cal-layer.css)
   Turns the date box on /calendar/ into one minimalist ‹ date › bar in the shared
   field style. Load after the page CSS. Scoped to .ptool-cal. No markup or JS changes. */
.ptool-cal .bfc{background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;
  max-width:416px!important;margin:0 auto!important;padding:0!important;box-sizing:content-box}
/* keep the "Date" label for screen readers only */
.ptool-cal .bfc .bf-lbl{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ptool-cal .cal-nav{box-sizing:border-box!important;height:44px!important;min-height:44px;padding:0!important;gap:0!important;
  display:flex;align-items:center;background:#fff!important;border:1px solid #d2d2d7!important;border-radius:12px!important;
  box-shadow:none!important;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Roboto,"Segoe UI",Arial,"Liberation Sans","PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Microsoft YaHei",sans-serif}
.ptool-cal .cal-nav:focus-visible{outline:2px solid #1d1d1f;outline-offset:2px}
.ptool-cal .cal-nav .ab{flex:0 0 42px;width:42px!important;height:42px!important;margin:0!important;border-radius:12px!important;
  color:#1d1d1f!important;background:transparent!important}
.ptool-cal .cal-nav .ab:hover{background:#f5f5f7!important}
.ptool-cal .cal-nav .dt{flex:1 1 auto;min-width:0;height:42px!important;padding:0 4px!important;
  font-size:15px!important;font-weight:600!important;line-height:42px!important;color:#1d1d1f!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:inherit}
.ptool-cal .cal-nav .dt .cv{color:#86868b!important}
.ptool-cal .cal-nav .td{font-size:15px!important;color:#1d1d1f!important;padding:0 8px!important;height:42px}
/* dropdown sits flush under the bar, same width */
.ptool-cal .bfc .wheel.dw{width:100%!important;max-width:none!important;box-sizing:border-box;margin:8px 0 0!important;
  background:#fff!important;border:1px solid #d2d2d7!important;border-radius:12px!important}
/* phone: same 42–348px edges as the other forms at 390px */
@media(max-width:600px){.ptool-cal .bfc{margin:0 20px!important;max-width:none!important}}

/* Month grid on phone: compact grid of day cells, --cal-cols per row (4 by default; 3 also works).
   No sideways scroll. CSS only; markup, text and JS unchanged. Desktop untouched. */
@media(max-width:600px){
  .ptool-cal section[aria-labelledby="cal-h"] .card{padding:20px 12px 14px!important}
  .ptool-cal section[aria-labelledby="cal-h"] .card>div:first-child{margin-bottom:10px!important}
  .ptool-cal section[aria-labelledby="cal-h"] .card>div:first-child .btn{width:44px;height:44px;min-width:44px}
  .ptool-cal #cal-h{font-size:22px!important}
  .ptool-cal section[aria-labelledby="cal-h"] .card>div[style*="overflow"]{overflow-x:visible!important}
  .ptool-cal .cal{display:block!important;min-width:0!important;width:100%!important}
  .ptool-cal .cal thead{display:none}
  .ptool-cal .cal tbody{display:grid;grid-template-columns:repeat(var(--cal-cols,4),minmax(0,1fr));grid-auto-rows:minmax(var(--cal-row,110px),1fr);gap:1px;background:#e8e8ed;border:1px solid #e8e8ed;border-radius:12px;overflow:hidden}
  .ptool-cal .cal tr{display:contents}
  .ptool-cal .cal td:not([data-d]){display:none}
  .ptool-cal .cal td[data-d]{display:block;min-width:0;box-sizing:border-box;padding:4px 5px!important;margin:0;border:0!important;height:auto!important;
    background:#fff;font-size:13px;line-height:14px;color:#1d1d1f;text-align:left;overflow-wrap:anywhere}
  .ptool-cal .cal td[data-d]::before{display:block;font-size:12px;line-height:13px;color:#86868b}
  .ptool-cal .cal td:nth-child(1)::before{content:"Mon"}.ptool-cal .cal td:nth-child(2)::before{content:"Tue"}.ptool-cal .cal td:nth-child(3)::before{content:"Wed"}.ptool-cal .cal td:nth-child(4)::before{content:"Thu"}.ptool-cal .cal td:nth-child(5)::before{content:"Fri"}.ptool-cal .cal td:nth-child(6)::before{content:"Sat"}.ptool-cal .cal td:nth-child(7)::before{content:"Sun"}
  .ptool-cal .cal td[data-d] b{display:block;margin:0;font-size:17px;font-weight:600;line-height:19px;color:#1d1d1f}
  .ptool-cal .cal td[data-d] b span{display:inline;margin:0 0 0 4px;font-size:13px;line-height:1;font-weight:400;color:#1d1d1f}
  .ptool-cal .cal td[data-d] .zh{font-size:13px;color:#86868b}
  .ptool-cal .cal td[data-d] b span.zh{color:#1d1d1f}
  .ptool-cal .cal .t{color:#1e8e3e;font-weight:600}
  .ptool-cal .cal .today{box-shadow:inset 0 0 0 2px #1e8e3e;border-radius:12px;padding-left:6px!important}
}

/* hour table: keep luck value on one line (✕/✓ inline) */
.ptool-cal .tbl td[data-l="Luck"]{white-space:nowrap}
