/* 看板娘样式库 - 无边界/无白底 + 保留核心交互 + 修复拖动×号发光 */
.kanban-container {
    position: fixed;
    left: calc(100% - 200px);
    top: calc(100% - 220px);
    width: 180px;
    height: auto;
    /* 彻底移除边框 */
    border: none;
    border-radius: 12px;
    /* 彻底无白底 */
    background-color: transparent;
    overflow: visible;
    z-index: 9999;
    transition: box-shadow 0.4s ease;
    cursor: move;
    pointer-events: auto;
}

.kanban-container:hover {
    /* 柔和阴影替代边框感 */
    box-shadow: 0 0 20px 6px rgba(0, 149, 255, 0.15),
                0 4px 12px rgba(0, 0, 0, 0.05);
}

/* 拖动态容器样式强化 */
.kanban-container.dragging {
    box-shadow: 0 0 25px 8px rgba(0, 149, 255, 0.2),
                0 6px 15px rgba(0, 0, 0, 0.08);
}

.kanban-close-btn {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: rgba(255, 68, 68, 0.9);
    color: #fff;
    border: none;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    /* 基础柔和阴影 */
    box-shadow: 0 2px 6px rgba(255, 68, 68, 0.2);
    z-index: 10;
    transition: all 0.2s ease;
}

/* 关闭按钮hover效果 */
.kanban-close-btn:hover {
    transform: scale(1.05);
    background-color: rgba(255, 68, 68, 1);
    box-shadow: 0 3px 8px rgba(255, 68, 68, 0.3),
                0 0 12px rgba(0, 149, 255, 0.4); /* 新增蓝色发光 */
}

/* 【核心修复】拖动时×号强制显示蓝色发光 */
.kanban-container.dragging .kanban-close-btn {
    /* 蓝色背景（可根据需求调整色值） */
    background-color: #0095ff;
    /* 保留发光，仅把阴影颜色改成蓝色系，保持发光强度不变 */
    box-shadow: 0 2px 8px rgba(0, 149, 255, 0.5);
}

.kanban-close-btn.dialog-hidden {
    background-color: rgba(153, 153, 153, 0.8);
    box-shadow: 0 2px 6px rgba(153, 153, 153, 0.2);
}

/* 拖动时隐藏态×号也保留发光 */
.kanban-container.dragging .kanban-close-btn.dialog-hidden {
    box-shadow: 0 2px 6px rgba(153, 153, 153, 0.2),
                0 0 15px rgba(0, 149, 255, 0.4);
}

.kanban-img {
    width: 100%;
    height: auto;
    display: block;
    animation: kanban-floatSoft 4s ease-in-out infinite alternate;
    pointer-events: none;
    border-radius: 8px;
}

@keyframes kanban-floatSoft {
    0% {
        transform: translateY(0) rotate(0deg);
    }
    50% {
        transform: translateY(-4px) rotate(1deg);
    }
    100% {
        transform: translateY(-8px) rotate(-1deg);
    }
}

.kanban-dialog {
    position: absolute;
    bottom: 100%;
    left: 50%;
    padding: 12px 20px;
    font-size: 14px;
    /* 彻底无白底：极低透明度淡蓝 */
    background: rgba(0, 149, 255, 0.08);
    color: #333;
    border-radius: 20px;
    white-space: nowrap;
    margin-bottom: 12px;
    box-shadow: 0 3px 8px rgba(0, 149, 255, 0.1),
                0 1px 3px rgba(0, 0, 0, 0.05);
    transform: translateX(-50%) translateY(10px) perspective(100px) rotateX(5deg);
    text-shadow: none;
    opacity: 0;
    transition: all 0.5s ease;
    pointer-events: none;
    z-index: 1;
    border: 1px solid rgba(0, 149, 255, 0.1);
}

.kanban-dialog::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) perspective(50px) rotateX(-5deg);
    border: 10px solid transparent;
    /* 气泡尾巴匹配对话框背景，无白色 */
    border-top-color: rgba(0, 149, 255, 0.08);
    filter: drop-shadow(0 2px 1px rgba(0, 149, 255, 0.05));
}

.kanban-container:hover .kanban-dialog {
    opacity: 1;
    transform: translateX(-50%) translateY(0) perspective(100px) rotateX(5deg);
}

.kanban-container:hover .kanban-img {
    animation: kanban-floatSoft 3s ease-in-out infinite alternate;
}