/* ─────────────────────────────────────────────
   KATVA PICKERS — Flatpickr theme + custom select
   ───────────────────────────────────────────── */

/* ── FLATPICKR CALENDAR ── */
.flatpickr-calendar{background:var(--surface);border:.5px solid var(--brd2);border-radius:12px;box-shadow:0 16px 40px rgba(0,0,0,.18);font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;color:var(--txt);padding:12px;width:auto!important;z-index:99999!important;}
.flatpickr-months{display:flex;align-items:center;padding-bottom:8px;border-bottom:.5px solid var(--brd);margin-bottom:8px;}
.flatpickr-month{color:var(--txt);font-weight:700;font-size:13px;flex:1;text-align:center;}
.flatpickr-current-month{font-size:13px;font-weight:700;color:var(--txt);padding:0;}
.flatpickr-current-month .flatpickr-monthDropdown-months{background:transparent;border:none;color:var(--txt);font-size:13px;font-weight:700;cursor:pointer;appearance:none;}
.flatpickr-current-month input.cur-year{color:var(--txt);font-weight:700;font-size:13px;}
.flatpickr-prev-month,.flatpickr-next-month{color:var(--txt)!important;padding:4px 8px!important;}
.flatpickr-prev-month:hover svg,.flatpickr-next-month:hover svg{fill:var(--burg)!important;}
.flatpickr-prev-month svg,.flatpickr-next-month svg{fill:var(--txt);}
.flatpickr-weekdays{background:transparent;margin-bottom:4px;}
span.flatpickr-weekday{color:var(--txt3);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;}
.flatpickr-day{color:var(--txt);border-radius:8px;height:34px;line-height:34px;font-size:13px;font-weight:500;transition:background 150ms ease,color 150ms ease;}
.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover{background:var(--bg2);border-color:transparent;}
.flatpickr-day.selected,.flatpickr-day.selected:hover{background:var(--burg);border-color:var(--burg);color:#fff;font-weight:700;}
.flatpickr-day.today{background:var(--burg)!important;border-color:var(--burg)!important;color:#fff!important;font-weight:700;}
.flatpickr-day.today:hover{background:#4A0F1C!important;border-color:#4A0F1C!important;color:#fff!important;}
.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay{color:var(--txt);opacity:.35;}
.flatpickr-time{border-top:.5px solid var(--brd)!important;background:transparent!important;}
.flatpickr-time input{color:var(--txt)!important;background:transparent!important;font-size:15px!important;font-weight:600!important;font-family:'Plus Jakarta Sans',sans-serif!important;}
.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{color:var(--txt2)!important;}
.flatpickr-time input:hover,.flatpickr-time input:focus{background:var(--bg2)!important;}
.numInputWrapper span.arrowUp,.numInputWrapper span.arrowDown{border-color:var(--brd)!important;}
.numInputWrapper span.arrowUp:after{border-bottom-color:var(--txt2)!important;}
.numInputWrapper span.arrowDown:after{border-top-color:var(--txt2)!important;}

/* ── INPUT with Flatpickr: readable text always ── */
input.flatpickr-input{cursor:pointer;}
input.flatpickr-input[readonly]{cursor:pointer;color:var(--txt)!important;}

/* ── DARK MODE ── */
html.dark .flatpickr-calendar{background:var(--surface);border-color:var(--brd);}
html.dark .flatpickr-day{color:var(--txt);}

/* ── CUSTOM SELECT (ksel) ── */
.ksel-wrap{position:relative;user-select:none;}
.ksel-trigger{display:flex;align-items:center;justify-content:space-between;gap:6px;cursor:pointer;min-height:44px;}
.ksel-trigger .ksel-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ksel-trigger .ksel-arrow{color:var(--txt3);font-size:11px;transition:transform 200ms cubic-bezier(.23,1,.32,1);flex-shrink:0;line-height:1;}
.ksel-trigger.open .ksel-arrow{transform:rotate(180deg);}
.ksel-drop{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:160px;background:var(--surface);border:.5px solid var(--brd2);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.15);z-index:9999;overflow:hidden;animation:fadeUp 150ms cubic-bezier(.23,1,.32,1) both;max-height:220px;overflow-y:auto;}
.ksel-opt{padding:9px 12px;font-size:13px;color:var(--txt);cursor:pointer;transition:background 120ms ease;display:flex;align-items:center;gap:8px;white-space:nowrap;}
.ksel-opt:hover{background:rgba(107,26,42,.07);color:var(--burg);}
.ksel-opt.active{color:var(--burg);font-weight:600;background:rgba(107,26,42,.06);border-radius:6px;}
.ksel-opt.active::before{content:'';width:6px;height:6px;background:var(--burg);border-radius:50%;flex-shrink:0;}
html.dark .ksel-drop{background:var(--surface);border-color:var(--brd);}
html.dark .ksel-opt:hover{background:rgba(196,54,78,.12);color:#FFCDD5;}

/* Prevent overscroll (pull-to-refresh + horizontal swipe nav) */
html,body{overscroll-behavior:none;}
