.dp{position:relative;display:block;width:100%}
.dp-proxy{width:100%;padding-right:42px;cursor:pointer}
.dp-icon{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:8px;background:none;color:var(--rose-deep);cursor:pointer}
.dp-icon:hover{background:var(--rose-mist)}
.dp-native{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;border:0;padding:0}
.dp-backdrop{position:fixed;inset:0;z-index:90;background:transparent}
.dp-pop{position:absolute;z-index:100;width:300px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 36px -14px rgba(26,26,26,.35)}
.dp-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px}
.dp-nav{width:34px;height:34px;border:0;border-radius:8px;background:none;color:var(--rose-deep);font-size:20px;line-height:1;cursor:pointer}
.dp-nav:hover{background:var(--rose-mist)}
.dp-title{flex:1;padding:6px 8px;border:0;border-radius:8px;background:none;font-family:var(--font-display);font-size:1.05rem;font-weight:500;color:var(--ink);cursor:pointer}
.dp-title:hover{background:var(--rose-mist)}
.dp-week,.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.dp-week span{padding:4px 0;text-align:center;font-size:12px;color:var(--rose-deep)}
.dp-day{height:36px;border:0;border-radius:8px;background:none;font:400 13.5px var(--font-body);color:var(--ink);cursor:pointer}
.dp-day:hover:not(:disabled){background:var(--rose-mist)}
.dp-day.is-out{color:var(--rose-soft)}
.dp-day.is-weekend:not(.is-out){color:var(--rose-deep)}
.dp-day.is-today{box-shadow:inset 0 0 0 1.5px var(--rose)}
.dp-day.is-selected{background:var(--rose);color:#fff;box-shadow:none}
.dp-day:disabled{opacity:.35;cursor:not-allowed}
.dp-months{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px 0}
.dp-month{height:42px;border:0;border-radius:8px;background:none;font:400 13.5px var(--font-body);color:var(--ink);cursor:pointer;text-transform:capitalize}
.dp-month:hover{background:var(--rose-mist)}
.dp-month.is-current{background:var(--rose);color:#fff}
.dp-foot{display:flex;justify-content:space-between;margin-top:8px;padding-top:8px;border-top:1px solid var(--rose-mist)}
.dp-link{padding:6px 10px;border:0;border-radius:8px;background:none;color:var(--rose-deep);font:400 13.5px var(--font-body);cursor:pointer}
.dp-link:hover:not(:disabled){background:var(--rose-mist)}
.dp-link:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:640px){
.dp-backdrop{background:rgba(26,26,26,.35)}
.dp-pop.dp-sheet{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;max-width:none;padding:14px 14px calc(14px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;border-bottom:0}
.dp-day{height:44px;font-size:15px}
.dp-nav{width:44px;height:44px}
.dp-month{height:48px}
.dp-link{padding:12px 14px;font-size:15px}
}
