     :root {
            --bs-primary: #0056b3;
            --bs-warning: #f1c40f;
            --bs-danger: #e74c3c;
            --bs-success: #27ae60;
        }
        body { background-color: #f4f7f6; font-family: "Microsoft JhengHei", sans-serif; }
        .main-header { background: linear-gradient(135deg, #003366 0%, #0056b3 100%); color: white; padding: 20px 0; margin-bottom: 30px; }
        .card { border: none; border-radius: 15px; box-shadow: 0 5px 15px rgba(0,0,0,0.08); min-height: 200px; }
        .card-header { background-color: #fff; border-bottom: 1px solid #eee; font-weight: 800; padding: 15px; border-radius: 15px 15px 0 0 !important; }
        
        /* 拖拽區域樣式 */
        .kanban-drag-zone { min-height: 150px; padding: 10px; }
        .drag-item { position: relative; cursor: grab; transition: transform 0.2s; margin-bottom: 12px; border-radius: 10px; padding: 12px 12px 12px 35px; box-shadow: 0 2px 4px rgba(0,0,0,0.05); background: #ffffff; }
        .drag-item:active { cursor: grabbing; }
        .drag-handle { position: absolute; left: 10px; top: 15px; color: #ccc; cursor: grab; font-size: 1.2rem; }
        
        /* 類別配色 - 統一邊框厚度 */
        .item-blue { border: 1px solid #eef5ff; border-left: 5px solid var(--bs-primary); }
        .item-yellow { border: 1px solid #fffdf0; border-left: 5px solid var(--bs-warning); }
        .item-red { border: 1px solid #fff5f5; border-left: 5px solid var(--bs-danger); }

        /* 日期與時間整合標籤 */
        .date-time-badge { background: #5a6268; color: white; padding: 2px 8px; border-radius: 4px; font-size: 0.75rem; margin-bottom: 8px; display: inline-flex; align-items: center; }
        .date-time-badge i { margin-right: 4px; font-size: 0.7rem; }
        .date-time-badge .time-part { background: rgba(255,255,255,0.2); margin-left: 6px; padding: 0 4px; border-radius: 2px; }

        .item-desc { font-size: 0.85rem; color: #6c757d; margin-top: 4px; }
        
        /* 負責人員樣式 */
        .assignee-box { margin-top: 10px; display: flex; align-items: center; justify-content: flex-end; }
        .assignee-avatar { width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.7rem; color: white; border: 1px solid rgba(0,0,0,0.05); margin-right: 5px; font-weight: bold; }
        .assignee-name { font-size: 0.8rem; color: #495057; font-weight: 600; }

        .sortable-ghost { opacity: 0.4; background-color: #d1d1d1 !important; border: 2px dashed #666; }