.toranj-date-input { cursor: pointer; }
.toranj-date-input + i { pointer-events: none; }
.toranj-date-modal { --tdp-accent: var(--ar-primary, #448c74); --tdp-muted: var(--ar-secondary-color, #858c97); }
.toranj-date-modal .modal-dialog { max-width: 430px; margin-inline: auto; padding: 12px; }
.toranj-date-modal .modal-content { border: 0; border-radius: 24px; overflow: hidden; box-shadow: 0 24px 80px #11182726; }
.toranj-date-modal .modal-header { border: 0; padding: 24px 24px 12px; gap: 16px; }
.toranj-date-modal .modal-header .btn-close { margin: 0; margin-inline-start: auto; }
.toranj-date-modal .modal-body { padding: 8px 24px 20px; }
.toranj-date-preview { text-align: center; padding: 14px; margin-bottom: 20px; border-radius: 14px; color: var(--tdp-accent); background: rgba(68, 140, 116, .08); font-size: 1.2rem; font-weight: 600; min-height: 56px; }
.toranj-date-columns { display: grid; grid-template-columns: 1fr 1.35fr 1fr; gap: 8px; }
.toranj-date-column { min-width: 0; text-align: center; }
.toranj-date-label { color: var(--tdp-muted); font-size: .85rem; margin-bottom: 8px; }
.toranj-date-wheel-frame { position: relative; border-radius: 12px; overflow: hidden; }
.toranj-date-wheel-frame::before { content: ''; position: absolute; top: 88px; inset-inline: 0; height: 44px; border-block: 1px solid rgba(68, 140, 116, .25); background: rgba(68, 140, 116, .06); pointer-events: none; }
.toranj-date-wheel { height: 220px; overflow-y: auto; overflow-x: hidden; padding-block: 88px; scroll-snap-type: y mandatory; overscroll-behavior-y: contain; scrollbar-width: none; touch-action: pan-y; position: relative; -webkit-overflow-scrolling: touch; }
.toranj-date-wheel::-webkit-scrollbar { display: none; }
.toranj-date-wheel:focus-visible { outline: 2px solid var(--tdp-accent); outline-offset: -2px; border-radius: 12px; }
.toranj-date-option { height: 44px; line-height: 44px; scroll-snap-align: center; cursor: pointer; white-space: nowrap; color: var(--tdp-muted); font-size: 1rem; user-select: none; }
.toranj-date-option[aria-selected='true'] { color: var(--tdp-accent); font-weight: 700; font-size: 1.15rem; }
.toranj-date-year-entry { display: flex; align-items: center; justify-content: center; gap: 12px; padding-top: 20px; color: var(--tdp-muted); font-size: .85rem; }
.toranj-date-year-entry input { max-width: 90px; text-align: center; font-size: 16px; }
.toranj-date-modal .modal-footer { border: 0; background: rgba(128, 128, 128, .035); padding: 16px 20px; gap: 8px; flex-wrap: nowrap; }
.toranj-date-modal .modal-footer > * { margin: 0; }
.toranj-date-modal .modal-footer .btn { border-radius: 12px; white-space: nowrap; }
.toranj-date-modal .toranj-date-clear { margin-inline-end: auto; padding-inline: 0; font-size: .85rem; }
.toranj-date-modal .toranj-date-clear[hidden] + .btn { margin-inline-start: auto; }
@media (max-width: 360px) {
    .toranj-date-modal .modal-body { padding-inline: 16px; }
    .toranj-date-modal .modal-footer { padding-inline: 16px; gap: 6px; }
    .toranj-date-modal .modal-footer .btn { padding-inline: 12px; }
}
@media (prefers-reduced-motion: reduce) {
    .toranj-date-modal.fade .modal-dialog { transition: none; }
}
