/* Refs-style directory picker over a native select. */
.dp-wrap { position:relative; display:flex; flex-direction:column; gap:4px; min-width:0; }
.dp-native {
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0,0,0,0); border:0;
}
.dp-trigger {
    min-height:38px; width:100%; justify-content:flex-start;
    text-align:left; padding:6px 10px;
}
.dp-sheet {
    position:absolute; z-index:40; left:0; right:0; top:calc(100% + 4px);
    padding:8px; border-radius:12px;
    background:var(--tg-theme-secondary-bg-color, var(--ui-bg-elevated, #1c1c1e));
    color:var(--tg-theme-text-color, var(--ui-text, #f2f2f7));
    border:1px solid rgba(127,127,127,.28);
    box-shadow:0 8px 24px rgba(0,0,0,.28);
}
.dp-search { width:100%; min-height:36px; margin-bottom:6px; }
.dp-rows { display:flex; flex-direction:column; gap:4px; max-height:220px; overflow:auto; }
.dp-row {
    min-height:36px; justify-content:flex-start; text-align:left;
    color:inherit; background:transparent;
}
.dp-row.is-current { font-weight:600; }
.dp-empty { margin:6px 4px; font-size:13px; color:var(--ui-muted-strong, #a0a7b4); }

@media (max-width:760px) {
    .dp-sheet { position:fixed; left:8px; right:8px; top:auto; bottom:8px; }
}
