/* Shared custom date-picker (see ylux-datepicker.js).
   Replaces the native OS calendar popup on every input[type=date]
   across Lau OS and YLAUXI with one cappuccino-accented widget. */
input.ylux-dp-input{
  cursor:pointer;
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
  caret-color:transparent;
}
input.ylux-dp-input::selection{background:transparent}

/* Floats above the page, so it re-pins the light token set — must stay
   legible even when the page itself is in dark mode, where these tokens
   would otherwise flip dark. */
.ylux-dp-pop{
  --bg:#FAFAF8;--bg2:#FFFFFF;--text:#0A0A0A;--text-m:#6E5F52;
  --border:rgba(10,10,10,.08);--cap:#C4B5A8;--cap-d:#A89880;--cap-f:rgba(196,181,168,.1);--cap-fb:rgba(196,181,168,.18);
  position:absolute;
  z-index:9200;
  width:264px;
  background:var(--bg2);
  border:1px solid var(--border);
  border-radius:14px;
  box-shadow:0 12px 32px rgba(10,10,10,.14),0 2px 8px rgba(10,10,10,.06);
  padding:14px;
  font-family:var(--ylux-font-ui),system-ui,sans-serif;
  animation:yluxDpIn .12s ease;
}
@keyframes yluxDpIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

.ylux-dp-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.ylux-dp-title{font-family:var(--ylux-font-display);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text)}
.ylux-dp-nav{
  width:26px;height:26px;flex-shrink:0;border-radius:999px;border:.5px solid var(--border);
  background:var(--bg2);color:var(--text-m);cursor:pointer;font-size:14px;line-height:1;
  display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s;
  font-family:inherit;
}
.ylux-dp-nav:hover{border-color:var(--cap);color:var(--cap-d)}

.ylux-dp-dow{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}
.ylux-dp-dow-c{font-family:var(--ylux-font-display);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-m);text-align:center;padding:4px 0}

.ylux-dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.ylux-dp-cell{
  aspect-ratio:1/1;border:none;background:none;border-radius:999px;
  font-size:12px;font-family:inherit;font-variant-numeric:tabular-nums;
  color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background .12s,color .12s;
}
.ylux-dp-cell:hover{background:var(--cap-f)}
.ylux-dp-cell.is-other{color:var(--text-m);opacity:.45}
.ylux-dp-cell.is-today{color:var(--cap-d);font-weight:600;box-shadow:inset 0 0 0 1px var(--cap)}
.ylux-dp-cell.is-sel{background:var(--cap);color:#fff}
.ylux-dp-cell.is-sel.is-today{box-shadow:none}
.ylux-dp-cell:focus{outline:none;box-shadow:0 0 0 2px var(--cap-fb)}

.ylux-dp-ft{display:flex;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:.5px solid var(--border)}
.ylux-dp-today,.ylux-dp-clear{
  background:none;border:none;cursor:pointer;font-family:var(--ylux-font-display);
  font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--cap-d);padding:2px 4px;
}
.ylux-dp-today:hover,.ylux-dp-clear:hover{color:var(--text)}
