.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

.drag-handle {
    touch-action: none;
    cursor: grab;
    padding: 0.25rem;
    margin-left: -0.25rem;
}

.drag-handle:active { cursor: grabbing; }

.task-card.is-dragging {
    position: relative;
    z-index: 20;
    opacity: 0.85;
    box-shadow: 0 12px 24px rgb(15 23 42 / 0.16);
}

.deadline-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 10px;
    line-height: 1.2;
    padding: 2px 8px;
    border-radius: 4px;
    font-weight: 500;
}

.deadline-today { background: #fee2e2; color: #b91c1c; }
.dark .deadline-today { background: #450a0a; color: #fca5a5; }

.deadline-tomorrow { background: #fef9c3; color: #a16207; }
.dark .deadline-tomorrow { background: #422006; color: #fde047; }

.deadline-later { background: #f1f5f9; color: #475569; }
.dark .deadline-later { background: #1e293b; color: #94a3b8; }

.pull-notice {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    border-radius: 1rem;
    background: #eef2ff;
    color: #4338ca;
    border: 1px solid #e0e7ff;
}

.dark .pull-notice {
    background: rgb(30 27 75 / 0.5);
    color: #a5b4fc;
    border-color: #312e81;
}

#taskForm input,
#taskForm select,
#taskForm textarea,
#bulkDeadline {
    min-width: 0;
    max-width: 100%;
    font-size: 16px;
}

#taskForm input,
#taskForm select,
#taskForm textarea {
    width: 100%;
}

.task-card {
    -webkit-touch-callout: none;
}

.task-card.is-selected {
    box-shadow: 0 0 0 2px #4f46e5;
}

#selectSameDeadline:disabled {
    opacity: 0.45;
}

body.is-selecting #listBacklog,
body.is-selecting #listDone,
body.is-selecting #inProgressBody {
    padding-bottom: 13rem;
}
