/* =====================================================================
   Tarih seçici (components/site/date-field + public/js/site-datepicker.js); sitede ve panelde ortak. Renkler --site-* değişkenlerinden gelir.
   Kutunun tamamı tıklanır; takvim yüzen bir panel olduğu için gölgesi serbest.
   ===================================================================== */
.dp{position:relative;display:flex;flex-direction:column;gap:4px;min-width:0}
.dp-label{font-size:var(--fs-s);font-weight:600;color:var(--site-muted);cursor:pointer}
.dp-btn{display:none;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:11px 14px;border:0;cursor:pointer;text-align:left;font:inherit;color:var(--site-fg);background:var(--ground);box-shadow:var(--nu-i);border-radius:calc(var(--site-r) * .7);transition:box-shadow .25s ease}
.dp-btn svg{flex:none;color:var(--site-primary)}
.dp-btn:hover{box-shadow:var(--nu-i),0 0 0 2px color-mix(in srgb,var(--site-primary) 35%,transparent)}
.dp-btn[aria-expanded=true]{box-shadow:var(--nu-i),0 0 0 2px var(--site-primary)}
.dp-btn:focus-visible{outline:2px solid var(--site-accent);outline-offset:3px}
.dp.dp-on .dp-btn{display:flex}
.dp.dp-on .dp-native{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;overflow:hidden}

.dp-pop{position:absolute;left:0;top:calc(100% + 10px);z-index:60;width:min(340px,92vw);padding:18px;background:var(--site-bg);color:var(--site-fg);border-radius:var(--site-r);box-shadow:0 18px 50px rgb(0 0 0/.5),inset 1px 1px 0 var(--nu-l)}
.dp-pop.above{top:auto;bottom:calc(100% + 10px)}
.dp-pop.right{left:auto;right:0}
.dp-shade{display:none}
.dp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}
.dp-title{font-size:var(--fs-b);font-weight:600;text-align:center;flex:1}
.dp-title::first-letter{text-transform:uppercase}
.dp-nav{width:44px;height:44px;border:0;border-radius:calc(var(--site-r) * .6);cursor:pointer;font-size:1.6rem;line-height:1;color:var(--site-fg);background:var(--site-bg);box-shadow:var(--nu-os);transition:box-shadow .2s ease,opacity .2s ease}
.dp-nav:hover{box-shadow:var(--nu-o)}
.dp-nav:active{box-shadow:var(--nu-i)}
.dp-nav:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}
.dp-week,.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.dp-week span{text-align:center;font-size:var(--fs-s);font-weight:600;color:var(--site-muted);padding-bottom:6px;text-transform:capitalize}
.dp-cell{display:block;aspect-ratio:1;min-height:40px}
.dp-day{width:100%;height:100%;border:0;cursor:pointer;font:inherit;font-size:var(--fs-s);font-weight:600;font-variant-numeric:tabular-nums;color:var(--site-fg);background:transparent;border-radius:calc(var(--site-r) * .6);transition:box-shadow .2s ease,background .2s ease,transform .15s ease}
.dp-day:hover:not(:disabled){background:var(--site-bg);box-shadow:3px 3px 8px var(--nu-d),-3px -3px 8px var(--nu-l)}
.dp-day:active:not(:disabled){box-shadow:inset 2px 2px 6px var(--nu-d),inset -2px -2px 6px var(--nu-l);transform:none}
.dp-day.today{box-shadow:inset 2px 2px 6px var(--nu-d),inset -2px -2px 6px var(--nu-l);color:var(--site-primary)}
.dp-day.range{background:color-mix(in srgb,var(--site-primary) 14%,transparent);border-radius:0}
.dp-day.on{background:var(--site-primary);color:var(--site-on-primary);box-shadow:3px 3px 9px var(--nu-d),-2px -2px 6px var(--nu-l)}
.dp-day:disabled{opacity:.28;cursor:not-allowed}
.dp-day:focus-visible{outline:2px solid var(--site-accent);outline-offset:2px}
.dp-close{display:none;width:100%;margin-top:14px;min-height:48px;border:0;cursor:pointer;font:inherit;font-weight:600;color:var(--site-fg);background:var(--site-bg);box-shadow:var(--nu-os);border-radius:calc(var(--site-r) * .7)}
.dp-close:active{box-shadow:var(--nu-i)}

/* Telefon: takvim alttan açılan panel */
@media (max-width:640px){
    .dp-shade{display:block;position:fixed;inset:0;z-index:79;background:rgb(0 0 0/.55)}
    .dp-pop,.dp-pop.above,.dp-pop.right{position:fixed;left:0;right:0;top:auto;bottom:0;z-index:80;width:100%;max-width:none;border-radius:var(--site-r) var(--site-r) 0 0;padding:20px 18px 24px;max-height:92vh;overflow:auto}
    .dp-close{display:block}
    .dp-cell{min-height:44px}
}
@keyframes dp-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.dp-pop:not([style*="display: none"]){animation:dp-in .2s cubic-bezier(.2,.7,.2,1) both}

.dp-label-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.dp-btn:disabled{opacity:.55;cursor:not-allowed}
.dp-year{font:inherit;font-weight:600;padding:8px 10px;border:0;border-radius:calc(var(--site-r) * .6);cursor:pointer;color:var(--site-fg);background:var(--site-bg);box-shadow:var(--nu-os)}
.dp-nav:disabled{opacity:.3;cursor:not-allowed}
