@tailwind base;
@tailwind components;
@tailwind utilities;

.grid-scroll::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
.grid-scroll::-webkit-scrollbar-track {
    background: #f1f5f9;
}
.grid-scroll::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
}
.grid-scroll::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* Row Highlight Utility for JS Sync */
.row-hover {
    background-color: #fefce8 !important; /* yellow-50 with priority */
}

/* Grid background pattern */
/* Applied directly to rows now to overlay on stripe colors */
.time-grid-bg {
    background-image: 
        linear-gradient(to right, #e2e8f0 1px, transparent 1px),
        linear-gradient(to right, #f1f5f9 1px, transparent 1px);
    background-size: 100px 100%, 25px 100%; 
    background-position: 0 0; 
}

.job-card {
    transition: transform 0.1s ease, box-shadow 0.1s ease;
    user-select: none;
}
.job-card:active {
    cursor: grabbing;
    z-index: 50;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

@keyframes slideIn {
    from { transform: translateY(-100%); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}
.flash-msg {
    animation: slideIn 0.3s ease-out forwards;
}

/* Hide number input spinners */
.no-spin::-webkit-inner-spin-button, 
.no-spin::-webkit-outer-spin-button { 
  -webkit-appearance: none; 
  margin: 0; 
}
.no-spin {
  -moz-appearance: textfield;
}

.no-scrollbar::-webkit-scrollbar {
    display: none;
}
.no-scrollbar {
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}